Bem a melhor ferramenta é aquela que resolve seu problema.

Isso é invariável em todo o mundo da programação.

No mundo do SaaS, sendo um desenvolvedor solo, você não deve confiar apenas em si mesmo.

Adicione Testes, testes, mais testes, enfie testes em tudo que puder e use softwares maduros.

Mas, ao mesmo tempo não deixe seu software parado no tempo.

As duas grandes divisões

Dentro do mundo de software existem duas grandes divisões frontend e backend

E uma parte menor que é DevOps.

Este post, em especifico é sobre frontend e backend.

Assuma que que DevOps você pode contratar outros SaaS em vez de implementar você mesmo.

FrontEnd

Para o Frontend precisamos atingir o máximo de plataformas sozinho com uma interface moderna possa atingir:

  • Desktop
  • Web
  • Mobile

Além disso, é preferencial que seguirmos técnicas de design como:

Com isso, temos uma base boa para ter um software que não fica irritante com o tempo.

No geral, use Flutter para evitar ter que lidar com diversas plataformas manualmente.

BackEnd

Para começar, precisamos entender do que é importante no backend de um SaaS.

Nada mais importante do que usar um framework maduro.

E no caso, pessoalmente falando, o melhor que temos é o Ruby On Rails e veja que podemos migrar de Ruby para JRuby garantindo que a aplicação pode escalar se e somente se for necessário.

Adote testes como dogma literalmente, teste tudo, se tiver erro gere um teste, se tiver um bug teste, se tiver uma vulnerabilidade teste também.

Coloque:

Veja que a ideia principal é que as libs do rails são maduras e testadas facilmente acopladas e no geral é muito melhor do que depender de si mesmo que só na cabeça vai querer inventar procedimentos de segurança que vai fazer pagar fortunas em indenizações.

Vide Noticia sobre o Saphoos.

DevOps

Dentro de seu Software as Service.

Você quer evitar ao máximo problemas de responsabilidade fiscal.

Então a coisa mais inteligente a se fazer é se mover de capex (investimento na própria infra) para opex (contrato de serviços externos).

Use serviços como paper-trail, use a amazon-web-service

O software continua sendo sua responsabilidade mas, problemas internos de servidores gerenciados por provedores não recaem diretamente sobre você, reduzindo riscos e permitindo focar no desenvolvimento.

Contrate Hackers Ético e faça testes de segurança, corrija brechas periodicamente.

Conclusão

No geral, a combinação ideal seria usar um backend em rails e um frontend em flutter.

Para ter diversas plataformas e um backend sólido, caso precise de algo customizado, use um microsserviço da forma que achar melhor contanto que haja contratos fortes e testes.

Jamais esqueça os testes.