2024-10-31-Plano-de-Estudos-para-Primeiro-Emprego-em-Desenvolvimento-de-Software
Plano de Estudos para Primeiro Emprego em Desenvolvimento de Software (3 Meses)
Contexto: Preparação completa para primeiro emprego, com foco em desenvolvimento web back-end.
Data Limite: 31 de Janeiro de 2025
Módulo 1: Fundamentos de Programação
Data de Conclusão: 15 de Novembro de 2024
- Lógica de Programação:
- Variáveis, tipos de dados, estruturas de controle (if, else, loops)
- Estruturas de repetição (for, while) e funções
- Exercícios de lógica para consolidar fundamentos
- Programação Orientada a Objetos (POO):
- Conceitos de classes e objetos, encapsulamento e herança
- Exercícios práticos com POO em uma linguagem escolhida (ex.: JavaScript ou Python)
Módulo 2: Controle de Versão
Data de Conclusão: 22 de Novembro de 2024
- Git e Comandos Básicos:
init
,add
,commit
,push
,pull
- Conceitos de branch e merge, e como resolver conflitos
- Comandos Avançados e Boas Práticas:
rebase
,stash
,reset
, trabalho comtags
- Fluxo de trabalho colaborativo (Git Flow, Pull Requests e Issues)
- Plataformas de Controle de Versão:
- Familiarizar-se com GitHub, GitLab e Bitbucket, incluindo conceitos de revisão de código e integração com CI/CD
Módulo 3: JavaScript Básico
Data de Conclusão: 01 de Dezembro de 2024
- Sintaxe e Conceitos:
- Funções, arrays, objetos, promessas e manipulação de DOM
- Uso de Promises e async/await para código assíncrono
- ES6 e Recursos Modernos:
- Arrow functions, template literals, destructuring e classes
- Módulos (import/export) e convenções de código moderno
Módulo 4: Node.js
Data de Conclusão: 08 de Dezembro de 2024
- Ambiente de Execução:
- Entendimento do Event Loop e o modelo de I/O assíncrono no back-end
- Conceitos de módulos, require/import e NPM (Node Package Manager)
- API Básica com Node.js:
- Criar uma API básica usando HTTP, manipulação de rotas e tratamento de erros
- Exercícios com pacotes NPM para estender funcionalidades
Módulo 5: Preparação para Entrevistas
Data de Conclusão: 15 de Dezembro de 2024
- Estrutura da Entrevista e Simulações:
- Prática de apresentação do currículo e principais projetos
- Simulação de entrevistas técnicas com foco em algoritmos e estrutura de dados
- Prática com Algoritmos e Problemas Lógicos:
- Resolver problemas clássicos e práticos (FizzBuzz, Palíndromos, etc.)
- Prática com LeetCode e HackerRank
- Apresentação de Código e Comunicação:
- Prática de explicação de código e complexidade
- Discussão de abordagens e escolha de soluções com clareza
Módulo 6: Frameworks e Bibliotecas
Data de Conclusão: 22 de Dezembro de 2024
- Express.js:
- Conceitos de servidores HTTP, roteamento básico, criação de middlewares
- Construção de APIs RESTful com rotas e métodos HTTP
- NestJS ou AdonisJS (opcional):
- Exploração de frameworks mais robustos, estrutura de pastas e injeção de dependências
Módulo 7: Bancos de Dados
Data de Conclusão: 29 de Dezembro de 2024
- SQL (MySQL/PostgreSQL):
- Conceitos de tabelas, índices, chaves e relações
- Construção de consultas complexas e uso de JOINs
- NoSQL (MongoDB):
- Conceitos de banco de dados orientado a documentos e manipulação de collections
- Comparação prática de SQL vs NoSQL
- ORMs e ODMs:
- Utilização de Sequelize para bancos SQL e Mongoose para MongoDB
- CRUD e associações de dados com ORM/ODM
Módulo 8: APIs RESTful e API Gateway
Data de Conclusão: 05 de Janeiro de 2025
- Conceitos de HTTP e Estruturação de Rotas:
- Métodos HTTP (GET, POST, PUT, DELETE) e códigos de status
- Cabeçalhos HTTP, parâmetros de URL, CORS e segurança básica
- Criação de APIs RESTful:
- Estruturação de rotas e endpoints, middlewares de autenticação e validação
- Padrões de design: REST vs RESTful, HATEOAS e organização de rotas
- API Gateway:
- Introdução ao conceito de API Gateway: roteamento, segurança e balanceamento de carga
- Configuração básica com AWS API Gateway, Kong ou Express Gateway
- Implementação de Rate Limiting, Throttling e monitoramento de requisições
Módulo 9: Autenticação e Autorização
Data de Conclusão: 12 de Janeiro de 2025
- JWT (JSON Web Tokens):
- Geração e validação de tokens para autenticação segura
- Implementação de autorização em APIs RESTful
- OAuth 2.0:
- Introdução ao fluxo de autenticação OAuth 2.0 e integração com serviços externos
- Implementação prática em uma aplicação demo
Módulo 10: Testes de Software
Data de Conclusão: 19 de Janeiro de 2025
- Testes Unitários:
- Utilizar Mocha, Chai e Jest para testes unitários
- Estruturar testes e avaliar resultados para cobertura de código
- Testes de Integração:
- Utilizar Supertest para testar APIs RESTful
- Criação de cenários de teste e simulação de requisições para endpoints
Módulo 11: Docker (opcional)
Data de Conclusão: 26 de Janeiro de 2025
- Conceitos de Conteinerização:
- Introdução ao Docker: instalação, Dockerfile e docker-compose
- Criação de ambientes isolados para desenvolvimento e execução de aplicações
Módulo 12: Deployment e CI/CD
Data de Conclusão: 31 de Janeiro de 2025
- Serviços de Hospedagem:
- Deploy em Heroku, AWS e DigitalOcean
- Configuração básica para deploy de aplicações web
- Integração e Entrega Contínua (CI/CD):
- Conceitos de CI/CD e ferramentas populares (GitHub Actions, GitLab CI)
-
Configuração de pipeline para automação de build e deploy em produção
Objetivo: Finalizar o plano até 31 de Janeiro de 2025 e estar apto para processos seletivos e entrevistas técnicas.
Written on October 31, 2024