Article image
Olival Neto
Olival Neto08/04/2023 12:02
Compartilhe

Como se Tornar um Back-end Java Rápido? Uma Visão da Jornada Back-end para Iniciantes, com Transição de Carreira e Visão de Mercado

  • #Spring Framework
  • #MySQL
  • #Java

Fala, Dev. A jornada back-end pode ser mais longa do que imagina, caso você não saiba para onde ir, o que fazer, o que estudar e como estudar. Então, resolvi criar este artigo.

Confesso que já consumi mais tempo do que o programado, por isso, compartilho minha experiência e visão para te mostrar o que tem funcionado e o que não tem funcionado para mim.

Antes, de começar, gostaria de me apresentar. Sou Olival, cientista da computação, técnico em redes de computadores, pós-graduado em segurança da informação. Comecei a trabalhar com tecnologia através do meu curso de técnico em redes de computadores, onde comecei a ofertar os primeiros serviços como suporte técnico.

Depois de graduado em computação, tive a oportunidade de trabalhar com gestão de tecnologia, e percebi a necessidade de conhecimentos em segurança da informação, após começo da pandemia de covid-19, onde tudo precisou passar por uma enorme transformação digital.

Neste meio tempo, tive a oportunidade de testar algumas coisas da área de tecnologia e ver o que mais se alinhava com o meu perfil. Não posso dizer que planejei a carreira, mas agora, com outra visão e experiência, já sei bem o que desejo seguir. Neste período, pude realmente ver a necessidade de sistemas, gestão de dados. Vi muita necessidade e pouco pessoal para atuar.

Então, comecei a criar pequenos filtros em Java, usando o que tinha aprendido na graduação, manipulando arquivos... Mas, senti a necessidade de saber construir sistemas, programas com interface gráfica, que os usuários pudessem inserir dados e gerar relatórios de valor para a instituição.

Observação: Vi isso enquanto trabalhava com gestão de tecnologia, e estava me especializando em segurança da informação (curso que ainda está em alta).

Nesse cenário em que estava, pude trabalhar com infraestrutura de redes, suporte técnico e remoto, treinamentos presenciais e digitais, criar relatórios digitais, planilhas, mas estava tão claro que era preciso de habilidades de criação de sistemas em tempo hábil, para poder gerar dados e melhorar as decisões dos gestores.

Essa vontade de criar tais coisas me incomodou tanto, que após finalizar minha especialização comecei a voltar a estudar programação. Revisei os assuntos de Java, participei de cursos de front-end, até encontrar a DIO, e acelerar os meus estudos.

Depois de participar do bootcamp orange tech+, consegui aplicar o JavaScript que estava prolongando por crenças limitantes, que me sabotavam a por meus projetos para frente. Aprendi mais sobre html, css, javascript, dom, typescript e reactjs, de forma acelerada.

Após isso, vi a oportunidade de revisar conteúdos de Java no bootcamp de Back-end, onde conheci a tecnologia Spring Boot, que só via falar nas vagas de trabalho. Sempre via nos requisitos de vagas Java, a tecnologia Spring Boot, Maven, Spring JPA, Spring Data, Spring Web, dependências, injeção de dependência, inversão de controle... e achava que era um universo distante demais.

Mas, posso te contar um segredo? Toda montanha parece ser impossível de ser escalada quando a olhamos do começo. Mas, no meio do aprendizado acelerado, aprendi muito e finalizei o bootcamp.

Após, esse período, percebi a necessidade de aprofundar os conhecimentos, então:

- Participei de mais um curso de Spring Boot, na versão antiga, e tive que quebrar a cabeça para adaptar para a versão mais nova.

- Fiz o mesmo com Reactjs, que percebi que seria essencial para gerar as aplicações que precisava.

A minha visão hoje é de Full Stack, mas vou focar a partir de agora só no Back-end. Então, vamos lá:

Ao escolher Java para estudar, você passará por esses assuntos:

Declaração de variáveis, tipos de dados, estruturas condicionais, estruturas de repetição, arrays, vetores, coleções, métodos, orientação a objetos, interface, classes concretas e abstratas, manipulação de arquivos, estrutura de dados.

Mas, para deixar tudo interessante, você vai sentir a necessidade de armazenar dados num banco de dados, tal como o MySQL. Aí, você aprenderá a:

Criar o banco de dados

inserir as tabelas

criar os relacionamentos

inserir, apagar, atualizar e pesquisar os dados

Depois, você aprenderá a usar o Java para criar uma conexão com o banco de dados MySQL, para poder usar todos os seus recursos e manipular os dados dentro do programa em Java, usando as coleções para armazenar os dados temporariamente, e realizar diversas operações.

Após ter essa visão, você sentirá a necessidade de compartilhar esses dados, de forma online, na web, para que o front-end possa usá-los e apresentar para o usuário. Então, vai surgir a necessidade de criar uma API, para que o front-end acesse e possa usar os dados.

Mas, por que isso? API pode ser criada na linguagem de programação que você quiser, mas como estamos falando de Java, o nome que é mais popular para isso, é o Spring Boot Framework.

Ele é cheio de facilidades e te dá produtividade, acelera o desenvolvimento e te dá múltiplos recursos fáceis de adicionar. Evita a complexidade e dá poder de desenvolvimento.

A API tem um diferencial, ou seja, ela gera os dados a ser compartilhados no formado JSON. Formato esse que é bem difundido na web, e as linguagens de programação web o utilizam muito. Logo, os dados do banco de dados, serão manipulados pelo Java, e disponibilizados pelo Spring Boot no formato JSON.

O front-end poderá fazer requisições web, via o protocolo de internet chamado http, que possui os padrões de envio de dados padronizados, tal como, métodos get, post, update e delete, para requisitar dados a API, que por sua vez, internamente, saberá o que fazer para recuperar, inserir, atualizar e apagar os dados que o front-end quer manipular.

Mas, tudo isso só acontece, porque o Spring Boot oferece a utilização de dependências, e uma delas é a criação de um servidor, que nada mais faz, do que ficar escutando se chega alguma solicitação web. É semelhante a um ouvido curioso que fica a esperando ouvir algo que alguém falará.

Em resumo, o processo de aprendizagem vai do Java para o Banco de Dados, e do banco de Dados, para o Spring Boot.

No meio do caminho, você aprenderá um pouco sobre redes e a comunicação web por baixo dos panos, ou seja, entenderá são feitas as requisições http, para que você saiba como escrever os códigos que trataram as solicitações web (get, post, delete, update).

Por isso, se você participar de um curso que envolta tudo isso, é um bom sinal, pois você terá uma visão ampla de tudo. Mas, só a prática te deixará afiado para utilizar tudo.

Acredito que já deu para perceber que a minha transição de carreira envolve o cenário de programação, assim como, os trabalhos de back-end e front-end. Particularmente, gosto das tecnologias: Java, MySQL, Spring Boot, Html, Css, JavaScript e Reactjs.

Logo, se você deseja ser back-end java, essas tecnologias podem te ajudar. Algo que pode te ajudar também é conhecer o roadmap. Um mapa que mostra o passo a passo de aprendizado de uma tecnologia e as possíveis utilização: https://roadmap.sh/java

Neste link acima, você verá o Mundo Java de uma maneira mais madura. Assim, não menos importante, mas essencial, você também aprenderá sobre testes de software. Uma boa tecnologia para este cenário é o JUnit, para testes unitários de software, já que estamos falando de Java.

Aproveito e deixo a minha playlist de Java para que conheçam os caminhos passados pelo Dev iniciante: https://www.youtube.com/playlist?list=PLf-aKpXauSaZnZ6FKXJekDzi67XrN3__t

Além disso, para te ajudar a ter uma visão ainda melhor, deixo o roadmap back-end, de forma geral: https://roadmap.sh/backend Aqui, você irá perceber que pode trabalhar com outras ferramentas, que a longo prazo, nos estudos podem potencializar seus resultados e chances de adquirir as vagas desejadas.

A maturidade na tecnologia vem com o tempo, prática, e visão do que se pode e não deve usar, e decidir qual a melhor para o cenário em questão, sempre com a mentalidade que estamos aqui para aprender a aprender, de forma melhor, mais rápido e aplicada.

Sendo assim, deixo essa visão. Recomendo que pesquisem um pouco sobre as palavras chaves que aparecem no roadmap, que não conhecem, pois você poderá encontrá-las nas vagas de trabalho, assim como, nos cursos que desejará participar, adquirir, ou conhecer.

O roadmap começa de cima para baixo, logo, o nível mais alto é considerado o iniciante (júnior/trainee), enquanto o nível mais a fundo pode ser considerado um pleno ou sênior.

Espero que gostem da visão. E não se prendam a um único caminho, nem tenham medo de testar. Para ser 100% assertivo e não perder tempo, você precisará de boas pessoas que mostrem os caminhos, assim como, mentores, bons cursos e talvez livros. Não que isso tudo seja obrigatório, mas poupa tempo.

Adquiri bons caminhos e mentores aqui na DIO. Isso, acelerou bastante não só o aprendizado técnico, mas a visão profissional.

Assim, pude olhar melhor o mercado de trabalho e realmente decidir, o que pretendo seguir na carreira como Dev, back-end e front-end.

Quando você olhar para uma vaga, você saberá o perfil da empresa só de ver a lista das habilidades (stacks), que são requeridas e desejadas.

Você perceberá que algumas querem contratar um back-end puro, outras querem um back-end que seja devops também, outras querem um back-end puxando para o full stack, e não a nada de mau nisso.

As oportunidades são infinitas.

Basta saber qual é o melhor cenário para a sua realidade atual, e seguir em frente neste caminho.

Foco na missão.

Boa visão.

Sucesso na jornada.

Compartilhe
Comentários (5)
Edgard Moraes
Edgard Moraes - 08/04/2023 14:29

Excelente artigo.


Estou migrando de carreira como muitos, e Java tem sido um Everest pra mim, mas o topo está cada dia mais próximo.

Raphael Costa
Raphael Costa - 08/04/2023 14:24

Boa trilha , sigo praticamente o mesmo raciocínio !!

Bruno Lima
Bruno Lima - 08/04/2023 12:22

A vida de quem começa na programação nao é facil, principalmente quem esta em transição de carreira, nao so BE mas FE tbm sofre bastante, mas o foco é a principal fonte do sucesso...

Diogo Dantas
Diogo Dantas - 08/04/2023 12:17

Muito bom o seu artigo, gostei bastante!!

Peter Freitas
Peter Freitas - 08/04/2023 12:35

Show amigo!!!