Programador de software júnior — tarefas, uma a uma
A unidade de análise é a tarefa, não o nome do cargo. Cada uma das seguintes traz a sua direção, se o juízo assenta em prova ou numa inferência da plataforma, o raciocínio e o que não estabelece.
Todas as tarefas desta página#
Escrever código de rotina
A automatizar-se✓ Com provaEndpoints CRUD, formulários, integrações padrão, testes de padrões conhecidos.
Bem especificado, muito representado nos dados de treino e verificável de imediato bastando executá-lo. Este é o caso mais forte para a geração de código, e dá-se o caso de ser quase tudo aquilo para que os juniores eram contratados.
Gerá-lo não é o mesmo que responder por ele. Alguém continua a ter de decidir que está certo, e essa pessoa historicamente aprendeu a julgar escrevendo-o primeiro.
Depurar sistemas que não conheces
Aumentada pela máquina≈ Inferência da plataformaDescobrir porque é que algo se partiu quando a causa não está onde está o sintoma.
As ferramentas são genuinamente boas a sugerir hipóteses e a ler stack traces. São bem mais fracas na parte que exige ter na cabeça o modelo de um sistema concreto e saber que observação seria decisiva.
É aqui que o teto do código gerado aparece com mais clareza, e é a competência que separa um júnior de alguém que pode ser deixado a trabalhar sozinho.
Rever código gerado
Tarefa nova✓ Com provaLer código plausível com atenção suficiente para apanhar aquilo que está errado com toda a confiança.
O volume de código produzido subiu a pique; a necessidade de o verificar subiu com ele. Rever código fluente mas errado é uma competência própria e agora central.
Rever bem exige ter escrito aquilo que se está a rever. Se o trabalho de escrita que treinava esse critério é justamente o que está a ser automatizado, esta tarefa tem um problema de abastecimento dentro de poucos anos.
Transformar um pedido vago numa especificação
Continua a ser levada por uma pessoa≈ Inferência da plataformaFazer as perguntas que revelam o que deve mesmo ser construído.
Exige contexto sobre os utilizadores, o negócio e o que já foi tentado. A geração vem a jusante disto e amplifica uma especificação errada mais depressa do que uma pessoa o faria.
Normalmente é uma responsabilidade sénior; listá-la como tarefa júnior descreve para onde o lugar está a ir, não onde está hoje a maior parte dos empregos júnior. O que desapareceu foram os degraus intermédios.
Decidir como as peças encaixam
Continua a ser levada por uma pessoa≈ Inferência da plataformaEscolher uma estrutura e compromissos que ainda se aguentem daqui a dois anos.
As decisões de compromisso dependem de restrições que vivem fora do código — dimensão da equipa, prazos, o que o negócio vai precisar a seguir. É isto que sénior quer dizer, e é o destino a que os juniores chegavam depois de dois anos a escrever código de rotina.
Dizer que os seniores estão seguros não diz nada sobre a entrada. O caminho até sénior passava por dois anos de código de rotina, e nada substituiu esse caminho.