O que é ser um desenvolvedor sênior?

O que é ser um desenvolvedor sênior?
Foto por Timothy Dykes no Unsplash

Quando comecei a trabalhar com desenvolvimento sempre me perguntava o que diferenciava um desenvolvedor júnior de um sênior - ou, o que um desenvolvedor júnior precisava fazer/aprender para conseguir chegar ao título de sênior.

Até aqui, ao longo da minha carreira como desenvolvedor tive a oportunidade de trabalhar em grandes empresas e conhecer pessoas acima da média, tanto em seu conhecimento técnico quanto em suas personalidades e comportamentos. Através do convívio com essas pessoas percebi que a única fórmula mágica que pode te fazer “crescer”, se é que podemos chamá-la assim, é a soma do seu próprio aprendizado e do seu comportamento em determinadas situações.

Deixei a palavra crescer entre áspas pois muitas pessoas associam o ato de receber uma promoção com crescimento - passar de júnior para pleno, por exemplo. Mas essa ideia é errada em sua natureza pois temos a possibilidade de crescer todos os dias; quando você aprende algo novo, ou uma maneira nova de fazer a mesma tarefa você está crescendo também. Apesar de não parecer, o crescimento diário é muito mais importante do que o fato de subir de nível ou categoria no seu trabalho - não me entenda mal, as duas coisas são importantes, mas a primeira é mais importante que a segunda.

Quando eu recebi minha primeira promoção, que foi quando passei de estagiário para desenvolvedor júnior, eu senti uma grande alegria dentro de mim - pois notei que outras pessoas também estavam acompanhando o meu trabalho, e que todo o esforço que eu colocava nas minhas tarefas diárias estava valendo a pena. Mas, não senti diferença no trabalho que eu fazia - claro, eu tinha mais conhecimento e sabia como resolver conflitos de interesse em dadas situações, mas, não senti que estava fazendo algo mais difícil ou “mais impossível”.

O primeiro requisito, que é bastante óbvio, para que uma promoção seja considerada e aplicada é o seu conhecimento técnico. É muito perceptível que um desenvolvedor sênior possui mais conhecimento do que um desenvolvedor júnior, e esse conhecimento pode ser adquirido de diversas maneiras. Essas maneiras podem ser desde uma leitura até o ato de ensinar outra pessoa - e, independente da maneira que o conhecimento é adquirido, todas elas estão sujeitas ao tempo, e isso nós não temos como apressar.

Nós aprendemos as coisas dentro do nosso próprio tempo. Dentre essas e outras razões, nós devemos evitar a comparação entre pessoas - não devemos nos comparar com os outros, pois cada um tem seu próprio tempo. Uma pessoa pode aprender conceitos de programação em pouco tempo, já outra pode demorar um pouco mais; e isso não faz que uma seja mais capaz que a outra, ou que seja melhor que a outra: isso é apenas uma característica de cada um.

Da mesma forma que a idade não tem relação nenhuma com a experiência que temos - existem pessoas mais novas com mais experiência que pessoas mais velhas, e vice-versa. Não significa que uma pessoa com 20 anos não pode ser sênior, e nem que outra pessoa com 40 anos possa ser júnior - definitivamente uma coisa (a idade) não possui nenhum tipo de ligação com a outra (a experiência). Elas só estão sujeitas ao tempo.

Mas, muitos acham que o conhecimento técnico é a única coisa que precisam; uma das coisas que muitos desenvolvedores estão acostumados a neglicenciar são suas soft skills: esse termo engloba as habilidades de uma pessoa que estão relacionadas ao seu comportamento. Comunicação, capacidade de raciocínio e aprendizado, proatividade, liderança, trabalho em equipe… Vejo muitos desenvolvedores apenas se preocuparem com a sua habilidade técnica, seja em dominar 1 ou N linguagens de programação, mas que não conseguem lidar com uma situação de conflito, ou com uma crítica - ou então, que nunca deram um feedback para o seu colega, que ignoram bugs em produção e apenas se preocupam em resolvê-los quando o líder cria a issue.

De nada adianta você saber todos os recursos e detalhes de uma linguagem se você ignora o seu colega que precisa de ajuda, ou se você não sabe lidar com um comentário sugerindo uma mudança no seu PR.

Tudo o que fazemos e, principalmente, aquilo que deixamos de fazer é avaliado - e engana-se aquele que pensa que apenas a sua capacidade técnica, ou o seu nível de excelência técnica importa.

Depois de fazer a pergunta que está no título desse artigo para mim mesmo várias vezes, e de ouvir as pessoas reclamando sobre aquela promoção que nunca chega, ou sobre se sentirem presas no mesmo lugar sem perspectiva de crescimento, percebi que a única pessoa que devemos culpar por isso acontecer somos nós mesmos - você é o culpado do seu fracasso, da mesma forma que você é o responsável pelo seu sucesso.

Lógico que durante essa caminhada podemos (e devemos) receber ajuda - mas, essa ajuda não é o fator determinante que irá dizer se vamos conseguir ou não; ela pode nos ajudar a chegar mais rápido, ou ter mais certeza de que chegaremos onde queremos. Mas apenas nós somos responsáveis por isso.

Respondendo a pergunta que foi criada no título desse artigo, o que faz de você um desenvolvedor sênior é o seu conhecimento técnico e o seu comportamento. Essas duas competências sempre andarão juntas, e uma irá depender da outra; uma complementa a outra. Quando você atingir um nível de excelência técnica desejada e possuir um comportamento condizente, certamente as pessoas que te avaliam irão notar isso e sua promoção chegará antes que você perceba.

Enquanto ela não chega, ao invés de se frustrar com expectativas que você ficou criando na sua cabeça, aproveite o tempo para estudar, aprimorar e aprender com os seus próprios erros; valorize mais o aprendizado que você ganha no seu cotidiano do que uma mera cerimônia ou ato de reconhecimento.

Compartilhe este artigo: