Sobre senioridade e o que vem depois de senior

Então você completou dois anos de carreira tech e de repente ganhou sua carteirinha de senior. E agora? O que vem depois?

Introdução

Então você completou dois anos de carreira tech e de repente ganhou sua carteirinha de senior (calma! brincadeira 😂). E agora? O que vem depois?

A ideia desse post é falar um pouco da minha experiência e explorar algumas possibilidades de carreira em tech e desenvolvimento profissional após o nível senior.

(Antes de tudo deixando absolutamente claro que essas são minhas opiniões e experiências pessoais sobre esse tema que pode ser bem subjetivo e variar muito de pessoa para pessoa)

Começando pelo começo, o que é ser senior?

Antes de tudo, quero separar senioridade de carreira de senioridade contextual

Senioridade Contextual

Isso porque senioridade contextual pode variar muito de empresa para empresa. Em empresas menores ou startups, por exemplo, é comum que o nível senior seja atingido mais cedo, enquanto em empresas maiores pode ser que o nível senior seja atingido mais tarde.

Pode acontecer por exemplo de um dev com pouco tempo de carreira que trabalha numa pequena startup ocupar uma cadeira de senior mas que ao mudar para uma empresa maior, seja considerado junior.

E sabe qual o problema disso? Nenhum! 😄

O ponto é que na verdade nem faz muito sentido se limitar como “Júnior”, “Pleno” ou “Senior”. Nunca coloquei no LinkedIn algo como “Desenvolvedor Pleno” ou “Desenvolvedor Senior”.

Na prática quem decidir sua senioridade não é você mas o mercado.

Se aplique nas vagas que te interessarem, é a empresa quem decide se o seu perfil faz sentido pra ela, através de entrevistas e testes técnicos. Importante não é nome de cargo e sim que a pretensão salarial esteja alinhada entre o candidato e a empresa.

Se minhas expectativas salariais forem alcançadas, podem me chamar até de estagiário! 😜

Senioridade de Carreira

Agora, senioridade de carreira é algo que você constrói ao longo do tempo, independente de onde você trabalha. É sobre a sua experiência, habilidades e conhecimento.

Existem muitas e muitas capacidades e habilidades técnicas e não técnicas que devem ser desenvolvidas ao longo da carreira, e quanto mais altas são essas barras de habilidades, mais senior você é e mais apto vai estar a ocupar essa cadeira em diferentes empresas e contextos.

E como muitas dessas habilidades não são técnicas e sim soft skills, é possível que alguém com menos tempo de carreira tech mas que por exemplo migrou de outras áreas, onde desenvolveu habilidades de liderança, comunicação, resolução de problemas, etc, atinja um nível de maior senioridade mais rápido.

Senior de dois anos

Descontando toda a zoeira em torno de “senior de dois anos”, vamos analisar os dois tipos de senioridade que falei acima.

Se estivermos falando de senioridade contextual, é sim possível que alguém com dois anos de carreira tech seja considerado senior em algumas empresas.

Mas se estamos falando de senioridade de carreira, é bem difícil que alguém com dois anos de carreira tenha desenvolvido todas as habilidades necessárias pra estar apto a ocupar uma cadeira de senior em qualquer empresa. Simplesmente porque não deu tempo de aprender tudo que precisa ser aprendido.

(e algumas pessoas não conseguem nem com 10 anos)

E o que vem depois de senior?

Agora que já dei minha visão sobre o que é ser senior, vamos falar sobre o que vem depois.

Existem várias possibilidades de carreira em tech, você pode seguir uma carreira técnica, de gestão ou até mesmo mudar de área, usando toda a experiência que adquiriu para trabalhar em funções mais estratégicas como Product Manager, por exemplo.

Vale citar ainda que os nomes e quantidade de funções e níveis de cargo podem variar bastante de empresa para empresa, e até mesmo de país para país. Numa empresa menor por exemplo, pode ser que nem exista um cargo de Staff Engineer ou Tech Lead, enquanto numa empresa maior pode existir vários níveis intermediários entre Staff Engineer e CTO.

Mas vou explorar especificamente as possibilidades de carreiras mais ligadas em desenvolvimento de software, que é o onde eu já atuei e conheço melhor.

Nos últimos anos atuei como: Tech Lead, Coordenador de Engenharia, e atualmente como Staff Engineer.

Tech Lead

Tech Lead é um cargo técnico, mas que exige grandes habilidades de liderança e comunicação, além de habilidades técnicas avançadas tanto em desenvolvimento de software quanto em arquitetura de sistemas.

Tech Leads são responsáveis por liderar times de desenvolvimento, garantindo que o time esteja alinhado com a estratégia técnica da empresa, e que os projetos estejam sendo entregues com qualidade e dentro do prazo, pra isso é necessário ter uma visão macro do projeto e do negócio.

Algumas das responsabilidades no dia a dia são:

  • Direciona o time para entregas eficientes e com qualidade
  • Define padrões e melhores práticas de desenvolvimento
  • Faz mentorias técnicas para membros do time
  • Remove obstáculos em problemas técnicos
  • Orienta e direciona a equipe técnica
  • Avalia desempenho técnico

Interessante notar que o Tech Lead é um cargo técnico porém combina com algumas atribuições de gestão. Porém Tech Lead não é responsável por contratações, demissões, promoções, ou qualquer outra responsabilidade de gestão de pessoas.

Outro ponto é que algumas atribuições podem mudar bastante de empresa para empresa, então é importante entender bem o que é esperado de um Tech Lead na empresa que você está interessado.

Em algumas empresas por exemplo, não é esperado que o Tech Lead escreva código, enquanto em outras é esperado que o Tech Lead seja o desenvolvedor mais sênior do time e e coloque a mão na massa quando necessário.

Pensando em próximos níveis a partir daqui, temos Senior Tech Lead e CTO.

Staff Engineer

Do Staff Engineer se espera a resolução de problemas complexos e inovadores, contribuindo significativamente para a arquitetura e o design de sistemas.

Esses problemas podem ser técnicos, organizacionais ou de negócio, e o Staff Engineer deve ser capaz de identificar e resolver esses problemas de forma eficaz. Além disso, o Staff Engineer deve ser capaz de influenciar e orientar outros engenheiros, ajudando a elevar o nível técnico da equipe.

Pra isso é necessário uma expertise técnica excepcional, e grande capacidade de resolver problemas abstratos e criar soluções a partir disso. Soft skills tipo pensamento crítico e analítico apurado, proatividade e independência são essenciais.

Algumas das responsabilidades no dia a dia são:

  • Direciona e implementa decisões de arquitetura e design patterns
  • Acompanha tendências implementando melhorias no produto final
  • Pensa (e desenvolve!) soluções pra problemas complexos
  • Serve de referência técnica para outros engenheiros
  • Evangeliza boas práticas de desenvolvimento

Devem ter notado que diferentemente do Tech Lead, se espera que Staff Engineers não só direcionem a equipe técnica, mas também que sejam capazes de resolver problemas complexos e criar soluções atuando de maneira direta. Ou seja, é esperado que coloque a mão na massa sempre que possível.

Pensando em próximos níveis a partir daqui, temos Principal Engineer, Distinguished Engineer, e CTO.

Engineering Manager

Engineering Manager é um cargo de gestão, e é responsável por liderar e gerenciar times de engenharia. Isso inclui contratação, demissão, promoção, feedback, e todas as outras responsabilidades de gestão de pessoas.

Além disso, o Engineering Manager é responsável por fazer alinhamentos entre a equipe técnica e as outras áreas da empresa, garantindo que as expectativas de todos os envolvidos estejam alinhadas.

  • Cria PDIs (Plano de Desenvolvimento Individual) para liderados
  • Garante que novas features sejam entregues no prazo
  • Gere de conflitos e cria resolução de problemas
  • Cria processos e políticas para a empresa
  • Lidera ritos scrum e reuniões de equipe
  • Define metas e objetivos para o time
  • Faz avaliação de desempenho

Vale observar que o Engineering Manager é um cargo de gestão, não técnico, embora seja importante possuir bons conhecimentos técnicos. Isso significa não vai ser responsável por decisões técnicas, e sim por garantir que a equipe técnica tenha tudo que precisa para tomar essas decisões.

Mesmo possuindo boa capacidade de comunicação. nem todo mundo que é bom tecnicamente é bom em gestão, e vice-versa.

Pensando em próximos níveis a partir daqui, temos Engineering Director, VP of Engineering, e CTO.

Sobre minhas experiências

Extra oficialmente desempenhei o papel de Tech Lead em alguns projetos e empresas que trabalhei, embora estivesse configurado num cargo de desenvolvedor sênior. Isso é super comum, e muitas vezes acontece devido a necessidade do projeto ou da empresa, e não necessariamente por uma promoção formal.

Em 2020 assumi uma posição oficial de Tech Lead, que foi mudando de necessidades e responsabilidades ao longo do tempo, isso porque a empresa foi crescendo e mudando, e as necessidades do time também.

Em 2022 tentei atuar como coordenador de engenharia por um ano, mas percebi que não era o que eu queria pra minha carreira. Eu gosto de resolver problemas técnicos e criar soluções, e não de gerenciar pessoas.

Então em 2023 decidi voltar a atuar já numa posição de Staff Engineer. Devem ter notado que algumas atribuições de Tech Lead e Staff Engineer são bem parecidas, e muitas vezes podem ser situacionais. Ou seja, quando necessário atuo como Tech Lead.

Tudo isso dentro da mesma empresa.

Como disse no começo: muitas vezes nossa senioridade é situacional.

Conclusão

Espero que esse post tenha ajudado a entender um pouco mais sobre o que é ser senior, e trazer algumas possibilidades nas fases seguintes da carreira.

É nóis! 🚀