Em 2023, vale se profissionalizar em Java?

Estou no primeiro ano do Novo Ensino Médio numa escola técnica integral, que oferece o curso de "Informática voltada para Internet".

-> No início do ano, comecei a ter uma disciplina "Linguagem Técnica de Programação", e o professor recomendou o curso de Lógica de Programação em Portugol do Gustavo Guanabara como material complementar da matéria do bimestre. -> Fiz o curso em umas duas semanas e fiquei bem animado com a perspectiva de estudar mais sobre programação, e foi nessa que me consultei com alguns professores da escola e perguntei sobre quais linguagens seria interessante estudar e a maioria me recomendou duas: Java e Python. Me disseram também que Java seria a mais difícil de longe, mas que através dela eu teria facilidade de aprender qualquer outra linguagem. -> Já havia um grupo de estudantes do 1º ano que estudava Python e eu quis me destacar, então acabei optando por Java mesmo, e comprei um curso na Udemy de Java focado em POO + 4 projetos. O curso tem uma grade curricular que, até onde consegui pesquisar, é bem razoável (o curso aborda as bases da POO, Programação funcional, acesso a Banco de Dados com JDBC, SQL, MySQL, JavaFX, web-services com Spring Boot, JPA e Hibernate e NoSQL com MongoDB), tem 55 horas de duração e atualmente estou na metade do curso. Visão geral do curso aqui -> Conforme fui estudando, começou a surgir algumas dúvidas na minha cabeça, e a primeira delas é: vale a pena buscar se tornar desenvolvedor numa linguagem como Java em 2023? Vou conseguir encontrar profissão sem escassez de vaga? Será que ao fim do curso já vou poder me considerar desenvolvedor júnior Java? O que é fundamental que um desenvolvedor Java conheça? O que talvez seria importante de estudar depois de terminar o curso? Será que vale a pena também aprender a parte de front-end com HTML, CSS e JavaScript? A área de programação possui opções de contratação de Jovens Aprendizes? -> Infelizmente eu não possuo ninguém próximo a mim que seja da área, então todas essas dúvidas ficam na minha cabeça e me preocupam. Até agora, me sinto muito motivado a continuar programando e sinto uma grande identificação com a área, mas sinto medo de no futuro todos os programadores serem substituídos por IA e eu ficar sem emprego também. -> É a primeira vez que eu posto uma pergunta aqui no TabNews, então não sei se estou fazendo certo, mas agradeço a todo mundo que tirar um tempinho pra me responder. Desde já, muito obrigado!

Vale a pena buscar se tornar desenvolvedor numa linguagem como Java em 2023?

Ninguém sabe. Se tem quem diz uma coisa e tem quem diz o oposto, então ninguém sabe. Especialmente ninguém sabe se vale a pena para você. Para cada pessoa será diferente.

Vou conseguir encontrar profissão sem escassez de vaga?

Sim e não. Não há escassez de vagas boas na profissão. Há escassez de vagas ruins. Ou quase, porque nem podemos dizer que faltam vagas ruins, tem muito, é o que mais tem, o problema é a relação de oferta e demanda. Tem muita gente tentando as vagas ruins, então proporcionalmente acaba tendo uma certa escassez.

Então porque as pessoas querem essas vagas ruins? É o que elas conseguem. No começo da carreira todo mundo só vai conseguir isso, não tem jeito. Acontece com todo mundo (pode ter raras exceções). Algumas pessoas mesmo depois de anos na área só conseguem essas vagas. Ou elas decidiram ir por esse caminho ou elas possuem limitações, o que é uma pena, mas a vida é assim. Em alguns casos a pessoa escolheu a profissão errada para ela, em outras a atitude dela é errada, e pode ter outros motivos.

Falta gente para preencher as vagas boas. Então se prepare para essas vagas, não se deixe enganar por todas as armadilhas no meio do caminho.

Será que ao fim do curso já vou poder me considerar desenvolvedor júnior Java?

Não, em hipótese alguma poderá. Júnior é quem tem experiência, pequena, falha, mas tem, quem fez um curso não é júnior. Procure mais, porque falo muito sobre isso.

O que é fundamental que um desenvolvedor Java conheça?

O que todos os programadores precisam conhecer: matemática, comunicação e expressão, ciências, pensamento lógico apurado e tudo de computação. A linguagem é o menos importante, a não ser para quem quer as vagas ruins.

O que talvez seria importante de estudar depois de terminar o curso?

Não conheço o curso para falar, mas talvez seja consertar o que deu errado no curso. Se não for isso, o curso deveria ter dado um parâmetro do que estudar. Estudo só faz sentido quando vai ficando natural o que precisa estudar. Se não está assim, a pessoa só está decorando receitas de bolo. Se um curso só ensina a pessoa decorar essas receitas o curso não é bom. Curso bom é difícil, exige de você mais que pode entregar agora. Curso que dá alegria está enganando a pessoa.

Será que vale a pena também aprender a parte de front-end com HTML, CSS e JavaScript?

Novamente, depende da pessoa. Eu acho que todos deveriam aprender um mínimo, mesmo que nunca mais vá usar.

A área de programação possui opções de contratação de Jovens Aprendizes?

Até onde eu sei tem, mas não sei se é fácil achar.

sinto medo de no futuro todos os programadores serem substituídos por IA e eu ficar sem emprego também

Se isso acontecer é porque não servia para a área ou vai ter problemas em outra área. Antes de acabar o emprego de programadores vai acabar de outras profissões.

Dicas: a maioria das pessoas hoje estão com dificuldades de achar emprego, mas sustento o que eu já dsse. A maioria das pessoas ignoram as dicas que eu e outras pessoas experientes dão. Ignoram por escolha ou por limitação, o resultado é o mesmo. ALgumas pessoas sequer entendem esse texto, aí não tem como ser programdor.

Desejo sorte e bom aproveitamento para você. Quero que todos se virem bem na área e colha bons resultados, por isso alerto que não é fácil, ao menos não tanto quanto alguns dizem que é. Só é fácil para quem faz errado. Pra mim sempre foi difícil (apesar que eu tenho limitações).

Também já respondi em https://www.tabnews.com.br/gabrielrodriguesdev/vale-apena-aprender-java-em-2023-alguem-que-ainda-nao-teve-a-primeira-experiencia-profissional-e-se-apaixonou-pelo-java.

Faz sentido para você?

Espero ter ajudado.


Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).

Olá, obrigado pelo seu comentário! Ainda não faz totalmente sentido, mas com certeza me esclareceu muitas coisas. Percebo que você já tem muita experiência na área, então gostaria de pedir um conselho e alguns esclarecimentos. Na sua opinião, o domínio de múltiplas linguagens é o que faz um programador? O que faz de um programador realmente um programador? O que de matemática um programador deve aprender pra poder realizar sua profissão com eficiência? O que você percebe atualmente de mais importante no mercado de programação? Novamente, obrigado pela atenção de responder uma pessoa quase totalmente leiga sobre o assunto. Ajudou sim, e muito.
Tudo é sobre fundamentos. Várias linguagens ajuda, tudo no seu devido tempo. Um marceneiro trabgalha melhor quando sabe usar várias ferramentas, mesmo que em geral ele use só uma ou outra de verdade. Precisa entender a matemática, não as fórmulas. E isso anda ficando ruim para muita gente. Eu já respondi algumas dessas coisas com mais detalhes em vários lugares, mas percebo que preciso consolidar para não ter que responder individualmente para cada um. E farei isso "em breve".
Obrigado pela resposta! Sobre essa estrutura de dados e os estudos que vc sugeriu, será que consigo fazer eles pela Alura? Você recomenda algum curso específico?
Olha, isso eu realmente não vou saber te dizer! Esses conteúdos eu aprendi na faculdade, então não há algo que eu possa te passar sobre isso em específico. Porém tem um livro que eu sempre recomendo pq me ajudou a entender algumas coisas. Ele da uma introdução básica a algumas estruturas, algoritmos de ordenação que tbm é algo interessante, e tem bastante figura explicativa. Pra iniciane é maravilhoso https://www.amazon.com.br/Entendendo-Algoritmos-Ilustrado-Programadores-Curiosos/dp/8575225634/ref=sr_1_23?__mk_pt_BR=%C3%85M%C3%85%C5%BD%C3%95%C3%91&keywords=estrutura+de+dados&sr=8-23
Dei uma olhada, parece interessante. Não entendi totalmente o conteúdo do livro pelo resumo, mas realmente parece algo que é importante ter como base independente da linguagem. Eu particularmente não tenho certeza se vou fazer faculdade (dizem que a faculdade na área de TI e Engenharia de Software te dá só o básico, não é suficiente para as necessidades do mercado), mas ainda tenho muitas dúvidas sobre isso. O que você diria? Qual faculdade você fez? Você diria que valeu a pena, te garantiu os conhecimentos necessários pra trabalhar como dev?

Eu to cursando Sistemas de Informação na UFSC. Olha, a faculdade realmente não vai te garantir nada, você que deve correr atrás do que tu quer. Porém tem bastante coisa alí que provavelmente eu não teria ido atrás, tipo paralelismo, threads, como funciona um sistema operacional, que no fim foram coisas que eu achei interessante. Sem dúvidas as melhores partes da faculdade é a galera que tu conhece, o famoso network, e a possibilidade estágio. Eu ainda tenho pouco tempo na área, entrei nesse atual momento que ta difícil arranjar trampo como jr, e o que realmente me deu a experiência necessária foi um estágio que eu consegui dentro da própria UFSC. Pra mim valeu totalmente a pena

Sobre a estrutura de dados, dá uma olhada nos cursos da Loiane. Ela é simplesmente espetacular e uma dev muito consolidada em Java. Tem cursos de Java básico e intermediário, que apesar do que você já está estudando, acho que vale apena fazer porque pode pegar alguma coisa que não pegou na faculdade. Tem curso de estrutura de dados e angular também. É muito bom e ainda é gratuito! Samuca do Java no youtube é uma cara apaixonado por Java. Pode ser também um bom canal pra tu olhar algumas coisas específicas sobre a linguagem. Os vídeos dele são bem compridos e subjetivos, kkkk, mas se você tiver a fim de garimpar, consegue pegar algumas coisas legais que ele passa. Eu comecei a estudar programação pelo Java, antes de qualquer introdução, exceto por um curso rápido de lógica de programação. Sou bem iniciante ainda, bem iniciante mesmo kkkk, mas já me apaixonei pela linguagem. Já pesquisei muitos prós, contras e comparação com outras linguagens e só confirmo que é nela que vou me especializar. Pretendo aprender outras, para servir de skills, digamos assim. Saber ler os códigos e em alguns momentos fazer alguma coisa. Acho que é tipo de coisa que ajuda a se destacar dentro de empresas. Mas só acho. Venho de outro ramo totalmente diferente e ainda estou longe de conseguir atuar na programação. Muito a estudar ainda.

Já teve um tópico recente sobre isso:

Dá uma lida lá, tem muitos comentários bem legais, com certeza vai te ajudar. Mas pra resumir, vale sim.

Olá, obrigado pela sugestão. Entrei na postagem e muitos dos comentários estão me fazendo refletir bastante sobre o que é se considerar programador de uma maneira abstrata, e que as habilidades requeridas para ser programador vão um tanto além (talvez muito além) da linguagem em que se programa.

Olá, trabalho com Java há anos.

Vale a pena buscar se tornar desenvolvedor numa linguagem como Java em 2023?

Sim. É uma plataforma sólida, nos últimos 20 anos é uma das linguagens mais utilizadas. Sendo que hoje o ecosistema da plataforma está evoluindo de forma impressionante.

Vou conseguir encontrar profissão sem escassez de vaga?

Existem muitas vagas para trabalhar com Java, principalmente para web. Mas tenha em mente o óbvio: as melhores oportunidades exigem um profissional preparado e experiente.

Será que ao fim do curso já vou poder me considerar desenvolvedor júnior Java?

Depende do seu aproveitamento durante o curso. Uma formação técnica depende mais do aluno do que dos professores. De tempo ao tempo, pratique construindo softwares com escopo pequeno, mas implementando de ponta-a-ponta.

O que é fundamental que um desenvolvedor Java conheça?

Garanta que vc tenha um excelente entendimento sobre as APIs básicas da linguagem referente a listas, mapas, arquivos e threads (concorrência e paralelismo).

O que talvez seria importante de estudar depois de terminar o curso?

Não estude algo específico, idealize e implemente um projeto (de escopo reduzido) do início ao fim. Esse projeto deve ser construído utilizando as tecnologias mais comuns que aparecem nas descrições das vagas que vc almeja se candidatar. Publique o projeto no github, pense nele como seu "cartão de visita".

Será que vale a pena também aprender a parte de front-end com HTML, CSS e JavaScript?

Se vc deseja trabalhar com web, sim. É obrigatório se sentir seguro ao trabalhar com essas tecnologias.

A área de programação possui opções de contratação de Jovens Aprendizes?

Na minha experiência isso é raro. Busque por posições de trainee e estagiário.

Uma sugestão no lado pessoal: vc está correndo uma maratona e não os 100 metros rasos. Durante esse processo de formação é mais importante cadência e resiliência do que a velocidade.

Olá, obrigado pelo comentário, é muito bom ouvir de pessoas que já atuam na área. Entendi bem a sua sugestão de desenvolver softwares de escopo pequeno, mas surgiram algumas dúvidas relacionadas a melhor maneira de fazer isso. O que é interessante de se projetar? É melhor que se desenvolva um software (mesmo que de pequeno escopo) em grupo ou sozinho? Os projetos que vão ser desenvolvidos no curso já seguem um cronograma, mas como pensar em um projeto inovador para programar, mesmo que seja só para complementar meu portfólio? O que você considera mais importante para um Desenvolvedor Java dominar?
Não veja o que escrevo aqui como verdade absoluta ou coisa do tipo, infelizmente não existe uma fórmula pra isso ;) > O que é interessante de se projetar? Faça um paralelo com as vagas que pretende se candidatar. Por exemplo, se a vaga é para desenvolvimento de web backend, foque em implementar uma web app simple: onde o usuário pode se cadastrar para depois fazer login e poder alterar os seus próprio dados, como seu nome e telefone. Nesse processo vc vai praticar vários conceitos que precisa dominar para trabalhar como backend. Veja bem, não estou falando de simplesmente copiar e colocar de um tutorial, mas escrever cada linha e entender completamente qual o propósito da mesma. Sem pressa, leve o seu tempo, faça bem feito algo que vc possa mostrar pra outro profissional e explicar cada componente com segurança. > É melhor que se desenvolva um software (mesmo que de pequeno escopo) em grupo ou sozinho? Trabalhar em equipe é uma habilidade essencial. Mas acredito que nesse primeiro momento (vc está aprendendo as tecnologias) não é obrigatório fazer parte de uma equipe. Digo isso para que seja possível caminhar no seu tempo. > Como pensar em um projeto inovador para programar, mesmo que seja só para complementar meu portfólio? Não precisa ser inovador. Lembra que vc não está criando um produto, vc está exercitando novas tecnologias. O importante é viver a experiência de utilizar tais ferramentas. E conforme avançar vc pode adicionar features mais complexas que te permitam exercitar mais ferramentas. Por exemplo, depois de fazer um cadastro básico (CRUD) e login (autorização e autenticação), vc pode inventar pequenas features que vão te ajudar a aprender mais técnicas e ferramentas: preciso que a cada 10 minuntos seja enviado um email "olá mundo" para todos os usuário do meu sistema; preciso que os meus usuários possam trocar mensagens em tempo real; etc. > O que você considera mais importante para um Desenvolvedor Java dominar? Isso varia muito dependendo do projeto. Minha sugestão é focar no básico nesse primeiro momento: domínio da linguagem (generics é essencial) e APIs básicas: listas, mapas, arquivos e threads.

Se vale? Eu posso escolher se vou aceitar trabalho ou não. Outro dia uma amigo me disse que ia passar o meu contato para uma empresa que estava precisando. Eu disse pra não passar. O que me falta é tempo. Java tem mercado e vai ter MUITO. Se Pascal e Cobol tinha para manutenção, imagina quantos milhares de projetos estão em JAVA e não vão trocar pra outra linguagem tão fácil.

Olá, obrigado pelo comentário, me surpreendeu um pouco. Com a febre de cursos voltados ao Desenvolvimento Web atualmente, eu tive receio de estar entrando num mercado um tanto obsoleto, mas ao que parece estava totalmente enganado. Vou seguir com minha decisão de estudar Java e, quem sabe um dia, dominar a linguagem. Meu maior anseio atualmente está relacionado com a busca por uma vaga, mas já deu pra perceber que não é um caminho rápido e que vou precisar de muito estudo e preparação antes de conseguir um emprego. Ainda assim, estou animado com essa perspectiva. Uma dúvida: o que você considera que um Desenvolvedor Java deva dominar?

Java talvez, o único impeditivo é o seu gosto pela linguagem. Java tem mercado e continuará assim por um bom tempo. html/css/js é essencial se você pretende trabalhar com web. pelo menos o básico.

Olá, obrigado pelo comentário. Sim, minha visão sobre Java mudou bastante desde que fiz a publicação, recebi o esclarecimento de muitas pessoas e atualmente percebo o quanto Java possui um amplo mercado, não me preocupo mais com isso. Sobre estudar para Desenvolvimento Web, acho que vou me dedicar para isso em algum momento, talvez não com o objetivo de me profissionalizar mas conhecimento nunca é demais, afinal.

Trabalho com java vai fazer 5 anos, nesse tempo não existe um dia que nao aprendi alguma coisa nova, pela minha experiência praticamente uma gama de empresas grandes usam e na minha concepção dificilmente vão largar o Java. E mano o curso em vídeo do Gustavo Guanabara foi uns dos melhores cursos que fiz na vida, o cara é foda! e como em outros comentários, realmente saber java me deu muita facilidade em aprender outras linguagens. MAS é importante focar muito em conceitos básicos de lógica de programação, isso faz total diferença.

Olá, obrigado pelo seu comentário! Como foi esse trajeto de decidir estudar Java até conseguir realmente trabalhar com a linguagem? Atualmente estou muito motivado em continuar estudando Java, é realmente uma linguagem fascinante. Entendo a importância dos Sistemas Legados e de que isso não vai mudar tão fácilmente, o que me aliviou um pouco, estava com uma visão torta sobre o mercado da linguagem. O Curso de Portugol também me ajudou muito e eu pretendo futuramente reforçar minhas bases em Lógica de Programação com certeza, obrigado pela dica. Como você trabalha na área, queria tirar uma dúvida: o que você considera que um Desenvolvedor Java deva dominar?

Cara eu tembém tive as mesmas dúvidas inclusive postei algo relacionado aqui mas não obtive respostas e tive que procurar por min mesmo e a verdade é não existe resposta certa se vale a pena ou não pois isso varia muito de região para região e depende também se você vai se sentir confortavel trabalhando com a tecnologia que escolheu pois isso também é muito importante pra manter o interesse na área, mas uma coisa é certa existem linguagens que facilitam sua entrada no mercado de trabalho hoje em dia acredito que javaScript seja a que te proporcionará mais oportunidades mas isso é algo que também deve ser pesquisado ai na sua região porquê vaga homeoffice para primeiro emprego ou até mesmo Jr é difícil de conseguir e a competitividade é bem alta mas não é impossível.

Agora quanto ao medo de ser substituido por IA cara não vale a pena sofrer por antecipação por enquanto como o akita disse são meros interpretadores de texto e é algo extremamente custoso uma IA processar algo muito coplexo estão esqueça isso e foque no que realmente gosta crie projetos e mostre o que sabe fazer para chamar a atenção dos recrutadores.

Olá, obrigado pelo seu comentário. É verdade, não adianta sofrer por antecipação, é inútil. Acho que toda essa febre de Inteligência Artificial desse ano mexeu com a cabeça de todo mundo, e eu incluso. Na sua opinião, quanto tempo de estudo é necessário para alguém conseguir uma vaga trabalhando com JavaScript?
Eu acho que não levaria muito tempo, acredito que devido ao javascript ser muito versártil e ter frameworks para frontend, backend e mobile ele se aplica em muitas situações então acredito que se você se dedicar bastante e fizer um portifólio bacana com projetos de cursos mesmo ou se for um projeto pessoal que você venha a colocar no ar melhor ainda, acredito que não terá dificuldades em encontrar vagas por volta de 1 ano ou até menos, mas investe bastante em um portifólio porquê eu tive dificuldades de arrumar emprego por não ter um portifólio e focar muito no currículo fiquei 3 anos procurando emprego praticamente a facul toda e então 3 meses depois que fiz um portifólio consegui um emprego kkk, espero ter ajudado e boa sorte 😃