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

Como estudar desenvolvimento sem ficar refém de frameworks?

Trabalho com front end há 3 anos. Utilizei alguns frameworks nesse tempo mas para coisas simples. A empresa que fiquei nesse tempo é uma agência de consultoria, então o trabalho era mais com vanilla js, scss e html. Recentemente apliquei para uma vaga de nível pleno e o teste técnico envolvia a criação de um app em react e express (ou nest). Já mexi em ambos no passado, mas tive muita dificuldade de implementar isso do zero novamente. No fim, segui alguns tutoriais e fiz a coisa funcionar, mas em um nível muito baixo. Obviamente, fui reprovado.

Estou tentando me recolocar no mercado há quase 4 meses e está muito difícil.

Alguma dica de estudar para não depender de framework x ou y? Se a vaga fosse em Vue, algo que trabalhei mais a fundo, provavelmente me sairia melhor. Já estudei bastante algorítmos e estrutura de dados, mas mesmo assim estudar algo novo é sempre um problema (pelo menos no início).

Outro ponto: o curso.dev pode ser um bom aliado pra mim nesse momento? Pra investir em educação eu dou um jeito.

Mais um ponto: esse ano começo a faculdade de engenharia de software, então espero que agregue valor pra mim e para meu currículo.

Abraços a todos :)

Carregando publicação patrocinada...
5

Construa softwares. Com frameworks, sem frameworks. O importante é você criar soluções, se habituar com resolução de problemas. Problemas reais de preferência.

E como você pode fazer isso? Bem, comece por projetos pessoais.

3

No meu ponto de vista, o que ajuda muito:

  • entender estrutura de dados e algoritmo (coisa que você já fez);
  • entender o fluxo do algoritmo e como ele pode atingir o objetivo que um problema pede independentemente da linguagem que você usa;
  • estudar frameworks/stacks novas. muito embora você queira não ficar refém de frameworks (corretíssimo!), estudar frameworks diferentes vai te ensinar o que há em comum neles, o core da coisa. assim quando você se deparar com desafios diferentes vai ter mais noção dos conceitos iniciais e quais escolhas fazer;
  • NÃO estude apenas por tutoriais, invista tempo em aprender a estrutura e aprofunde seu conhecimento;
  • liste os conceitos que você acha importantes e aprenda como aplicá-los em outras linguagens. por exemplo: como fazer roteamento de páginas, renderização condicional e gerenciamento de estados em Vue. Esse vídeo do Mário Souto pode te ajudar.

Boa sorte e sucesso!

3

Olá, boa noite! eu não sei o exato nome que se dá para o estudo de estruturas gerais de framework, mas vou supor que você pode aprender bastante em padrões de projeto(suas raízes estão aqui). Ele é uma estrutura de trabalho e todos os frameworks segue uma mesma linha, um mesmo padrão em comum. Todos tem como pontos em comum:

  • Modularidade
  • Abstração
  • Extensabilidade
  • Padronização
  • Documentação
  • Segurança
  • Inversão de Controle

E não para por ai, não é apenas na programação que vão existir esses tipos estrutura. Em engenharia, por exemplo, existem frameworks para construção de algo, em negócios você vai ter um framework para um processo de vendas. Creio que quanto mais você ter uma visão de framework como organização e facilidade de uso, melhor vai ser para compreender a nível de código.

OBS, um conselho fora a parte: Código são instruções para máquina trabalhar com informações, mas são humanos que são os responsáveis pela construção e organização desses códigos. Todas as funções e aplicações realizadas por máquinas são abstrações de ações que a gente já executava no mundo real ou ainda executa, com diferença de tempo, espaço e velocidade. Frameworks podem ser comparados a formas de massinha modelar, em um nível infantil, é como se a gente já tivesse material e com toda certeza poderíamos fazer a mão, mas é mais rápido e fácil fazer com a forma.

2

Olá, estou em uma posição parecida com a tua. Deixa eu dar o contexto primeiro e depois a resposta:

Contexto

Trabalhei muitos anos como SysAdmin, e tenho um bom conhecimento de infraestrutura, nesse tempo em que estive nesta posição, por alguns motivos que não vem ao caso fiz uma graduação em Direito, passei na OAB antes de concluir o curso, e comecei a advogar.

Advoguei por uns 7 anos e neste meio tempo comecei a estudar programação por hobby, simplesmente para resolver alguns problemas do dia-a-dia, entretanto, cada vez que o tempo passava mais desgosto eu criava pela Advocacia, e mais diversão eu obtia na programação.

Então na metade do ano passado optei por fazer a migração de volta para a TI, mas desta vez como programador, pois moro em uma cidade interiorana e não pretendo sair daqui, então minha intenção é o remoto.

Passado alguns meses encontrei uma colocação como desenvolvedor da qual estou trabalhando desde o inicio do ano.

Resposta

Desde que me decidi por esta migração, fiz uma lista clara com onde eu estava e onde eu queria chegar, e quais os requisitos para eu ir de uma ponta a outra.

Por exemplo eu me vejo/almejo daqui a 20 anos como senior em uma empresa do exterior (provavelmente) com uma remuneração de uns 30 mil reais (convertendo) ao mínimo. Para isto eu fiz uma lista de coisas que alguém nesta colocação deveria saber e comecei ir atrás. Dividi meu Roadmap (para usar uma palavra da moda), em Hard Skils e Soft Skils, e foquei no estudo, trabalho manhã e tarde (onde pra mim esta sendo de grande aprendizado), e a noite continuo estudando. Paralelamente com isto ainda estou começando uma nova graduação em Análise e Desenvolvimento de Sistemas.

Hard Skils

Como na época já sabia JavaScript/HTML/CSS, parti para um dos frameworks mais usados no mercado, o React e NestJS, juntamente com TypeScript.

Paralelamente com isso ainda estou estudando Astro, e pretendo ir para o NextJS depois e ainda SQL.

Tudo isso eu "treino" fazendo projetos pessoais que provavelmente servirão como um portfólio e como fonte de consulta para eu revisitar os estudos.
Por exemplo, Astro estou aplicando no meu site pessoal, React + Nest em um sistema de gestão para resolver um problema de um empreendimento da minha família. Esses projetos que eu me dedico a fins de estudo sempre procuro utilizar uma biblioteca nova, como em um sistema utilizei Prisma e Styled Components em outro TypeORM com TailswindCSS.

Soft Skils

Aqui coloquei coisas que não necessariamente são qualificadas como tal, mas considerei tudo que permeia a área do núcleo do desenvolvimento do qual estou buscando.

Aqui estou melhorando meu Inglês, objetivo é estar com a fluência (nível C1) até metade do ano, e um outro idioma, que escolhi o Francês, este quero ter uma compreensão básica até o fim do ano (A2), não tenho muitas pretensões.

Estão nesta lista também coisas como Design Patterns, SOLID, Arquitetura de Software, entre outros.

Complementação

Tenho a intenção de conseguir certificações de tudo aquilo que já sei por causa da minha trajetória, como Docker, Kubernetes, Linux e etc. Pois é um conhecimento que já tenho e não seria muito oneroso em tempo para mim conseguir elas.

Conclusão

Desculpem o tamanho do texto, mas acho que ainda não perdi o hábito do Advogado. Mas para resumir, já estive com esta mesma dúvida que você, e entendi que é importante (principalmente para mim que estou começando tarde, tenho 35 anos) estudar as principais técnologias da área afim. Entende-las a fundo pois isso vai dando uma bagagem para que se torne cada vez mais simples aprender e trabalhar com coisas derivadas delas. Faz você ganhar noção de como as coisas funcionam e como foram implementadas.

Sobre a parte do Roadmap com Soft e Hard Skills é uma questão de entender para quê estudar esses frameworks todos, que é ter uma boa posição de trabalho.

E antes que alguém diga que sou partidário do lema "Trabalhe enquanto os outros dormem", já adianto que não, tudo isso está amarrado em uma rigorosa agenda onde reservo espaço para horas de sono suficientes para me sentir descansado, tempo para minha família (esposa e filho) e no fim de semana um pouquinho para um hobby, mas sim esta minha rotina se estende ao fim de semana. Mas tudo isso porque preciso me recolocar rápido no mercado pois minha família depende disso e já não sou mais criança. Então é um sacrifício momentâneo de tempo, não precisa ser o seu caso.

Para que isso funcione só precisa de disciplina.

Por fim, espero ter sido útil, acho que acabei transformando uma questão simples de que ferramenta utilizar em uma complexa questão filosófica de como organizar uma rotina de trabalho, mas escrevi pois parecia fazer sentido no momento.

1

Infelizmente não tem como fugir dos framework mano. É muito bom saber Vanila JS. Mas em todo lugar vão pedir experiência em frameworks. Minha sugestão é focar em uma Stack inicialmente. Ex: MERN ou PERN, etc.

Depois você pode ir se aventurando em outras Stacks e linguagens de programação

-2
1

Pelo que você falou, sua base em JavaScript puro (vanilla JS) é boa, mas a dificuldade está na migração entre frameworks diferentes. Para não ficar refém de frameworks, você pode focar nos seguintes pontos:

1. Aprofunde-se em JavaScript e TypeScript

  • Domine funções de alta ordem, closures, async/await, promessas, modules, this, prototypes e event loop.
  • TypeScript vai te ajudar muito na adaptação a frameworks modernos.

2. Aprenda bem os princípios de arquitetura

  • Componentização e Design Patterns → Ajuda a estruturar melhor aplicações em qualquer framework.
  • SOLID e Clean Code → Facilita a adaptação a diferentes tecnologias.
  • Banco de Dados e APIs → Entender como conectar frontend e backend sem depender de um framework específico.

3. Pratique a criação de aplicações sem framework

  • Recrie um mini-framework de componentes inspirado no React (sem React).
  • Monte um servidor REST apenas com Node.js puro e veja como frameworks como Express facilitam esse processo.
  • Faça pequenos projetos sem dependências externas.

4. Escolha um framework para estudar a fundo

  • Você já teve contato com Vue, então talvez valha a pena focar nele primeiro.
  • Aprenda como o framework funciona internamente para entender os conceitos que podem ser aplicados em outros frameworks.

Sobre o curso.dev

Sim, ele pode ser um bom investimento, principalmente pelos cursos focados em arquitetura e fundamentos do JavaScript. Se puder investir, vale a pena.


Sobre a faculdade de Engenharia de Software

Vai te ajudar bastante na arquitetura e organização do código, além de te dar um diferencial no currículo. Mas, no curto prazo, seu foco principal precisa ser consolidar o conhecimento prático para conseguir uma vaga.

Se quiser, posso te ajudar a criar um plano de estudos mais detalhado baseado no seu tempo disponível. O que acha?

-2