Tradicionalmente, na indústria de tecnologia, os desenvolvedores são divididos em quatro graduações com base em seus níveis de qualificação: Júnior, Médio, Sênior e Líder de Equipe. Ou cinco, se você incluir estagiários de codificação como os “soldados” de classificação mais baixa da indústria de desenvolvimento de software. No artigo anterior , já abordamos como é ser um desenvolvedor Junior. Então vamos começar de onde paramos da última vez e passar para a próxima etapa na graduação da carreira de programador, que é Mid-Level Developer.
“Esta função é para pessoas que podem contribuir para um projeto com apenas uma pequena supervisão. Eles podem ser confiáveis para tomar as decisões corretas na implementação com membros mais seniores da equipe fazendo a arquitetura. Espera-se que eles transformem tíquetes em soluções, forneçam estimativas sobre tarefas e auxiliem na decomposição de seções maiores de trabalho. Eles podem estar conversando com clientes, mas não se espera que os liderem”, foi assim que William Hurley, desenvolvedor especialista e arquiteto de software, resumiu o papel de um engenheiro de software de nível médio.

Quem é um desenvolvedor de nível médio?
O desenvolvedor de nível médio é um programador relativamente experiente que já passou pelo menos 2 a 4 anos nesta profissão. Esses anos deveriam ter transformado um novo codificador inexperiente e incerto em um programador forte e totalmente funcional, capaz de escrever seu próprio código e encontrar soluções sem a necessidade de pedir ajuda aos membros da equipe sênior. O desenvolvedor de nível médio normalmente é uma unidade central em praticamente qualquer “exército” de desenvolvimento de software, pois os codificadores de nível médio são os que fazem a parte principal do trabalho de programação em praticamente qualquer projeto. Ao contrário dos desenvolvedores Junior menos experientes, os codificadores de nível médio não precisam de muita ajuda ou supervisão, são capazes de fazer tudo de forma autônoma e, tendo uma compreensão clara do código e das tecnologias utilizadas no projeto, têm mais responsabilidades. Por exemplo, se o foco principal de Junior é escrever código que funcione, puro e simples, o codificador de nível médio também precisa pensar em coisas como garantir que o código seja claramente compreensível e escrito de acordo com os padrões de qualidade e os requisitos do projeto. Normalmente, a maior parte da base de código de praticamente qualquer software é escrita por programadores de nível médio. Claro, como sempre quando se fala em profissões e especializações na indústria de tecnologia, vale ressaltar que os codificadores de nível médio (assim como os desenvolvedores juniores ou seniores) podem ter experiências e responsabilidades bem diferentes dependendo da empresa em que estão trabalhando. “Do ponto de vista externo, 3 a 5 anos de experiência fazem de você um nível médio. Dentro de uma organização, você está no ponto de ser confiável com a codificação, mas pouca ou nenhuma interação com o cliente e propriedade de projetos de pequeno a médio porte. Já vi casos em que os desenvolvedores de nível sênior preferem ficar no nível intermediário porque você está basicamente codificando sem a necessidade de lidar com gerentes de projeto e clientes.”diz Lewis Nakao, um desenvolvedor de software experiente e consultor de carreira de codificação.Quais são as responsabilidades de um desenvolvedor de nível médio?
Agora vamos falar com mais detalhes sobre algumas das responsabilidades mais típicas e comuns de um desenvolvedor de nível médio.- Escrever e manter o código.
- Analisar e implementar as melhores práticas de codificação no código do projeto.
- Analisar os requisitos técnicos do projeto e adaptar o código de acordo com eles.
- Identificar e desenvolver áreas para revisões em projetos atuais.
- Execução e implementação de testes de software.
- Desenvolvimento de procedimentos de garantia de qualidade para projetos de software.
- Analisar as necessidades dos usuários, bem como das necessidades dos designers, testadores de controle de qualidade e de outros membros da equipe de desenvolvimento de software.
- Desenvolvimento de procedimentos de garantia de qualidade.
- Coordenar os esforços e cooperar com outros desenvolvedores, designers, analistas de sistemas e negócios, etc.
- Documentar cada parte do processo de desenvolvimento para trabalho e manutenção adicionais.
Requisitos para um desenvolvedor de nível médio
Aqui está uma lista dos requisitos mais comuns e típicos para um desenvolvedor de nível médio que você deve atender para conseguir este trabalho. Obviamente, os requisitos variam dependendo das políticas de contratação de uma empresa, das tecnologias usadas no projeto e da linguagem de programação do desenvolvedor. Obviamente, vamos nos concentrar nos requisitos típicos para desenvolvedores Java de nível médio.- Pelo menos dois ou três anos como desenvolvedor Java e experiência de trabalho em pelo menos vários projetos de software diferentes.
- Conhecimento total de como projetar, programar, implementar e manter aplicativos Java.
- Saber como programar sistemas de alto volume e baixa latência destinados a grande escala.
- Sólidos conhecimentos dos frameworks para construção de projetos web (Maven, Gradle), frameworks para projetos corporativos (Spring, Hibernate, Spring Boot), ferramentas para testes unitários (JUnit, Mockito), etc.
- A capacidade de contribuir em todas as fases do ciclo de vida do desenvolvimento.
- A capacidade de escrever código de alta qualidade, eficiente e facilmente testável.
- Estar bem familiarizado com a condução de análise de software, teste e depuração de código Java.
- Experiência em gerenciamento de desenvolvimento de aplicativos Java e Java EE.
- Capaz de apresentar abordagens alternativas e implementar tecnologias mais recentes.
- Capacidade de se comunicar de forma clara e concisa com clientes técnicos e não técnicos.
GO TO FULL VERSION