Senioridades
Uma empresa de tecnologia é baseada em pessoas talentosas, só assim a inovação, a produtividade e a real relevância de mercado podem acontecer.
Então, o que esperamos dos talentos que temos? Mais especificamente, o que esperamos de nossos engenheiros de software?
O Grupo DB1 possui um processo de gestão de pessoas complexo e aprofundado, mas para termos uma forma simplificada de expressar as características dos níveis de senioridade para engenheiros de software, vamos nos debruçar sobre os principais pontos:
- Engenheiro de nível trainee (o que esperar)
- Você é uma pessoa sem experiência (se já tiver, melhor ainda)
- Você está na organização para aprender
- Você tem sede de conhecimento (vontade de fazer acontecer, entusiasmo, curiosidade)
- Você aceita o conhecimento como moeda de troca pelo seu tempo
- Você está disposto a ser full stack e flexível em relação ao aprendizado
- Engenheiro de nível junior (o que esperar)
- Você pode entregar tarefas cumprindo as 4 operações CRUD básicas (Create, Read, Update, Delete) em alguma linguagem de programação ou framework, seja back ou front-end
- Você pode solucionar problemas do seu próprio código e código escrito por outros
- Você tem sede de conhecimento (vontade de fazer acontecer, entusiasmo, curiosidade)
- Você está disposto a ser um full stack, mas já escolheu sua área de especialização para se aprofundar (back ou front) e sua linguagem de programação materna para conhecer em detalhes
- Você pode executar consistentemente tarefas simples sem ajuda e tarefas complexas com o apoio de alguém mais experiente
- Você deve ter entre 1 e 3 anos de experiência profissional. Espera-se que você não demore mais de 3 anos para chegar ao próximo nível.
- Engenheiro de nível pleno (o que esperar)
- Você pode realizar consistentemente a maioria das atividades de um projeto de software de forma autônoma, mas ainda contar com um senior/lead para criar ou implementar soluções técnicas complexas
- Você deve ser capaz de apresentar o resultado de suas entregas
- Você entende os fundamentos e a teoria por trás das soluções técnicas que usa
- Você entende o negócio do cliente e como seu software o impulsiona
- Você deve ser capaz de disseminar o conhecimento
- Você entende de ponta a ponta todos os aspectos da solução e como eles se relacionam (back, front, infra, etc)
- Você deve ter entre 3 e 5 anos de experiência profissional. Espera-se que você não demore mais de 5 anos para chegar ao próximo nível.
- Engenheiro de nível senior (o que esperar)
- Você deve ter profundo conhecimento técnico teórico
- Você deve ter um portfólio de projetos que construiu com alta complexidade, com o seu protagonismo
- Você deve ser capaz de resolver problemas complexos e projetar soluções técnicas
- Você deve conhecer design e arquitetura de software
- Você deve ter um softskill maduro (inteligência emocional, gerenciamento de tempo e comunicação)
- Você pode entender facilmente o negócio do cliente e como as decisões técnicas impactam o negócio. Acima de tudo, você consegue transcrever a linguagem técnica para a linguagem comercial do cliente e vice-versa
- Você não deve estar preso à tecnologia materna e entendê-la como uma ferramenta e pode - se necessário - mudar para outras tecnologias
- Você deve ser capaz de transferir e construir conhecimento na equipe
- Você deve colaborar e orientar os membros da equipe
- O senior deve saber quando uma dívida técnica deve ser contraída e também planejar como pagá-la no futuro
- Você deve ter pelo menos 5 anos de experiência profissional. A passagem para o nível de liderança não é apenas uma questão de experiência, mas também de responsabilidades. Entendemos que o momento para isso é muito particular e algumas pessoas podem não querer.
- Engenheiro de nível líder (o que esperar)
- Antes de ser um líder, você é um engenheiro senior, lembre-se disso
- Você é responsável por tudo o que é entregue na camada de engenharia de uma equipe
- Você é responsável por definir as soluções técnicas que devem ser seguidas pela equipe, portanto, precisa ser competente nos assuntos envolvidos
- Você deve estabelecer e implementar regras e processos técnicos que devem ser seguidos por todos os engenheiros de sua equipe
- Você é responsável por se posicionar sobre estimativas, datas e compromissos firmados com o cliente (aceitá-los ou rejeitá-los, evidenciando o motivo)
- Você é um líder, ou seja, você lidera os outros. Engajar, incluir, orientar e cultivar talentos são de sua responsabilidade. Isso não é a mesma coisa que ser um gestor de outro, vale ressaltar
- Você deve ter uma visão holística. Você deve sempre ver o quadro geral, de sua equipe e do contexto do projeto
- Você deve ter uma vasta horizontalidade de conhecimento que lhe permita transitar entre os principais assuntos da engenharia de software
- Saber transcrever para o cliente porque uma decisão técnica é importante e como ela impacta o seu negócio. Exemplo: por que o teste de unidade é importante para o negócio?
- Pelo menos 5 anos de experiência profissional, pelo menos 2 como sénior
Sabemos que há exceções às regras, mas é isso mesmo que devem ser: exceções.
Espero que esta orientação possa ajudá-lo na aquisição de talentos e se adequar melhor às expectativas de antiguidade no DB1.