Bom sou freelancer hoje em dia vou dar minha opinião.
Qual o melhor caminho para conseguir clientes no início? Ir atrás e oferecer os serviços? Se candidatar em plataformas (freelancer, workana, 99freelas)?
Qual sua habilidade de comunicação? Você fala com muitas pessoas? Você já tem uma rede de network?
Plataformas tem seu valor, ajudam até certo ponto, porém é algo que é um garimpo contínuo de achar uma oportunidade interessante de trabalhar vs conseguir fazer uma boa proposta vs você realmente entender o problema do potencial cliente.
Como vocês lidam com cobrança/pagamento? 100% antes de iniciar? 50% antes e 50% depois de finalizado? 100% depois de finalizado?
Já fiz de tudo, hoje em dia depende muito do cliente, mas em geral eu cobro por hora e recebo no fim do mês as horas trabalhadas. Em casos de projetos que são fechados normalmente eles não são maiores que 30 dias então vale a mesma lógica.
Projetos que tem um escopo teoricamente fechado, eu divido em fases a entrega e o cliente me paga quando concluo cada fase. Importante ter em mente que nesse caso de entegar em fases eu faço uma pseudo sprint de 15 dias em média, então ele me paga normalmente duas vezes por mês.
Tudo isso pra dizer que na minha politica pessoal eu normalmente não passo mais de 1 mês sem receber alguma coisa do meu trabalho tenha isso em mente.
Vocês fazem contratos? Precisam de um advogado pra isso?
Faço contrato é importante fazer, no meu caso em particular eu e um grupo de colegas desenvolvedores criamos um contrato básico e mandamos para um advogado revisar então fazemos sempre um contrato bem básico até por que sempre trabalho com escopo aberto. Ai normalmente eu só mudo alguns campos e mando bala, ai tem cliente que quer reconhecer firma e outros não. (Importante aqui que você precisa obrigatoriamente ter um cnpj, pois se por exemplo seu cliente não te pagar você protesta ele).
Como lidar quando você tem uma oportunidade de serviço mas não tem tanta experiência naquilo? Pega e aprende no caminho? Você tem alguma história para contar nesse sentido?
Acho que o amigo já falou que você pegar algo que não conhece normalmente vai ter uma grande chance de dar errado, a não ser que já esteja claro desde o principio a todas as partes. Mas, por exemplo já fiz um projeto em Svelte sem ter tanto conhecimento em Svelte, porém já tinha trabalhado muito tempo com Vue/Nuxt ai eu falei pro cliente que iria usar essa stack por que achava que seria melhor pra ele, porém eu não tinha tanta experiência com aquele framework. O ponto é que nunca caia de cabeça em algo que você tenha 0 experiência, se você já fez alguma coisa com ele mesmo não tendo experiência é possível fazer, mas tenha também em mente que no mínimo você vai ter o dobro de esforço e isso pode ter implicações nas suas horas trabalhadas e na minha politica no valor a receber por hora também.
De modo geral tente fazer alguns pequenos projetos pessoais antes de tentar fazer algo sem ter tanta experiência, tenha em mente que em 90% dos casos seu cliente não se importa se vai fazer um monolito em Java 1.2 ou uma API usando FastAPI e um front em Svelte, ele quer que tu resolva o problema dele, muitas vezes no menor tempo que você consiga. E o que vai garantir o quanto você recebe é o quão bem você resolve o problema dele.
Uma outra história que posso contar, trabalhei em uma empresa que vendia um low code feito em django que vc criava as telas usando json, o sistema era péssimo de mexer e dar manutenção mas, o dono da consultoria vendia esse sistema por R$50k por mês pros clientes dele, veja bem, na minha humilde opinião aqueles clientes conseguiriam resolver com um Pipefy gastando 30% desse valor, porém mesmo com todos os problemas técnicos da solução (o que refletia no custo final pro cliente) o sistema entregava o que o cliente precisava e ele estava disposto a pagar aquele valor então dava negócio.
Um cara que as vezes manda uns posts aqui o @moarcirmoda tem um SAAS e uma coisa que ele fala muito é que o teu cliente quer que tu resolva o problema dele, não importa muitas vezes se o que ele vai receber num primeiro momento é só uma planilha por e-mail, se o que está lá vai conseguir resolver o problema dele, ele vai ficar satisfeito e te pagar. Claro que se você já resolve o problema desse cliente e você quer reescrever esse projeto usando um framework da moda você pode, mesmo falando pra ele que essa versão vai demorar 3 meses e você não tem experiência com ele mas, se você mostrar pra ele que com essa reescrita vai trazer mais beneficios pra ele, ele vai pagar.
Bom acho que é isso espero ter ajudado.