Executando verificação de segurança...
1

Oque preciso fazer para continuar evoluindo meu backend?

Meus conhecimentos

Em backend com Nodejs, eu já dominei o express, consigo fazer ótimas Rest APIs, consigo fazer um crud bem estruturado, e autenticação com jwt, como por exemplo esse template que eu fiz
https://github.com/luisviniciuslv/Template-TS-Auth-REST-API.git

Oque eu devo fazer agora?

Eu vejo 3 caminhos a serem seguidos

  1. NestJs
  2. GraphQL
  3. Java ou DotNet

Não sei qual desses três caminhos eu deveria seguir para continuar me desenvolvendo como dev back-end. Devo continuar com typescript e aprender NestJs? ou GraphQL? Ou devo partir para outra linguagem?

Carregando publicação patrocinada...
3

Não se ligue tanto a linguagens ou frameworks, mas em formas de resolver problemas, por exemplo:

  • Como empresas com alta demandam lidam com volume colossal de requisições?
  • Como escalar um projeto desse tamanho?
  • Como evitar custo infinito?

Essas perguntas, por óbvio, levam a outras perguntas e exigem exemplos mais concretos:

  • Considere que uma aplicação tem um 5000 rpm, mas dessas 4500 são de leitura e 500 de escrita.
  • Considere uma aplicação com 5000 rpm, sendo 4500 de escrita e 500 de leitura.
  • Considere uma aplicação que lida com 1000 rpm de upload de vídeo e imagem de alta definição em 8k raw.

Essas considerações levam a tecnologias que tratem sobre:

  • Caching: redis
  • Messaging/streaming: kafka,rabbitmq
  • Talvez separar o processo de escrita do processo de leitura do banco, talvez usando bancos SQL e NoSQL para cada tarefa.
  • Utilização de serviços de Cloud direcionados para determinadas demandas como BigQuery ou GKE.
  • Desenvolvimento orientado a evento.

A lista de problemas, soluções e considerações é infinita, mas com essa amostra espero ter demonstrado brevemente o que quero dizer.

2

Opa, cara estou na mesma situação que você, porém se pensarmos bem RESTApi ou até mesmo WebSockets são técnicas de consumo de dados. Mas e toda parte teórica de algoritmos, estrutura de dados e profundidade conceitual que um dev backend deve ter?

Após mais de 3 anos trabalhando na área estou começando a sentir esse déficit, e para me aperfeiçoar estou me voltando para a boa e velha leitura acadêmica, matemática e estudos aprofundados.

Outro ponto é: o quanto conhecemos de Cloud, seja AWS, Digital Ocean, Azure, etc...? Foque em entender em detalhes com o que trabalha ou pretende trabalhar, pois aí estará o nosso diferencial. E como backend não podemos nos basear apenas em CRUD e autenticação, pois aquilo que nao permite dois aviões colidirem no ar é o nosso Backend.

1

sim, cloud é o futuro poŕem precisamos começar de algum lugar pois o companheiro ainda nao sente a mesma falta que vc, mas para te ajudar aconselho fazer exercicios vai melhorar o seu raciocio, meu professor de extrutura de dados que me disse e realmente funciona!
vamos pra cima.

1

Meu companheiro a menos que saiba desenvolver completamente uma aplicação até ela rodar em um servidor, o seu trabalho não está terminado.
Primeiro escolha uma para focar, pois quem pula de galho em galho..... eu sei lá, ouvia isso quando era criança, mas, voltando ao assunto, vamos escolher java, que é a minha especialidade.
Segundo faça um CRUD completo em backend com java, depois coloca uma segurança te aconselho o Spring Boot e suas ferramentas. conhecimento em SQL para entender o repository, JPA, hibernate etc.
se vc leu e não entendeu o que escrevi seu caminho é longo mas escolha.

Começa por: java fundamentos, Orientação a objetos etc,
SQL,
Spring boot,
CRUD completo para frontend,
Segurança, deploy etc..

O segredo é focar em uma coisa até ser um junior.

esse link pode te atrapalhar agora, mas daqui a uns 3 meses vc vai olhar e entender tudo isso, https://roadmap.sh/java
compre um curso para te ajudar na udemy e etc.

1

Acho que um ponto importante para adicionar seria padrões de projetos, acho que isso é um bom ponto para um desenvolvedor backend ter conhecimento, para fins de roadmap de estudo você pode utilizar esse site como apoio de estudo roadmap

1

Recomendo estudar alguns conceitos de programação web que você possa utilizar independete de framework e linguagem como tratamento de requisições assíncronas, testes, consumo de outras APIs e etc.
Existe esse roadmap que pontua conhecimentos para backend: https://roadmap.sh/backend