Este repositório trata do meu ponto atual nos estudos de programação, documentando os conhecimentos que vou adquirindo pelo caminho, até passar de Trainee (ou Juninho, para os que sabem) para um Júnior consolidado e inserido no mercado de trabalho.
Se o nível de conhecimento "Hello World no terminal" até Júnior fosse uma escala de 0 a 10, eu diria que estou no 5 ou 6. Entretanto, a escala de dificuldade que essa segunda metade possui, atualmente, é muito maior do que a primeira.
Abordando os conhecimentos:
-
Fundamentos em lógica e linguagem de programação (Intermediário)
-
Git/Github (Básico/Intermediário)
-
Estrutura de Dados e Algoritmos (Básico)
-
Framework Backend (Básico)
-
SQL (Básico)
-
Conceitos de API REST (Básico)
-
Padrões e Arquitetura (Básico)
-
Docker (Básico)
-
Testes Unitários e de Integração (nada)
-
CI/CD (nada)
-
Microsserviços e Relacionados (nada)
-
Cloud Computing (nada)
Percebeu algo? A maioria dos conhecimentos que eu deveria ter intermediário, estão como básico (DSA, Framework, SQL, API REST) e todos os que eu deveria ter uma noção básica, ainda não sei nada. A barreira de entrada do mercado dev hoje está cruel.
E é por isso mesmo que eu bolei um plano base de 2 anos (iniciando em 2026) realístico e alinhado com meus objetivos, ocupações atuais, possíveis distrações futuras e tópicos de estudo necessários, sendo possível expandir para mais tempo caso necessário. É uma estratégia de ataque orientada a projetos práticos, onde na marra vou aplicar tudo que não sei ainda e melhorar o que já sei, do jeitinho que eu gosto.
Essa seção é para discorrer as alterações no plano devido à amadurecimento, eventuais problemas, etc. Eu fiz esse planejamento ano passado, estamos no início do 4º mês de 2026 e já mudei de ideia sobre algumas coisas.
- Seguir o planejamento da forma como está (apenas 2 anos, assuntos que divergem muito dos da faculdade), com faculdade ao mesmo tempo, é inviável pra mim. Ele precisa na medida do possível se alinhar com as matérias de cada semestre da faculdade para a carga cognitiva ser menor;
- Preciso estender o cronograma para no mínimo 3 anos, em 2 não dá de forma alguma pra aprender tudo isso, e tá tudo bem. Se em 3 anos eu não conseguir ficar em um nível
> Estagiário, aí tem algo errado; - Alguns projetos se tornaram um peso (NerdOS), outros menos prioritários (StarPiece) e outros "maiores" surgiram (Website portifólio freelance + projetos demo, Quartel General do Concurseiro);
- Não há motivo para mudar para C# futuramente. Apesar de Node.js + TS ser extremamente concorrido, também é muito requisitado e provavelmente carece de bons profissionais de verdade (geralmente os devs vão pelo caminho do React + Node porque foi vendido como "o mais fácil", e então o mercado ficou saturado de profissionais medíocres dessa Stack)
- Reformulação do Plano: Irei alinhar os assuntos dos meus estudos aprofundados pessoais com a teoria rasa, porém ampla, dada na universidade.
- Extensão do Cronograma: Não há necessidade de tanta pressa para se tornar Júnior, já que ainda sequer tive experiência como estagiário. 2 -> 3 anos torna a realização do plano mais alcançável.
- Priorização do que é promissor: Esse tipo de mudança é inevitável, já que ideias vão sempre surgindo e outras se revelando não tão interessantes. Porém agora vou tentar "trancafiar" os projetos atuais em mente (em especial o QGC).
- Foco na Stack escolhida: Me tornar no mínimo Pleno em Node.js + TypeScript antes de sequer pensar em migrar. Mas é claro, ainda posso "brincar" com Python ou Go, por exemplo, ao longo desse período.
| Trimestre | Mês | Foco Principal | Projetos e Aplicação Prática | Tópicos de Estudo (Máx 3 por TRIMESTRE) | Já Passou? | O que foi Cumprido |
|---|---|---|---|---|---|---|
| Q1: Fundamentos | Mês 1 | --- | --- | --- | ✅ | --- |
| Mês 2 | Volta ao Projeto | NerdOS | 1. SOLID (S) 2. --- 3. --- |
✅ | Aprendizado SOLID (S) | |
| Mês 3 | SQL Profundo | NerdOS | 1. SQL Básico (CRUD, Agregações) 2. SOLID (S e D) 3. --- |
✅ | Aprendizado SOLID (S) | |
| Q2: Validação NerdOS + Freelance Setup | Mês 4 | Validação NerdOS | NerdOS MVP (CRUD OS + Auth) | 1. Fastify: Rotas, Middleware, Validação 2. PostgreSQL: Relacionamentos, Joins, Migrations 3. Git: Github Flow, Pull Requests, Boas práticas de commit |
❌ | |
| Mês 5 | Deploy Simples | NerdOS em Produção + Landing Page Freelance | (mesmos 3 tópicos) | ❌ | ||
| Mês 6 | Feedback Real | NerdOS com Cliente Piloto + Projetos Demo Freelance | (mesmos 3 tópicos) | ❌ | ||
| Q3: QGC Setup + TypeScript Essencial | Mês 7 | NestJS Fundamentos | QGC: Setup do Backend + Schema Prisma | 1. TypeScript Prático: Tipos, Interfaces, Reutilização 2. NestJS: Módulos, Controllers, Services, Injeção de Dependência 3. PostgreSQL: Índices, Transactions |
❌ | |
| Mês 8 | ETL Python + API enem.dev | QGC: Script de ingestão de questões | (mesmos 3 tópicos) | ❌ | ||
| Mês 9 | Auth + Onboarding | QGC: Google OAuth + Formulário inicial | 1. Autenticação Básica | ❌ | ||
| Q4: QGC Core + Testes Básicos | Mês 10 | Proxy-TRI + Dashboard | QGC: Cálculo de nota ponderada + Gráfico simples | 1. Lógica de Negócio: Cálculos, Regras, Validações 2. Testes de Integração: Supertest, Mocks básicos |
❌ | |
| Mês 11 | Gamificação + UX | QGC: Streaks + Feedback pós-resposta | (mesmos 2 tópicos) | ❌ | ||
| Mês 12 | Deploy + Cache | QGC: Render/Neon + Cache JSON (72h TTL) | Cache em JSON | ❌ | ||
| Q5: Backend Intermediário + Freelance (se houver) | Mês 13 | API Avançada | QGC: Rate Limiting, Error Handling, Logs | 1. Autenticação Avançada: JWT, Refresh Token, OAuth Flows 2. Freelance: Escopo, Comunicação com Cliente, Entrega (apenas se surgir demanda) |
❌ | |
| Mês 14 | Features | QGC | (mesmos 2 tópicos) | ❌ | ||
| Mês 15 | Segurança Web | QGC: OWASP Top 10 básico, SQL Injection prevention | 1. Segurança da Informação Básica | ❌ | ||
| Q6: Node.js Internals + Faculdade (SO/Redes) | Mês 16 | Node.js: Event Loop | QGC + Faculdade (Sistemas Operacionais) | 1. Node.js Internals: Event Loop, Async/Await, Streams 2. HTTP/Redes: Headers, CORS, Status Codes, DNS básico 3. Caching: Redis básico, Estratégias TTL |
❌ | |
| Mês 17 | HTTP + Segurança | QGC + Faculdade (Redes de Computadores) | (mesmos 3 tópicos) | ❌ | ||
| Mês 18 | Monitoramento Básico | QGC: Logs estruturados, Health checks | (mesmos 3 tópicos) | ❌ | ||
| Q7: Preparação para Estágio/Júnior | Mês 19 | Portfólio + LinkedIn | QGC Alpha Finalizado + NerdOS (case) + Freelance (se houver) | 1. Documentação: READMEs técnicos, Diagramas simples 2. Entrevistas: Comportamental + Técnica básica 3. Networking: LinkedIn, GitHub, Comunidades |
❌ | |
| Mês 20 | Revisão Técnica | Resolução de problemas + Simulações | (mesmos 3 tópicos) | ❌ | ||
| Mês 21 | Busca Ativa | Aplicação para vagas de Estágio/Júnior | (mesmos 3 tópicos) | ❌ | ||
| Q8: Primeiro Emprego (Estágio ou Júnior) | Mês 22 | Adaptação Corporativa | Trabalho + Aprendizado no dia a dia | 1. Processos de Time: Code Review, Git Flow corporativo 2. Aprendizado no Trabalho: Ferramentas, Domínio do Negócio 3. Ajuste de Rota: O que falta para consolidar como Júnior? |
❌ | |
| Mês 23 | Consolidação | Trabalho + Estudos pontuais | (mesmos 3 tópicos) | ❌ | ||
| Mês 24 | Planejamento Ano 3 | Revisão: Onde estou? Para onde vou? | (mesmos 3 tópicos) | ❌ | ||
| Q9: Docker + CI/CD (Agora sim, com emprego) | Mês 25 | Docker Básico | QGC: Containerização para facilitar deploy | 1. Docker: Comandos, Dockerfile, Docker Compose básico 2. CI/CD: GitHub Actions (build + deploy simples) 3. Observabilidade: Logs estruturados, Monitoramento básico |
❌ | |
| Mês 26 | CI/CD Pipeline | QGC: Automação de testes + deploy | (mesmos 3 tópicos) | ❌ | ||
| Mês 27 | Deploy Profissional | QGC: Pipeline completo (Dev → Prod) | (mesmos 3 tópicos) | ❌ | ||
| Q10: Cloud Fundamentos (Só o necessário) | Mês 28 | Cloud: Compute + DB | QGC: Migrar para AWS/GCP free tier | 1. Cloud: EC2/Compute Engine, RDS/Cloud SQL 2. Cloud: S3/Storage, CDN básico 3. Cloud: Monitoramento e Alertas simples |
❌ | |
| Mês 29 | Cloud: Serverless (Intro) | QGC: Lambda/Functions para tarefas assíncronas | (mesmos 3 tópicos) | ❌ | ||
| Mês 30 | Escala Básica | QGC: Load Balancer, Connection Pooling | (mesmos 3 tópicos) | ❌ | ||
| Q11: Arquitetura Modular (Intro a Microsserviços) | Mês 31 | Monolito Modular | QGC: Separar módulos (Auth, Questões, Dashboard) | 1. Arquitetura: Monolito Modular vs Microsserviços (conceitos) 2. Comunicação: HTTP interno, Eventos básicos 3. Design: Diagramas de arquitetura, Trade-offs simples |
❌ | |
| Mês 32 | Filas e Background Jobs | QGC: BullMQ para tarefas assíncronas (ETL, notificações) | (mesmos 3 tópicos) | ❌ | ||
| Mês 33 | Documentação Técnica | QGC: Escrever arquitetura para outros devs | (mesmos 3 tópicos) | ❌ | ||
| Q12: Consolidação como Júnior | Mês 34 | Revisão Geral | Portfólio final + Case studies | 1. Arquitetura: Padrões úteis (Repository, Strategy) - só o essencial 2. Especialização: Definir foco (Backend Node/TS) para próximo ano 3. Carreira: Negociação salarial, Plano para consolidar como Júnior |
❌ | |
| Mês 35 | Aprendizado Contínuo | Escolher 1 tópico para aprofundar em 2029 | (mesmos 3 tópicos) | ❌ | ||
| Mês 36 | Transição | De "Júnior em formação" para "Júnior consolidado" | (mesmos 3 tópicos) | ❌ |
Esse plano é apenas uma base de referência que pode se estender por mais tempo. Mesmo assim, deixo a mensagem para o Ivan do futuro: por favor, faça.
Aqui será o índice para todos os arquivos localizados em assuntos. Você também pode ver a minha experiência que adquiri nos meus projetos. Conforme eu for aprendendo, esses diretórios irão sendo populados.
Em Janeiro ainda estava "atordoado" pela sensação de férias de final/começo de ano. Portanto, tirei para descansar e não produzi.
Fevereiro chegou e (bem) lentamente fui voltando ao ritmo. Não consegui exercitar meu SQL, mas terei muita oportunidade de fazer isso durante a faculdade, que adentrei esse ano. Apesar disso, fui reacostumando ao meu projeto atual, o NerdOS, e consegui pôr em prática um pouco de Docker (comandos, YAML do Docker Compose) e ir desenvolvendo mais minhas noções de Segregação de Responsabilidades.
Nesse meio tempo também resgatei os benefícios de estudante do Github (dentre eles Copilot Pro, Créditos na Azure e DigitalOcean, nomes de subdomínio, etc), que vão auxiliar muito no meu aprendizado.
Agora, com o início do 3º mês, os focos serão:
- Adaptação ao ambiente universitário
- Foco no desenvolvimento (e aprendizagem prática proveniente) do NerdOS
- Estudar, a partir do livro "Entendendo Algoritmos", Estrutura de Dados e Algoritmos
- (não prioritário) Reforçar meu SQL com agregações, ordenações e (se possível) Joins
Maio foi... Ocioso. Não fiz muita coisa, porém apesar disso, fui acostumando à rotina universitária.
Era de se esperar que eu não conseguisse fazer muita coisa, porém foi um mês "refrescante". Tive novas ideias, refleti sobre decisões e recalculei a rota (falo melhor disso na seção "Decisões Estratégicas"). Agora o plano está ainda mais realista e adequado à faculdade
Em abril a ideia é ser humilde e engrenar devagar:
- Ir bem nas provas desse mês
- Retomar o NerdOS MAIS uma vez, com uma visão mais clara e sem lenga-lenga: ou vai pra frente, ou morre de vez
- (paralelamente) Trabalhar aos poucos no portfólio freelance