Por que contratar desenvolvimento de software gera tanta dor de cabeça?

Quem trabalha com software conhece bem os termos "escopo fechado" e "escopo aberto", mas quem não é da área, ou tem um conhecimento mais superficial de TI, nem sempre domina bem a diferença de escopo. Por isso, geralmente quem não tem muita familiaridade com desenvolvimento de software opta por trabalhar com escopo fechado de projeto, por receio, ou medo, do escopo aberto, sem nem ao menos conhecer a fundo os diferentes modos de se trabalhar. Mas por que será que existe esse receio? Vamos debater um pouco sobre isso!

O mercado
Blog_miope

Este post não é pra explicar nem definir o que é escopo fechado ou aberto, mas sim esclarecer um pouco sobre como funciona o mercado de contratação de software atualmente e tentar chegar a uma explicação de por que essa é uma atividade que gera tanta dor de cabeça. Para isso, vamos usar de exemplo a contratação de um freelancer para desenvolver novas características, as famosas features, em um produto já existente. Uma necessidade de mercado bastante comum hoje em dia.

Quando você busca um desenvolvedor para o seu projeto, pode ir em uma dessas tantas plataformas online de freelancers para tentar achar o profissional ideal. Porém, esses marketplaces são totalmente abertos, ou seja, qualquer tipo de profissional pode se cadastrar e escrever código no seu produto (não necessariamente um bom código). É por isso que você recebe orçamentos com uma diferença gritante, por exemplo, de R$ 300,00 a R$ 2 mil para o desenvolvimento de uma mesma atividade. Esse tipo de plataforma é o que tem gerado tantos problemas e experiências ruins com freelancers que somem, não entregam os códigos, entregam muitos erros, etc.

Caso você trabalhe com pequenos projetos e leve um calote, a perda financeira será igualmente pequena, mas a dor de cabeça e a frustração é a mesma de quem trabalha em grandes projetos. De qualquer modo, você estará assumindo um alto risco ao contratar profissionais de baixo valor nesse tipo de plataforma. Certamente será preciso contar com a sorte. Porém, se ainda assim você tiver que optar por trabalhar com freelancers não selecionados, terá que repassar para o desenvolvedor o famoso escopo de projeto. Ou seja, a descrição de tudo o que precisa ser feito em seu projeto. No caso de escopo fechado, principalmente quando se trata de um produto de software que já existe, o desenvolvedor fica totalmente às cegas ao estimar o tempo e o valor das atividades. Simplesmente não é possível saber de antemão a qualidade do código existente, as dependências ou as integrações. Informações essas que refletem diretamente numa estimativa de projeto precisa. Seria como você estimar a reforma de uma casa só olhando a fachada.

O famoso chute

via GIPHY

Em casos como do exemplo citado acima, o profissional, ao estimar o valor de seu trabalho, estará com certeza dando um chute e, na maioria das vezes, dando um chute errado. Se for um desenvolvedor experiente, essa pessoa irá adicionar algumas horas a mais pra contemplar o risco de o código do projeto ser de baixa qualidade (esse pode ser traduzido como o orçamento de dois mil reais que comentei acima). São casos como o exemplo citado, de estimativas falhas de escopo fechado, que fazem com que, hoje, no mercado 7 em cada 10 projetos extrapolam o prazo ou o orçamento e a entrega final não atende à expectativa inicial. Isso não sou eu que falo, são dados estatísticos do mercado de software.

Nesse contexto, o escopo fechado sempre vai parecer financeiramente mais vantajoso para quem contrata, pois o pagamento será baseado em uma estimativa míope do desenvolvedor. Porém, ao mesmo tempo, o contratante aceita, mesmo sem saber, o alto risco de falha do projeto. Afinal, na maioria dos casos a estimativa de projeto se revela equivocada. Um custo adicional de tempo ou qualidade será aplicado, independente de um custo adicional financeiro.

Bom, com base em tudo isso que falei, você, caro leitor(a), já deve ter percebido que as chances de dar problema estão no horizonte e na maioria das vezes, dá problema. Em 70% dos casos, para ser mais preciso. Nessa hora cabe a você optar por ignorar o comportamento padrão de falhas do mercado e tentar esse caminho mesmo assim, com fé no papo de que "não vai acontecer comigo", ou então buscar uma alternativa melhor, como a de contratar freelancers selecionados através de um modelo de pacotes de horas, também conhecido como modelo de escopo aberto.

Um caminho alternativo

via GIPHY

Plataformas de freelancers selecionados, como é o caso da Vibbra!, fazem com que cada profissional da sua rede passe por um processo rigoroso de seleção onde apenas um pequeno percentual chega até o final (7% no nosso caso). No processo da Vibbra!, os profissionais passam tanto por testes técnicos quanto comportamentais. Esses últimos avaliam o comprometimento com as entregas e a fluidez do trabalho remoto. Ou seja, você está contratando a "nata" dos desenvolvedores (temos também designer, gestores e analistas), além de um serviço que te protege caso o freelancer não corresponda às suas expectativas.

Uma vez que a seleção dos freelancer mitiga o seu risco de trabalhar com profissionais de baixa qualidade, a contratação de um pacote de horas leva o seu projeto a uma maior assertividade quanto a entrega e qualidade do resultado, uma vez que você não estará apostando em estimativas iniciais falhas.

Voltando ao exemplo do início do post, um freelancer não selecionado pode estimar 100 horas de desenvolvimento de projeto, com base no escopo fechado que teve que analisar, sem um aprofundamento. Já num modelo de pacote de horas, você pode contratar 10 horas, ou menos, de um freelancer selecionado para avaliar e entender o seu projeto a fundo, para que, só então, o desenvolvedor informe que o seu projeto necessita de mais 40 horas de desenvolvimento, por exemplo. Esta sim é uma forma de gerar estimativas de desenvolvimento muito mais precisas e confiáveis, bem como prazos mais fidedignos com menor possibilidade de atraso de entrega.

Ok, mas e como eu controlo as horas trabalhadas e sei que o desenvolvedor não vai me enganar?

Em plataformas como a Vibbra!, uma vez contratado o profissional de alto nível por um pacote de horas, você acompanha o registro de atividade x horas e pode aprovar, ou não, cada hora trabalhada. Se você não concordar com a quantidade de horas registradas em uma atividade, você tem a liberdade de questionar o que foi executado e o Vibbrante, nosso freelancers, de esclarecer o que foi executado na hora fim. Se ainda assim houver algum desacordo, a Vibbra! intervêm e analisa o caso atuando como um "juiz de paz".

Ufa! Trabalho extenso, não? Porém, é muito importante que você compreenda a forma correta de se estimar o valor de desenvolvimento de software. Além de compreender porque há profissionais com um valor hora mais ou menos elevado. Afinal, é a qualidade de um profissional altamente alinhados às necessidades do seu projeto, comprometido com a entrega de resultados eficientes e precisos que estamos debatendo. A forma de trabalhar da Vibbra! é diferente da forma atual? É. Porém, tenha em mente que com a forma atual de trabalho você tem apenas 30% de chance de não desperdiçar o seu tempo e o dinheiro investido.