Desde 2012 sou um dos responsáveis pela operação da Casa do Código. Isso significa que eu não programo mais full time, mas em contrapartida tenho diversas outras tarefas. Fazer a curadoria e edição dos livros, tirar dúvidas de clientes, guiar uma jovem equipe de desenvolvimento e diversas outras tarefas que abrangem as mais variadas áreas da empresa.

E pra ser sincero, acho esse envolvimento em diferentes áreas e tarefas fascinante. Colocar o chapéu do marketing, depois o do customer service, o de editor, o de gestor de produtos e também o de desenvolvedor me faz ver como tudo está fortemente relacionado.

Olhando pelo prisma do desenvolvimento, é fácil perceber como as novas estratégias de marketing precisam muito da tecnologia, como o processo de edição e escrita de um livro pode ser facilitado para o autor com o uso e adaptações de ferramentas adequadas, como a disponibilidade de uma plataforma tem um bom impacto na satisfação de um cliente.

Todas as áreas giram em torno do desenvolvimento

O desenvolvedor atual tem que ir além de conhecer muito bem as linguagens, paradigmas e frameworks. Ele precisa entender como a empresa ou cliente funciona como um todo.

Já vi muitos desenvolvedores que quando perguntados do motivo de desenvolverem uma determinada funcionalidade, respondem: “Sei lá, o cliente pediu”.

Se você não sabe o motivo de estar fazendo algo, como você sabe se está resolvendo o problema do cliente?

Foi pedido para mudar um formulário, pois alguns campos já poderiam vir com valor default preenchido com o valor que ele normalmente precisava digitar.

Se você não sabe o motivo de fazer, você não sabe o impacto que aquilo terá no dia a dia do cliente. Ele precisa dessa funcionalidade, pois assim ele consegue atender mais pacientes e agilizar a triagem no hospital.

Eu particularmente ficaria muito mais feliz em desenvolver uma funcionalidade que eu sei que vai fazer com que o hospital atenda pessoas mais rapidamente. Não sei você ;).

Sempre quando há algo que precisa ser colocado no ar, gosto que os desenvolvedores participem do processo de deploy. Pode ser um bug corrigido, uma feature desenvolvida, uma melhoria de design etc. O processo de participar de colocar a versão nova no ar traz também aquela responsabilidade sobre o que está sendo posto em produção.

Qualquer bug grave que tenha sido implantado e que precise de um fix urgente, naturalmente vai ter um responsável. “Espera, fui eu quem estava lá colocando aquela versão no ar. Deixa eu corrigir o problema então”.

É claro que isso depende da cultura da empresa para a implantação, mas sempre que possível, gosto que os desenvolvedores participem.

Entender as necessidades, participar ativamente e saber os motivos pelos quais as coisas são feitas criam o envolvimento do desenvolvedor com o projeto.

O desenvolvedor que se interessa em conhecer o negócio, saber porque as coisas são daquele jeito, questiona e ouve o cliente, na minha opinião tem muito mais chances de se destacar na área.

Saber a fundo as tecnologias é primordial, se interessar pelo negócio é um diferencial que poucos tem.