Eu sou freelancer e, portanto, "e os suíços, os ceifeiros e o cara no cachimbo". E uma parte significativa do tempo de trabalho é gasta em negociações com clientes em potencial. Aqui está o mal-entendido básico que observo nas pessoas em 50% dos casos:
Um projeto de desenvolvimento de aplicativos custa tanto quanto custa. E na era da globalização e da Internet, você não pode obter software personalizado a um custo significativamente menor do que o custo no mercado.

Um exemplo simples para maior clareza. Meu ex-colega cria galinhas em uma fazenda. Ela realmente gosta e está neste especial. E aqui estou interessado nela:
- N., por que o frango aumentou tanto nos preços ultimamente?
- Então a comida subiu, então a galinha subiu. E os fornecedores de alimentos motivam isso pelo aumento no preço do combustível e da eletricidade.
Todo mundo sabe disso, e todo mundo entende, sim. Mas quando se trata de produtos de software, a compreensão de muitas pessoas, por algum motivo, falha. Aqui está a motivação deles:
- Bem, isso é para você 5 minutos de trabalho! Tudo é muito simples aqui!
Bem, faça você mesmo se é assim tão simples.
Aliás, posso dizer sem rodeios, nem mesmo uma pergunta. Só porque alguém tem que dizer a verdade bem nos olhos. Caso contrário, uma sociedade em que todos tenham medo de dizer a verdade por causa do medo de custos financeiros rapidamente se tornará inútil. E os programadores de uma sociedade assim irão gradualmente se mudar para uma sociedade vizinha, onde encaram seu trabalho com mais realismo e o avaliam adequadamente.
Por outro lado, sempre haverá um índio astuto de Bangladesh para todo freelancer presunçoso que esteja pronto para trabalhar por 1/4 da refeição. E aqui estamos em uma situação deliberadamente perdida, porque nossos preços de frango são mais altos e o clima é mais frio - simplesmente não podemos nos dar ao luxo de trabalhar pela mesma taxa. Caso contrário, morreremos de frio e fome.
Mas o cliente ganha ao recorrer aos serviços de um bengali (eu o tomo aqui em uma interpretação expandida: "Bangladesh é um modo de vida")? Sim, ele não ganha nada porque, voltando à tese original, um projeto de desenvolvimento de software custa tanto quanto custa. E mesmo se, no momento, houver uma economia substancial, alguém terá que pagar por isso, não com dinheiro, mas com tempo e nervosismo.
Aqui está um exemplo muito comum do desenvolvimento freelancer que você ou seus conhecidos devem ter encontrado:
1. Uma pessoa vem com seu pedido para a troca de freelancers.
2. Sob os termos do pagamento faseado, ele encontra um artista por um preço escasso.
3. O artista executa o primeiro estágio e se funde na direção do Nirvana.
4. O cliente coça a parte de trás da cabeça e volta à troca.
5. A história se repete.
6. Na terceira ou quarta iteração, muitos executores simplesmente se recusam a finalizar esse código, que é mais fácil de reescrever do que fazer mais alguma coisa com ele.
7. ...
Por que isso está acontecendo?
Porque, como naquele conto de fadas: “você não perseguiria o pop por preço baixo”.
O fato é que, com base no pagamento escasso de um projeto, os recém-chegados a esse campo geralmente são atendidos. E a um preço baixo, eles inicialmente estabelecem (justificadamente, a propósito) a possibilidade de obter experiência em desenvolvimento. Mas, como essa experiência ainda é muito pequena para eles, eles não podem inicialmente avaliar adequadamente a quantidade de trabalho envolvida no projeto. E a compreensão deste volume chega a eles apenas no decorrer do trabalho. E eles entendem que subestimaram seu trabalho. Mas, como eles já estão vinculados a um contrato, tomam uma decisão provisória: concluir a obra atual, obter um bônus por ela e - para o Nirvana!
Esta é uma mecânica muito simples e muito vital.
- Mas e o “trabalho por 5 minutos”? - você pergunta.
E aqui está uma história completamente diferente. Um programador que "trabalha lá por 5 minutos" geralmente já é tão versado nos custos de mão-de-obra que vê a justiça da situação em que recebe apenas não cinco minutos do trabalho atual, mas também todas as noites sem dormir alguns anos antes. Quando ele percorreu a selva de manuais indistintos e tutoriais semi-observáveis.
Aqui, afinal, aqui está outra coisa (perdoe-me taxistas). Quando você é motorista de táxi, por exemplo, seu produto final é sempre mais ou menos o mesmo. Este é um cliente entregue do ponto A ao ponto B em x tempo. E quando o cliente começa a negociar com você, ele também parte da premissa de que, em qualquer caso, receberá um produto conhecido.
No caso do desenvolvimento de software, especialmente em fases, especialmente com suporte adicional, a situação é um pouco diferente do que com o transporte ou, digamos, cavando valas. Porque um programador é, até certo ponto, sempre um artista. E, às vezes, é melhor para o artista dar a ele a oportunidade de entrar na Academia de Viena do que então desemaranhar tudo o que ele inventou com fome, passando a noite no banco. Se você entende o que eu quero dizer.
E sim, por favor, entenda-me corretamente, não chamo aqui "para dar mais dinheiro aos programadores", ou algo assim. Mas apenas chamo a atenção para o fato de que quanto mais você avaliar seu projeto em termos de custo e mão-de-obra, melhor para todos. Afinal, como existem os notórios "inacabados" no campo da construção civil, da mesma forma que existe o fenômeno de "inacabados" no campo do desenvolvimento de software. Milhares deles. Até dezenas e centenas de projetos de software que foram encerrados devido ao fato de seus proprietários não terem inicialmente avaliado corretamente o custo do trabalho.
"Bem, o que devo fazer?" Eu tenho apenas 500 dólares para esses trabalhos!
Também ouça periodicamente esta frase. E o trabalho lá, digamos, cinco mil dólares. E o que fazer? E não faça nada. Você não vem à loja comprar frango e não diz ao vendedor que "aqui eu tenho 1 dólar, mas preciso desse frango grande e gordo". Porque você entende que esse frango grande e gordo custa várias vezes mais que o seu dólar. Mas então por que você não entende isso no caso de um projeto de software? Esta é uma pergunta retórica.
Sabe, eu costumava interpretar a situação quando você recebe um emprego por pouco dinheiro, como desrespeito. Mas então eu percebi que estamos falando mais sobre incompetência. Afinal, avaliar imediatamente a quantidade de trabalho necessária para implementar toda a funcionalidade planejada pode apenas ser verdadeiros gênios do gerenciamento. E então, podemos apenas falar sobre projetos padrão nos quais esse gerente está se formando há vários anos. Pois só é necessário sair um pouco do trilho de costume, pois as notórias nuances começam imediatamente.
É por isso que sou um fervoroso defensor da
abordagem MVP para o desenvolvimento de software, se esse software é mais complicado do que um blog WordPress. Essa abordagem, pelo menos, oferece a você pelo menos alguma garantia de que você conseguirá o que deseja.
Espero que o entendimento acima seja útil na próxima vez que você for ao intercâmbio freelancer com seu projeto.
Seja saudável!
Roman D.