Como diz um colega daqui no Tabnews, vou dar meus 2 centavos de contribuição... Vamos lá!
Como começar? Sei que existem algumas ferramentas como 99frelas ou Workana, mas essa é a melhor forma? Existe alguma plataforma que recomendam?
Sinceramente, nunca me dei bem com essas plataformas de freelance, a Workana mesmo até hoje não aceitou meu perfil.
Esses sites geralmente só te fornecem a chance de brigar por um projeto com outros devs se você pagar um plano mensal deles. Então não acredito que seja a melhor forma de conseguir algum cliente. Pessoalmente, não recomendo, é perda de tempo. Invista esse tempo prospectando clientes da sua cidade. Sempre tem uma empresa precisando de um site, ou um sisteminha, alguma automação... O boca-a-boca, indicação sempre foi e será a melhor forma de divulgação.
Minha ideia inicial é fazer alguns freelance como forma de conseguir mais expêriencia, como eu poderia abordar isso no CV ou linkedin por exemplo?
Se você não possui um portfólio, uma apresentação de projetos desenvolvidos, faça o quanto antes. Não espere ter clientes para desenvolver um sistema de login, controle de produtos, estoque, venda. Não precisa ser coisas complicadas, você só precisa mostrar que sabe o que está fazendo e não só dizendo. Quanto ao linkedin não tenho muita experiência para dizer, mas acredito que não seja o local para freelancers, e sim mais relacionamento empresa x funcionário.
É preciso ter CNPJ ou consigo iniciar sem precisar ir atrás disso?
No início não vai precisar ter cnpj, só quando tiver um faturamento mais expressivo para uma pessoa física ou tiver a necessidade de emitir notas do serviço. Ter um CNPJ pode ser bem caro para quem está iniciando na carreira, uma vez que programador não pode ser MEI. Inclusive nessa discussão aqui foi falado sobre isso.
Melhor stack para conseguir freelas?
Depende do que você quer fazer, não existe melhor ou pior, mas o que é adequado para cada coisa. Uma vez que softwares desktop não estão tão em alta, duas áreas interessantes são web e mobile. Web você vai usar tecnologias como PHP (Laravel), JavaScript (Node), HTML, CSS (Tailwind) em geral. Mobile você vai usar Flutter ou React Native. Mas use o que você sabe também, coloque a mão na massa ao invés de ir estudar mais um framework JS da moda.
Algum conselho que você possa compartilhar?
Em relação há clientes... tem muitos nós-cegos por aí, muito pilantra. Se previna com contrato bem descrito o que haverá no sistema/site, não entregue o fonte antes de ser pago, não faça trabalho de graça. De preferência nem venda o fonte e sim alugue o sistema, like a sass.
Tenha seu própio servidor de hospedagem/email. Você pode montar em uma vps barata e colocar seus sistemas lá. Manter eles seguros na sua hospedagem vai evitar de venderem o produto que você suou pra desenvolver.
Escute os devs mais experientes, as dicas do pessoal da Tabnews são muito valiosas, eu mesmo estou sempre aprendendo com eles.
Tenha parceiros que fazem a parte do projeto que você não manja. Por exemplo, pegou um site para fazer com Wordpress, mas não manja de design. Arrume um colega designer pra fazer pra você o layout e você cuida do resto. Aí você destina uma parte do ganho pra esse cara. A mesma coisa se aplica com backend ou qualquer outra área que você não domina.
Por fim, entre em comunidades do discord da linguagem que você trabalha para que possam te ajudar em alguma dúvida.