Diferentes estilos de trabalho de um Desenvolvedor de Software: Indústria vs SoftwareHouse
Disclaimer: Escrevendo o texto, percebi que utilizei os termos "geralmente", "na maior parte dos casos" e coisas do tipo várias vezes, então logo de cara quero deixar claro que não tenho a intenção de generalizar nada, somente passar minha perspectiva/experiência (que é pouca kk) baseado muitas vezes em achismo mesmo, com o objetivo de fomentar debate e pegar a pespectivas de pessoas que pensam ou não igual a mim.
Contexto
Trabalho como Analista de Sistemas Jr. em uma indústria/fábrica há cerca de dois anos. Comecei como estagiário(e foi meu primeiro emprego formal) então não conhecia outro padrão, nunca trabalhando em uma SoftwareHouse. E isso me dá uma perspectiva peculiar: enquanto vejo pessoas chegando de agências de software sofrendo para se adaptar, eu acho normal estar resolvendo problemas que envolvem 15 diferentes responsabilidades ao mesmo tempo.
Cenário 1: Indústria
Quando você trabalha em TI dentro de uma indústria, vc acaba que não constrói software, vc resolve problemas do negócio que usa software.
Apesar de ser caótico, aqui geralmente você:
- Vai atrás dos requisitos porque ninguém vai mastigar para você
- Aprende o negócio (produção, logística, operacional, RH, ERP) porque precisa conversar com as pessoas que sofrem com os problemas.
- Entende a dor de quem usa seu sistema no dia a dia na """"vida real""""
- Faz tudo um pouco: você é dev, é DBA, é infra, é suporte, é analista de negócio
- Vê o impacto real do seu trabalho, literalmente alguém chega para você e diz:
você me poupou 2 horas de trabalho manual.
Já existe também o segundo cenário
Cenário 2: Empresas voltadas para Desenvolvedores de software.
Nesse cenário, as coisas são beem mais estruturadas. Você tem (usualmente):
- Um PO que decodifica os requisitos
- Um Tech Lead que desenha a arquitetura
- Um DBA para estrutura de dados
- Um analista de processos
Você recebe tudo "mastigado" e entrega código. E isso é ótimo, porque você fica bom mesmo em uma coisa.
História tragicômica
Há pouco tempo, contrataram um Desenvolvedor Pleno que tinha o histórico de trabalhar em Casas de software. Excelente profissional, conhecimento técnico, experiÊncia sólida.
Mas em 6 meses ele saiu.
Capacidade não faltava, só que ele ficou esgotado e acabou não se acostumando. Ele chegava aqui esperando ter um Analista de negócios, um DBA, uma arquitetura pronta. O que encontrou foi:
você precisa entender por que a produção está parada, conversa com o pessoal lá, identifica o problema, desenha a solução, implementa, configura o banco, e tira dúvida do operador pelo Whatsapp, cria a tabela, cria esse usuário
etc. etc. etc.
Eu também não o julgo, na carteira ele estava como Desenvolvedor, e estava sendo cobrado coisas de Analista de Sistemas.
Mas a realidade é que esse tipo de empresa não tem estrutura para se ter desenvolvedores, e sim analistas de sistemas.
E eu nem de longe tenho a intenção de romantizar esse cenário, é um saco não ter estrutura pra rodar um Docker, porque a empresa é de (insira qualquer produto aqui) e não de TI.
Não nego que acabava achando engraçado quando ele via que o Sênior daqui configurou um deploy automatizado no Jenkins para uma aplicação sem Docker e sem servidor Linux, com zero downtime em prod, provavelmente ele nem sabia que era possível kkkk.
A conclusão que eu tiro para mim mesmo é que sinceramente eu não me vejo hoje trabalhando somente no backend ou somente nesse módulo específico de um sistema maior. Talvez o processo inverso do rapaz desenvolvedor se aplique a mim, o costume dificultaria eu passar para uma empresa de software também.
Eai, quais são suas experiências? Alguém se identificou com o tema?
Acredito que no fim cada um tem um ambiente o qual consegue se adaptar melhor, e o que importa é o dinheiro no bolso!