Quando eu comecei a programar profissionalmente, essa atividade era considerada uma carreira bem remunerada e empolgante, pois estávamos à frente da então “revolução da microinformática” que efetivamente colocou um micro em cada escrivaninha e mudou a maneira como as empresas operam.

Passados vinte e poucos anos, o desenvolvimento de software ainda é considerada uma atividade bem remunerada para um recém-formado com vinte e poucos anos. Por outro lado, acontecem algumas coisas estranhas que não se encaixam bem com esse começo promissor:

  • A evolução da carreira depois do primeiro emprego remunerado é meio incerta, não é incomum o profissional ganhar praticamente a mesma coisa dez anos depois.
  • Quem contrata os desenvolvedores aparentemente não os tem em alta conta, apesar dos salários relativamente altos. Os programadores são contratados e demitidos sem muito critério, de forma mais parecida a profissionais terceirizados de segurança ou limpeza. Eles também não são adequadamente gerenciados, sendo usualmente cobrados apenas quanto a prazos, sem muita preocupação se o trabalho foi bem-feito ou não. As condições de trabalho são usualmente ruins para pessoas com esse nível de remuneração: os desenvolvedores são “empilhados” em mesas ou bancadas pequenas, têm acesso restrito a telefone e internet, por vezes em condições piores do que os operadores de telemarketing que ganham uma fração do salário.
  • Em empresas fornecedoras de mão de obra/fábricas de software, as pessoas mais bem remuneradas e prestigiadas são aquelas que se relacionam com o cliente (os “vendedores”) e não o corpo técnico.

Eu tenho uma teoria que explica o “paradoxo” acima. O problema é o seguinte: a maioria do desenvolvimento de software no Brasil é terceirizado e cobrado direta ou indiretamente por hora trabalhada. As características desse relacionamento de negócio acabam influenciando o mercado como um todo. Coloque-se no papel de um fornecedor terceirizado:

  • Você está desenvolvendo um produto “para os outros”, se não funcionar direito não é realmente problema seu; não é o seu faturamento que não roda ou a sua conta bancária que fica estourada;
  • Na verdade, se não funcionar direito é provável que você seja contratado para consertar o problema que você mesmo criou, já que contratar qualquer outro fornecedor irá no mínimo causar atrasos, além de ele poder se revelar ser ainda pior que o atual (“é melhor o demônio que você conhece do que o que você não conhece”);
  • Você cobra por hora de trabalho, quer de forma direta quer de forma indireta através de um negócio chamado “fábrica de software”. A “fábrica de software” é um macete inventado para parecer que você está vendendo um projeto quando na verdade continua vendendo por hora (e tome hora!)

Resumindo: quanto pior melhor. Mas e o cliente, não fica bravo? É lógico que fica, mas aí é que entra em cena o vendedor (ou “gerente de relacionamento”): ele tem que aparar as arestas e fazer o que for necessário para que o cliente não só assine o “aceite” do serviço como também produza novas ordens de serviço. O que for necessário. Uber alles.

Quais as lições que se tira disso? Se você for uma pessoa idônea na infeliz situação de contratar desenvolvimento de software, faça o seguinte: procure empresas de boa reputação mesmo que não sejam as maiores do ramo, tente se possível estabelecer pequenos projetos com preço fechado, estabeleça padrões técnicos de codificação e não caia na conversa doce dos vendedores.

Se você for um desenvolvedor, evite trabalhar em empresas de alocação de mão de obra. Procure uma empresa com um produto próprio, como uma software-house. Este tipo de empresa costuma ligar muito mais para a qualidade do produto, valoriza bons profissionais, tem planos para longo prazo e um fluxo de caixa que permite manter um quadro de funcionários estável independentemente do ciclo de negócios. Pelo menos será mais empolgante, divertido e instrutivo.

Mauro Sant’Anna já trabalhou com desenvolvimento de projetos e não vê o ramo com muito entusiasmo. O ocorrido com a Satyam Computer Services da Índia não o surpreendeu.

Nota: A maioria do desenvolvimento de software no Brasil é terceirizado e cobrado direta ou indiretamente por hora trabalhada.