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

Iniciante ou Apaixonado por TI? O Guia Definitivo que Você Estava Esperando! 🚀

Fala galera, tudo certo com vocês?

Últimamente em diversos foruns, de tecnologia ou não, tenho percebido um grande número de estudantes com interesse na área.

Ainda que estejam interessados, percebo que há uma grande confusão quando se trata do que é trabalhar com TI, quais áreas escolher, dia a dia, dificuldades, etc.

Elaborei um pequeno resumo, para ajudar a esclarecer um pouco sobre o que é realmente trabalhar com TI e dar uma visão mais clara para aqueles que estão começando ou pensando em seguir essa carreira.


Áreas de atuação:

Aqui vou citar algumas áreas de atuação, certamente existem e existirão outras no futuro, mas acredito que esse breve resumo pode te ajudar a se direcionar.

-Desenvolvimento de Software: Criação de programas e aplicativos, jogos, sistemas e sites. Envolve aprender a solucionar problemas utilizando linguagens de programação (como Java, Python, ou JavaScript) .

-DevOps: Combina desenvolvimento e operações, focando na automação e otimização do processo de desenvolvimento e deploy de software. Envolve ferramentas como Docker e CI/CD.

-Ciência de Dados: Trabalha com análise e interpretação de grandes volumes de dados. Envolve linguagens como Python e ferramentas de estatística e machine learning.

-Cibersegurança: Protege sistemas e dados contra ataques. Você aprenderá sobre redes, criptografia e como detectar e prevenir invasões.

-Suporte Técnico e Help Desk: Suporte a usuários e manutenção de hardware e software em empresas. É ideal para quem gosta de resolver problemas técnicos e lidar diretamente com as necessidades dos usuários.

-Qualidade e Testes de Software: Garante que os sistemas atendam aos requisitos de qualidade. Responsável pela criação de testes automatizados, testes manuais e a identificação de bugs antes do lançamento do produto. Ferramentas como Selenium e Cypress são bem comuns na área.


Como ser um Desenvolvedor?

Dentre as áreas citadas, a que mais possuo conhecimento e que posso direcionar melhor vocês que estão iniciando é a parte de desenvolvimento de sistemas.

Dito isso, abaixo vou citar algumas das graduações na área e quais as áreas de atuaçao de cada uma delas.

Ciência da Computação:
Aborda fundamentos da computação, como algoritmos, estrutura de dados e teoria da computação. É um intermediário entre engenharia de software e engenharia da computação.
Estudará tanto alto como baixo nível, o que pode facilitar muito o entendimento de como as operações matemáticas funcionam por trás dos panos.
Normalmente dura entre 4 e 5 anos.

Engenharia de Software:
Foco prático em como construir software de alta qualidade, abordando metodologias de projeto e gerenciamento de sistemas.
Normalmente dura 4 anos, mas já vi tecnólogo de 2 anos e meio.

Sistemas de Informação:
Foco em como a tecnologia é usada para resolver problemas de negócios, com um equilíbrio entre gestão e programação.

Análise e Desenvolvimento de Sistemas:
Curso focado em desenvolvimento de software, menos teórico e mais prático.
Apesar disso você também verá algumas matérias relacionadas a gestão.
Tecnólogo 2 anos e meio.

Engenharia da Computação:
Esse curso combina a parte de software com a parte de hardware. Além de programar, você aprenderá sobre eletrônica, circuitos, redes e sistemas embarcados. É ideal para quem se interessa tanto por desenvolvimento quanto por entender como os computadores funcionam por dentro, desde o nível físico até o software. Muito interessante para quem deseja trabalhar com software embarcado.
Engenheiro da computação pode assinar laudos técnicos que envolvem áreas como sistemas de automação, projetos de sistemas computacionais integrados a equipamentos eletrônicos, além de laudos relacionados a instalações de redes e infraestrutura tecnológica.


Após 10 anos de carreira, vou citar alguns treinamentos, cursos, canais e vídeos que me ajudaram nessa caminhada como desenvolvedor, alguns deles acompanho até hoje.

A classificação vai do mais indicado ao menos, apesar de todos serem muito bons e hiper recomendados.

1 - CS50
https://cs50xemportugues.github.io/2024/semanas/0.html
https://pll.harvard.edu/course/cs50-introduction-computer-science

Curso introdutório à ciência da computação disponibilizado pela universidade Harvard, na minha opinião O MELHOR curso para um iniciante, além disso, também é possível emitir certificado e vamos lá, um certificado emitido pela talvez maior universidade do planeta faria bastante diferença no seu currículo.

2 - Loiane Groner
https://www.youtube.com/@loianegroner
https://loiane.training/

Loiane Groner é desenvolvedora há muitos anos e se destaca por sua contribuição ativa à comunidade de tecnologia. Além de desenvolver e publicar conteúdos, ela oferece treinamentos gratuitos voltados para iniciantes na programação de forma acessível. Sua didática é reconhecida como uma de suas principais qualidades, facilitando o aprendizado de temas complexos para quem está começando na área.

3 - Guanabara
https://www.cursoemvideo.com/sobre/

Não vejo o Gustavo como um dev ou alguém que realmente vai fazer você alavancar a carreira, mas para aquele dev que tem dificuldade em aprender, iniciar, saber pra onde ir, tem uma didática bem interessante, boa para quem está no comecinho e não sabe muita coisa.

Depois dessas explicações e cursos introdutórios, você já deve ter escolhido um caminho, já deve saber se realmente quer estar na área ou não e agora é hora de dar um passo a frente,
próximo!

4 - Roadmap.sh
https://roadmap.sh/
É um excelente ponto de partida para saber quais tópicos estudar, pesquisar e até mesmo para criar projetos práticos, ajudando a estruturar melhor o aprendizado e a alcançar seus objetivos na carreira de TI.

5 - https://www.theodinproject.com/
O TOProject é uma plataforma gratuita de aprendizado focada em desenvolvimento web. Ele oferece um currículo completo que abrange desde os fundamentos de HTML, CSS e JavaScript até frameworks como React e Ruby on Rails. Possui uma abordagem prática, e step by step, o que facilita muito no aprendizado de um desenvolvedor novato. O lado ruim é que a plataforma é toda em inglês.

6 - https://leetcode.com/ https://www.hackerrank.com/
Na maioria das vezes os processos seletivos são bem extensos, principalmente quando você está aplicando para vagas no exterior.
Esses processos normalmente envolvem testes de desenvolvimento e muitos deles podem envolver live coding, para isso, recomendo fortemente as duas plataformas acima, são extremamente usadas em entrevistas técnicas.
Recomendo fortemente não usar CHATGPT ao resolver esses problemas, ele não estará disponível nas entrevistas.


Muita coisa né? Vamo lá ta quase acabando xD

Pra finalizar, peguei as perguntas que mais tenho visto de iniciantes em programação e vou fazer uma espécie de FAQ aqui.

1- Precisa realmente de faculdade para entrar na área?
Embora muitos cursos ofereçam uma rápida introdução ao mercado de trabalho, o ensino superior ainda desempenha um papel importante em muitas áreas da tecnologia. Este é um mercado muito competitivo, onde centenas de candidatos se inscrevem para uma única vaga. Rer uma formação acadêmica pode ser um diferencial significativo.
Outro ponto importante, o ambiente universitário oferece oportunidades valiosas de networking, o que é crucial, já que muitas vagas são preenchidas por indicação interna antes mesmo de chegarem aos processos seletivos abertos.

2- Consigo ser desenvolvedor sem ser muito bom em matemática?
Sim, você pode ser desenvolvedor sem ser um exceleeeente em matemática. A maior parte do trabalho envolve entender problemas, criar soluções criativas e escrever código que atenda às necessidades do projeto. Ter uma boa base de lógica é ótimo, e um conhecimento básico de matemática pode ajudar em alguns contextos, como algoritmos e análise de dados. No entanto, a maioria das tarefas diárias de um desenvolvedor não exige cálculos complexos.
O que mais importa é a capacidade de pensar de forma estruturada, e criar soluções para as dores dos clientes.

3- Plataformas de Cursos Online
Essas plataformas podem ser um bom ponto de partida para quem está começando, pois oferecem uma introdução acessível a diversos tópicos de tecnologia.
No entanto, seu custo-benefício pode ser limitado dependendo dos seus objetivos. Muitas vezes, o conteúdo é mais generalista e superficial, o que pode ser insuficiente para quem deseja aprofundar em uma área específica.

4- Graduação EAD
É importante avaliar se um curso a distância (EAD) realmente atende ao seu estilo de aprendizado e às suas necessidades. Muitas pessoas preferem a interação presencial para entender melhor os conceitos e criar uma rede de contatos mais sólida. Se a EAD se encaixar bem no seu perfil e você estiver disposto a buscar oportunidades de networking por fora, pode ser uma boa escolha, mas é uma decisão que deve ser feita com base nas suas preferências pessoais e na qualidade do curso oferecido.

5- Projetos no github podem me ajudar?
Podem, mas encher de projetos atoa não faz muito sentido, a pessoa responsável por avaliar seu código, no máximo vai dar uma olhada no seu estilo de codificação.
Procure projetos open source, crie bibliotecas, packages que sejam úteis para a comunidade. Participe de eventos, bootcamps, hackatons.
São opções que vão acelerar muito o processo.

6- CTRL C + CTRL V.
Copiar e colar além de não te ensinar a codar, não acrescenta em nada no portifólio.
Fez o cursinho online? Complemente com novas features, invente bugs para resolver, mude o conceito, invente.

7- Inglês é importantíssimo.

8- Não quero lidar com pessoas, posso ser dev?
Até pode, mas cada dia vejo o desenvolvimento como uma área mais humana, você terá obrigaróriamente que interagir com pessoas, mesmo que não queira.

Bom, texto gigantesco, mas acredito que consegui reunir bastante informação pra vocês que estão iniciando na área, gostaria que alguém tivesse me dado esse direcionamento no inicio xD

É isto, qualquer dúvida ou sugestão:

https://www.linkedin.com/in/carlosec1/

Carregando publicação patrocinada...
1
1
0
1

Uma dúvida enquanto a engenharia da computação (estou em dúvida entre ela e ciência da computação) eu gosto muito de sistemas embarcados e já ate mexo e fiz projetos de pesquisa usando embarcados no meu ensino médio (no IFs), vale a pena fazer a Engenharia e trabalhar como dev back-end e embarcados? Eu pretendo trabalhar com back-end como principal (já arranho um pouco) mas eu amo embarcados, eu devo seguir com back e trabalhar com embarcados por hobby? Não vejo muito profissional na internet que conta se vale a pena

1

Opa, tudo bem? Acho que vale sim, é um mercado bem inchado e talvez leve um tempo pra conseguir ingressar, enquanto isso, pode ir evoluindo como backend, criando projetos de IOT e similares por fora, até que comece a trabalhar profissionalmente com isso. É o que eu faria, engenharia, de todas é a mais fascinante e desafiadora ao meu ver.

1

Existem cursos de engenharias em universidades públicas voltadas/ênfase para Sistemas Embarcados. Porém, a linha da ênfase pode pender para engenharia da computação ou engenharia elétrica.
Faço na UFPR, e o curso é muito voltado para engenharia elétrica/eletrônica, e a ênfase para embarcados (programação, iot, s.o, hardware e firmware etc) não chega a dar 10%, e isso chega a ser frustrante. Já na USP são carlos, pelo que sei, o curso é uma vertente da engenharia da computação, e pode ser que a grade de cursos seja de fato voltada para embarcados.
Como trabalho como desenvolvedor de embarcados atualmente posso te falar que é bem diferente e quase nunca vai aplicar back-end junto ao desenvolvimento de hardware e firmware. É meio difícil você se especializar e fazer mais de uma tarefa. Porém, se você é novo e está na fase de escolher um curso, ambos vão te alinhar em áreas prósperas e moldar tua capacidade de estudo e autodidatismo, e tudo bem migrar pra outro curso ao longo do tempo se estiver decidido.