Quais ramos de atuação para desenvolvedores Java?

Java é um ‘faz tudo’?

Sempre gostei de desenvolvimento Web, gosto de desenvolvimento mobile e sou fascinado por desenvolvimento para IoT.
Quando comecei a procurar uma linguagem de programação para aprender sempre via, entre um blog e outro… um artigo e outro, falando que o Java fazia o serviço mas sempre com os pontos fracos de sintaxe e mais linhas de código para fazer a mesma coisa que outras linguagens fazem com menos.

Decidi que tenho que me especializar em algo e que farei (ou ao menos começarei a fazer) isso esse ano. E próximo de onde moro encontrei uma pós em Java que é o que vou fazer. Meu questionamento sobre as áreas de atuação de um desenvolvedor Java é para tentar definir um tema ou ao menos uma trilha de pensamento para o TCC… porque as vezes eu posso ter uma ideia do poder da linguagem e me direcionar para um ramo e ter várias outras trilhas mais interessantes que vou deixar de avaliar.

Puxa vida cara, eu não conseguir entender sua dúvida, será que você poderia tentar explicar sua dúvida de novo?

Minha dúvida é quanto aos ramos de atuação de um desenvolvedor Java.
O que eu gostaria de saber mesmo é em quais tecnologias eu posso utilizar a linguagem Java.
Sei que posso desenvolver pra mobile, web, desktop, wearables…
Mas eu posso utilizar por exemplo em sistemas embarcados? veículos? aplicativos para SmarTV? IA? Robótica?

Atualmente, seu uso para desenvolvimento de aplicativos em sistemas embarcados, veículos, aplicativos para SmarTV, IA e Robótica ainda é restrito. Eu, pessoalmente, conheço somente o Ginga, o middleware da TV digital brasileira. Acredito que existam outros casos, porém eu ainda infelizmente não os conheço.

Se você ficar preso em uma só linguagem, nesse caso o Java, poderá ter o risco de ficar refém do Java, que quando tiver uma oportunidade em outra linguagem perderá oportunidades, ou seja, portas fechadas para você.

Existe uma infinidades de oportunidades na cidade de São Paulo, você precisa pesquisar quais são as empresas que trabalha produzindo sistemas embarcados e para essa outras tecnologias.

Outra coisa muito importante precisa ser mencionado.

Vou me deter ao exemplo de sistemas embarcado.

Para ser um bom desenvolvedor de sistemas embarcados você precisa dos seguintes critérios;

1º Saber de eletrônica e eletrotécnica.
2º Precisa dominar Linguagem Java tendo boas práticas de programação, tendo um código coeso e pouco acoplado
3º Precisa dominar bem Linguagem C.

Você percebe que um profissional dessa área não pode ficar refém de um conhecimento só, ele precisa ter uma serie de conhecimentos.

Outra observação.

Todo desenvolvedor de sistemas embarcados tem que saber duas linguagens C e Java, porque a tecnologia estão em transição no Brasil. Porque digo isso, porque a linguagem oficial para desenvolver em sistemas embarcados é Linguagem C, e aos poucos as grandes empresas então criando segurança de usar o Java.

1 curtida

Opa! Valeu pela explanação meu caro!

Se você ficar preso em uma só linguagem, nesse caso o Java, poderá ter o risco de ficar refém do Java, que quando tiver uma oportunidade em outra linguagem perderá oportunidades, ou seja, portas fechadas para você.

Sobre isso tenho essa ideia na cabeça já. Tanto que estou trabalhando com PHP e estudando JQuery, Javascript e outras coisinhas.

Sobre sistemas embarcados, eu realmente me interesso muito pela área e gosto bastante de eletrônica mas acredito que estudar eletrônica e C seja um projeto futuro já que o tempo, hoje, está muito curto :sweat_smile:

Seguindo o que você falou vou dar uma pesquisada em sites de currículos/empregos para ver o que está sendo pedido pelas empresas para profissionais java.

Você precisa ter noção de como funcionar o FrameWorks JSF e manjar bastante de Spring MVC

Para trabalhar nestes setores tu tens que ter formação em Engenharia.

se fizer um curso de técnico de Eletrotécnica e eletrônica, se fizer vários pequenos protótipos com Linguagem C com Arduino e fizer um curso de Pós-Graduação em sistemas Embarcados dá para chegar Lá.

Ahn? Eu precisaria ser um Engenheiro de Software / da Computação para desenvolver Aplicativos/Sistemas embarcados?
Acredito que mesmo que seja para veículos, para desenvolver dentro das normas e seguindo os padrões e boas práticas, não precisaria ser especificamente um engenheiro.

Se teu objetivo é o baixo nivel use o que tem mercado e as ferramentas adequadas, isso é um nicho específico Java nao é o mais popular neste ambito.
Vai direto na fonte rapaz se é isso conversa com os caras de mecatronica eles vão te dar uma mão.
Nao caia em conversinha generica de que “pode ser ou é relativo” informatica nao é porra nenhuma relativa, por isso a maquina entende apenas 0 ou 1 nao tem meio termo nem conversa!

Fica tranquilo dá uma olhada nisso;

https://www.embarcados.com.br/curso-microcontroladores-pic16f/

http://www.microgenios.com.br/

http://www.cursodemicrocontrolador.com.br/site/

Essa aqui é uma empresa que trabalha com sistemas embarcados

http://equalliza.com.br

procurar se informa diretamente com eles, eles irão te ajuda.

Esse é o vídeo da apresentação da empresa, tire suas dúvidas e seja feliz :slight_smile: