Programa de mentoria para pessoas em início de carreira em tecnologia

Olá! Nesse repositório iremos compilar alguns conteúdos e métodos sobre como iniciar na carreira de tecnologia. É importante ressaltar que existe MUITA informação disponível na internet, e esse repositório é apenas um pequeno recorte com alguns caminhos possíveis. 🌈

Os 6 passos para iniciar na carreira (ou evoluir)

Estou trazendo pra cá os mesmos pontos levantados nesse vídeo (UX Design: How To Get Started - A Full Guide). Os passos são muito simples e claros de entender, não há segredo algum. Mas isso não quer dizer que seja fácil ou rádido 😬 É aquele caso: É simples, porém trabalhoso e também extremamente possível/tangível. São eles:

1 - Entenda quais são as áreas possíveis dentro de tecnologia e escolha uma que se encaixa com você

Existem muitas atuações possíveis dentro de tecnologia envolvendo programação, design, gerenciamento de projetos e muito mais. Segue algumas referências:

2 - Faça algum curso pra aprender princípios e fundamentos

Existe todo tipo de conteúdo disponível, indo dos gratuitos aos pagos. Vou deixar algumas referências disponibilidas gratuitamente:

3 - Escolha alguma tecnologia para se aprofundar

Os fundamentos do passo 2 são aplicáveis em diversas linguagens de programação e contextos diferentes, então nesse passo recomendo se especializar em alguma tecnologia pra começar a fazer as coisas acontecerem. Seguindo a deixa do https://roadmap.sh/backend, são boas linguagens para começar (escolha uma):

  • Python
  • Javascript
  • Java
  • Go
  • C#

Existe também esse índice de popularidade de linguagens que pode ajudar na descisão: https://www.tiobe.com/tiobe-index/

4 - Prática, prática e mais prática

Fazendo uma citação da página http://codekata.com/, como uma pessoa se torna um músico? Saber a teoria ajuda, talvez até um pouco de talento, mas definitivamente, prática! Aplicar a teoria repetidamente e usar o feedback de outras pessoas para melhorar. Não é muito diferente para pessoas desenvolvedoras, artistas, designers, advogados e desportistas.

Com isso em mente, recomendo encontrar um projeto da comunidade ou criar um projeto pessoal e trabalhar nele de forma a aplicar os conhecimentos. Algumas sugestões:

Escolha algumas tecnologias, cursos e crie alguns objetivos pessoais. Utilizando da metodologia ágil kanban, recomendo quebrar cada tópico de aprendizado em tópicos menores e criar uma lista de prioridade. Após isso, fica bem claro ver os próximos passos de estudo. Um exemplo feito no Trello:

image

5 - Entre em uma comunidade

Uma comunidade de tecnologia é o ponto de encontro de pessoas mais experientes na área, podendo ter palestras, trocas de conhecimento e vagas de emprego a disposição. Sugestões da comunidade python:

6 - Publique seu progresso/projetos e procure vagas

Na busca por novas vagas, é muito importante ter um portifólio (geralmente no github pra pessoas programadoras) com seus projetos e aprendizados. Isso irá demonstrar para recrutadores as tecnologias que você já é familiarizado.

Pra procurar vagas, existem diversas plataformas, mas pra início eu recomendo o Linkedin. Há uma pesquisa de vagas bem eficiente por lá, e também já é possível ver os requisitos das vagas pra que você tenha noção dos caminhos que precisa trilhar. Referências:

7 (bônus) - Contribuir para software livre

Um pouco mais de contexto sobre esse ponto pode ser visto nessa palestra: Experiências mentorando contribuições a software livre na faculdade , por Igor Montagner.

Os pontos principais são:

  • Aprender a utilizar controle de versão dentro do contexto de uma equipe (parar de usar a branch main para tudo 🔒)
  • Melhorar a capacidade de leitura e debug de código já existente (pois no mercado, nem sempre vamos começar um projeto do zero e é importante aprender a lidar com códigos já existentes e desconhecidos)
  • Melhorar familiaridade com testes, CI, linting e outras práticas de qualidade de software
  • Ter um registro público de como você colabora.

Não sabe por onde começar? Temos essas duas referências:

Mas é importante também conversar com amigos e pares da área de tecnologia se precisar de uma ajudinha pra escolher um projeto :)

Outros pontos

Na área de tecnologia existem alguns pontos fundamentais que acho importante ressaltar e que podem fazer toda a diferença em uma carreira de tecnologia. São eles:

  • 🤖 Lógica de programação/Algoritmos: Seja lá qual for sua linguagem de programação escolhida, durante toda a carreira iremos usar algoritmos, então é importantíssimo investir tempo nesse passo para ter um aprendizado mais completo.
  • 🌐 Inglês: Aprender um idioma mundialmente falado irá abrir muitas portas no seu desenvolvimento. No início, é possível consumir conteúdos, cursos e artigos escritos por pessoas do mundo todo, e essa é uma expansão incrível da quantidade de conteúdo disponível. Num segundo momento, o mercado de tecnologia está cada vez mais globalizado, e com o home office cada vez mais comum, perdemos muitas barreiras físicas e na prática podemos trabalhar em qualquer lugar do mundo. Demais, não?
  • 🐧: Linux : Linux é um sistema operacional de código aberto, que é mundialmente utilizado em diversas áreas da tecnologia.

Contribuindo com esse projeto

Este é um projeto coletivo, então sinta-se a vontade pra criar uma issue ou um PR :)