Overview e Regras
Visão Geral das Sprints
O bootcamp está estruturado em 4 sprints, cada uma focada em um módulo específico do sistema e em diferentes tecnologias e conceitos. Esta abordagem permite um aprendizado progressivo e a construção incremental do sistema de feedback.
Conhecimentos Trabalhados por Sprint
Além dos objetivos de negócio, cada sprint focará em conhecimentos técnicos específicos:
Regras e Diretrizes
Regras Gerais
-
Participação nas Cerimônias: Todos os membros da equipe devem participar das cerimônias do Scrum (Daily, Planning, Review, Retrospective).
-
Comunicação: Mantenha a comunicação transparente e frequente. Se encontrar dificuldades, comunique-as o quanto antes.
-
Qualidade do Código: Todo código deve seguir os padrões de qualidade estabelecidos (Clean Code e SOLID).
-
Revisão de Código: Todo código deve passar por revisão de pelo menos um outro membro da equipe e o tutor tech lead antes de ser integrado.
-
Não quebre as histórias: As histórias á estão quebradas de forma bem granular, quebrar mais vai gerar um granularidade improdutiva, a quebra de tasks também já está feita na aqui nesse manual nas sessões de Épicos Detalhados de cada srpint, mexa na quebra apenas se achar que pode beneficiar na questão de reduzir conflitos de merge nos pull requests
Nota
É bastante importante não quebrar as histórias mais do que já estão quebradas, crie novas histórias apenas em casos de bugs ou ajustes técnicos importantes
Uso de IA
-
Abordagem AI First: Utilize ferramentas de IA como o Flow para aumentar sua produtividade, mas mantenha o pensamento crítico.
-
Revisão do Código Gerado: Todo código gerado por IA deve ser revisado criticamente antes de ser integrado.
-
Balanceamento: Encontre um equilíbrio entre o uso de IA e o desenvolvimento de suas próprias habilidades técnicas.
Avaliação
Durante o bootcamp, você será avaliado com base nos seguintes critérios:
-
Qualidade Técnica: Capacidade de aplicar os conceitos e tecnologias apresentados.
-
Colaboração: Participação ativa nas cerimônias e contribuição para o sucesso da equipe.
-
Adaptabilidade: Capacidade de aprender novas tecnologias e adaptar-se a diferentes contextos.
-
Resolução de Problemas: Habilidade para identificar e resolver problemas de forma eficaz.
-
Comunicação: Clareza na comunicação de ideias, problemas e soluções.
-
Entrega de Valor: Capacidade de entregar funcionalidades que atendam aos requisitos de negócio.
Detalhes da avaliação técnica
Aqui está a lista do que será avaliado ao longo do bootcamp, não é necessário estudar todas essas técnicas de uma vez, terá a oportunidade de lidar com todas elas aos poucos durante o bootcamp, essa lista está aqui oara terem ciencia de que estaremos avaliando esses tópicos para que possamos entender em que contextos da CI&T irão se encaixar ao final do bootcamp, essa é sua oportunidade de mostrar quais skills prefere dominar para se especializar dentro da CI&T, muito embora o perfil de Full Stack seja muito bom, o perfil de especialista em alguma coisa como Frontend, Backend ou Dados são sempre bem vindos.
Segue um resumo do que queremos ver com relação a competências técnicas:
- Versionamento: como o uso do branch model, a criação de commits e a resolução de conflitos. A capacidade de entender e aplicar conceitos de merge também é essencial.
- Programação em JAVA: Queremos que você aplique os conceitos do Spring, JPA, Generics e Junit.
- Desenvolvimento em REACT: A observação focalizará o uso eficiente de React Hooks, a componentização granular e as integrações com Next.js, para garantir que você construa interfaces modernas e responsivas.
- Python: Avaliaremos sua aptidão em aplicar conceitos de programação orientada a objetos com Python, especialmente na implementação de repositórios e controllers, além de sua habilidade de trabalhar com entidades.
- DDD (Domain Driven Design): Sua capacidade de entender e aplicar os princípios do DDD, como a definição de subdomínios, entidades, repositórios e serviços.
- TDD (Test Driven Development): A aplicação de testes de funcionalidade, integração e desacoplados da solução, para garantir a qualidade do código e a robustez das entregas.
- NodeJS: Queremos ver como você usa Promises, Express e Middlewares.
- SOLID e Padrões de Codificação: A capacidade de aplicar ao menos estes 3 princípios de SOLID: S, L e D.
- Entendimento de Requisitos: Esperamos que você demonstre compreensão dos requisitos do projeto e saiba como quebrá-los em tarefas gerenciáveis, além de entender suas interações.
Tão importante quanto as competências técnicas são as competências comportamentais
Durate o bootcamp as principais que vamos competencias compórtamentais (Soft Skills) que vamos avaliar são:
- Gestão de Atividades: A participação ativa nas reuniões, a atualização do status das tarefas e a colaboração com a equipe são essenciais para o bom andamento do projeto.
- Capacidade de Aprendizado: A busca por novos conhecimentos e a disposição para aplicar novas habilidades no dia a dia são altamente valorizadas.
- Proatividade: Queremos ver como você lida com feedback e mudanças, mantendo uma atitude colaborativa e alerta às oportunidades de melhoria.
- Comunicação: A expressão clara de ideias, a busca por ajuda quando necessário e a comunicação dos impactos das suas atividades são fundamentais para a integração da equipe.
- Execução: Buscamos qualidade nas suas atividades, com entendimento do fluxo de trabalho da equipe, entrega no prazo e identificação de áreas onde você pode melhorar sua eficácia.
- Trabalho em Equipe: Queremos observar como você reconhece a função de cada membro da equipe, sua adaptação às dinâmicas de grupo, participação ativa em discussões, e desenvolvimento de relacionamentos positivos, respeitando as contribuições de cada um.
Nota
Já dissemos que o bootcamp nao é uma competição, mas vocês estarão sendo avaliados, tanto com relação a qualidade técnica e de de código como com relação a comportamentos. Isso é importante para alocarmos você nos times após o bootcamp.
Nota
Lembre que não estamos esperando que logo de inicio você já tenha estes conhecimentos, mas isto é um mapa do que você pode desenvolver ao longo do estágio do Bootcamp!
Estrutura de Cada Sprint
Cada sprint terá a duração de 2 semanas, com a seguinte estrutura:
Dia 1: Início da Sprint
- Sprint Planning: Planejando a entrega da sprint utilizando o roteiro das plannings
- Início do Desenvolvimento: Rodada de Story Openings entre os membros do time
Dias 2-9: Desenvolvimento
- Daily Scrum: Sincronização diária da equipe
- Desenvolvimento: Implementação das funcionalidades
- Revisão de Código: Revisão contínua do código produzido
Dia 10: Encerramento da Sprint
- Finalização do Desenvolvimento: Conclusão das tarefas pendentes
- Sprint Retrospective: Reflexão sobre o processo e identificação de melhorias
- Cafézinho: Relaxar, tomar um cafézinho e fazer um networking
Nota
O projeto foi planejado para rodar em 4 sprints, cada uma focada em um módulo específico e com um objetivo de negócio bem definido. Mas é importante lembrar: sprint e feature são coisas diferentes. Não precisa se preocupar se elas não estiverem sempre alinhadas. Aqui, o principal é aprender com o processo. Essa simulação é uma oportunidade para crescer, então, mais do que só entregar o produto no prazo, queremos que cada sprint ajude vocês a entenderem melhor como tudo funciona.
Próximos Passos
Agora que você compreende a estrutura e as regras do bootcamp, está pronto para mergulhar na primeira sprint. A Sprint 1 focará na gestão de usuários e autenticação, estabelecendo a base para o restante do sistema.
Lembre-se de que o bootcamp é uma jornada de aprendizado. Não se preocupe em dominar todas as tecnologias e conceitos desde o início. O importante é manter uma mentalidade de crescimento e aprender com cada desafio.
Boa sorte e bom desenvolvimento!