Programador Iniciante | O Plano Realista de 12 Meses para o Emprego | Roteiro Completo

3.35k views3957 WordsCopy TextShare
Tiago Aguiar
🎓 Cursos Mobile: https://ads.tiagoaguiar.co/x7IwgqmMz2I Se você tá começando do zero a programar e...
Video Transcript:
Bom, nesse vídeo aqui eu quero mostrar para vocês um plano de estudos que você pode aplicar hoje mesmo, começando agora, para você se tornar um programador em 12 meses. Esse aqui é um plano que você pode aplicar. Algumas pessoas podem conseguir aplicar mais rápido, outras vão demorar mais.
Mas aqui é uma média que eu coloquei de todos os passos que você precisa fazer para você sair hoje, começando dia hoje, dia 1, até o dia 365. E o que você precisa fazer a cada mês que você vai conseguir se tornar um programador e conseguir a sua vaga? Não tem erro.
Se você executar exatamente que eu vou falar, isso aqui por 12 meses, você vai conseguir a sua vaga. Então vamos lá, vamos direto ao ponto. O que que a gente precisa fazer, né?
Ah, eu separei em 12 meses, tem alguns detalhes aqui, o que que você precisa fazer em cada mês. Antes de começar, eu já quero dizer que não é um processo fácil, mas é um processo que funciona, tá? Então, se você quiser coisas fáceis, pode fechar esse vídeo, procurar outra coisa no YouTube, na Netflix, porque esse aqui é um trabalho que funciona, vai dar certo, mas dá trabalho.
Então, vamos lá. Primeiro passo, escolher a linguagem de programação. Então, como é que a gente faz essa escolha, né?
Primeira coisa que você precisa entender para você escolher uma linguagem de programação principal, seja cotin, Java, Python, Swift, Go, Rust, existe algumas coisas que você precisa levar em consideração antes de escolher. Primeira delas é o quê? Você precisa estar alinhado com a sua resposta individual.
Que eu quero dizer, você quer trabalhar com o desenvolvimento mobile, Android, iOS? Você quer trabalhar com desenvolvimento web? Você quer trabalhar com desenvolvimento de games, ciência de dados, devs?
o que que você gostaria de trabalhar? Porque assim, não adianta você querer aprender múltiplas linguagens ao mesmo tempo, sendo que você não sabe muito bem nenhuma. Então, a minha recomendação aqui é que você escolha uma alinhado com suas respostas individuais, os seus desejos individuais para você escolher a linguagem certa.
E dali pra frente, pelos próximos 12 meses, você só vai utilizar essa linguagem, tá? Repet de novo. Você só vai utilizar essas linguagens.
Se tiver alguma exceção, eu vou mostrar aqui no decorrer do vídeo, mas a priori você vai sempre utilizar a linguagem baseada no seu desejo. Então, por exemplo, eu quero criar aplicativos Android. Obviamente você vai se começar com a linguagem cot, que é a linguagem oficial do Android.
Ah, eu quero desenvolver aplicações de alta performance como o desenvolvedor back end. Então, a melhor opção nesse momento seria, por exemplo, GO, né? Go é uma ótima opção para isso.
Ah, eu quero trabalhar com inteligente artificial. Talvez Python seja a melhor opção para isso. Então, você precisa primeiramente escolher a linguagem baseado no seu desejo.
Não qualquer linguagem. Ah, eu vou aprender Python e JavaScript porque me disseram que é fácil. Não faz isso.
Não vai atrás do fácil, porque o fácil não vai levar aonde você quer chegar. Então você tem que ter uma definição clara para onde você quer chegar. E isso vai definir a linguagem que você vai estudar e vai gastar o seu tempo todo, porque nós não temos todo o tempo do mundo para aprender coisas paralelas ao mesmo tempo.
Então a gente tem que escolher com e eficiência a nossa primeira linguagem, tá? Essa é a minha recomendação. Segundo é começar com o quê?
com a instalação do seu ambiente de desenvolvimento, se for uma IDE ou se for um editor de texto, você precisa aprender muito bem como você instala e você utiliza o seu ambiente de desenvolvimento e a sua ferramenta que você vai usar durante o dia. A partir dali, você vai aprender sobre a sintaxe base, né? Tava só invertida aqui a ordem.
A sintaxe básica, que seria o quê? Aprender sobre variáveis, os tipos de dados que você vai utilizar, estruturas de condições como if, else, estruturas de repetições como for, while, operadores matemáticos, operadores lógicos e coleções de dados. Não precisa expandir mais do que isso.
É importante, é, mas só quando você tiver muito bem familiarizado com a linguagem. Nesse ponto inicial, eu quero que você saia daqui entendendo a sintaxe básica para você começar a criar seus primeiros projetinhos, tá? Então não fique focando muito em algoritmos complexos de big o agora, tá?
Não é a hora de fazer isso. Então nem não fique pensando, ah, como é que eu faço um algoritmo boladão do momento? Não, não é essa a ideia.
A ideia é que você aprenda os fundamentos muito bem, entenda muito bem essa base para você avançar pros seus primeiros projetos. Dito isso aí você vai avançar para funções, né, em métodos, ou seja, aprender o escopo, modificadores de acesso, funções reutilizáveis, princípios básicos para você modularizar essas funções. Então, como que você começa a deixar o seu programa mais inteligente e mais reutilizável para você evitar copy paste, né, copiar e duplicar código nesse contexto.
A partir disso, você já vai ter o que precisa para começar a criar seus primeiros projetos de entrada e saída de dados. É importante você manipular esses dados, porque o que a gente faz hoje o dia inteiro é manipular dados. É entrar, pedir uma entrada e o programa vai devolver uma saída baseada na entrada que o usuário forneceu, né, no repertório do usuário.
Então, começa fazendo essas modificações, tá? Uma dica aqui é usar o único curso ou plataforma para evitar confusão. Aquilo que eu falei como uma única linguagem de programação.
Além de você escolher uma única linguagem de programação, você tem que escolher também uma única plataforma, uma única pessoa, um mentor, alguém que você vai seguir a fundo, porque cada pessoa vai ter uma metodologia diferente de ensino. Cada plataforma, cada curso vai ensinar de uma maneira. Então você vai ficar mais confuso do que vai aprender, porque hoje a gente tem uma gama enorme de possibilidades e de opções pra gente aprender.
Então escolha uma, a que faz mais sentido com você, a que você se familiarizou mais e segue aquele mentor, aquela plataforma, aquele curso, aquele youtuber, segue ele até o fim para você ter a mesma trajetória, tá? E aí você começa a criar projetos práticos de linha de comando, que são projetos que você faz um input e tem o output direto no terminal. Não se preocupa com a interface gráfica.
Agora a ideia é que você entenda eh muito bem a sintaxe da linguagem que você escolheu, tá? Então você vai passar um mês inteiro fazendo isso, fazendo vários projetinhos de linha de comando, aprendendo mais a fundo da linguagem, entendendo seus fundamentos, a sintaxe básica, né? Mexendo na sua IDE, no seu editor de texto.
Então você vai começando a lapidar isso daqui o mês todinho, tá? Como eu falei, é flexível. Eu coloquei 12 meses.
Você pode usar isso aqui por 12 meses para você se aprofundar, mas se você tiver um pouquinho de menos tempo, quiser alguma coisa mais acelerada, você pode encurtar isso aqui para, sei lá, 20 dias, é, 15 dias, tá? Mas é importante que você tenta seguir aqui a risca que eu tô falando. Beleza?
Agora, no mês número dois, o que que você vai fazer? Você vai aprender programação orientada a objetos. Então você vai sair daquele fundamento eh de uma programação mais imperativa com funções, assim como er linguagens, como por exemplo C, para você se aventurar no paradigma orientado a objetos.
Então você vai ter que aprender classes, objetos, consultores, encapsulamento, herança e polimorfismo. São quatro coisas importantes do OAP que você precisa ou do PO, como você queira chamar também, que você precisa dominar, tá? pega esses quatro aqui e foca muito bem neles.
Com isso, com esse conhecimento já imputado no seu cérebro, você vai começar a adotar a lógica de programação com os conceitos que você aprendeu do mês passado. Então, com isso, você vai criar projetos práticos, seja sistemas simples de cadastros como cliente, produtos, tudo isso na linha de comando ainda, tá? Outro projeto prático que você pode fazer, um to list, né?
lista de tarefas, gerador de senhas para você manipular a aleatoriedade em programas, gerenciador de finanças para você aprender a fazer input, output de dados, tudo isso vai se aprofundar ainda mais tanto na linguagem quanto nos paradigmas que cada uma das linguagens vão ter. Hoje em dia ali vou colocar que 90% delas vai adotar uma programação orientada a objetos no mercado tradicional. Agora, como dica que eu quero ressaltar sempre aqui é que entender o conceito é mais importante do que tentar decorar.
Na verdade, você nem deve decorar essa sintaxe, né? O que que é cada palavra, cada comando. Você tem que entender o fundamento e usar e aplicar ele.
Com o tempo, o seu próprio cérebro vai internalizar isso e vai ser meio que automático. Então, não tenta ficar muito tentando decorar agora. Só faz funcionar quando você não esquecer.
Quando você esquecer a sintaxe, você vai no Google Chat GPT e pergunta para ele: "Ah, como que faz um for eh dentro do JavaScript, por exemplo? Ah, como é que faz um W no Java? " Então você vai usando esses conceitos para você trabalhar e internalizar.
É igual dirigir um carro. Você não fica pensando muito como você coloca a marcha, como você mexe nos pedais. Você só faz.
Às vezes você chega até no destino e nem lembra como é que você chegou lá, porque já tá internalizado na sua cabeça aquele procedimento. E a programação vai acontecer isso a longo prazo, tá? Então esse é o mês dois que você deve seguir.
No mês três, você vai criar o seu primeiro programa com uma interface gráfica, tá? Aqui eu tô partindo do princípio que você tá criando um sistema que tem interface gráfica. Se você for no desenvolvedor back end, você vai começar a prover muito API pra galera de back end.
Mas vamos focar aqui ah na interface gráfica, que eu acho também que é valioso pro dev back end. Então o que que você vai dominar? Você vai começar a aprender algo que te provê uma maneira de criar uma interface gráfica.
Por exemplo, com Cotin, você pode estar utilizando Jetpack Compose, que é um framework novo, ou usando o próprio XML, que é o modo tradicional que já vem anos no universo do Android, com o Swift, é, utilizando Swift UI ou UI Kit, JavaScript com HTML e o CSS. Então, a ideia é você pegar aqueles conceitos de lógica de programação, orientação a objetos e começar a aplicar numa interface gráfica para deixar as coisas mais dinâmicas, né, para deixar mais interativa como um todo. Você pode criar alguns projetos práticos, como por exemplo, transformar aquele aplicativo de linha de comando que você fez numa interface gráfica, né, no gerador de senhas, por exemplo, né, o útil do list.
focar sempre em usabilidade e layout simples. Não tenta fazer o novo filtro do Instagram muito louco agora. Não, não precisa fazer isso.
Você precisa focar na usabilidade primeiramente, tá? Outro projeto prático que você pode fazer é aplicativo de lista de tarefas, como eu falei, né? E criar interfaces com botões, campos de textos, listas.
Então você começa a utilizar aqueles componentes que todo o sistema eh web, desktop ou mobile vai utilizar para fazer interação com o usuário, que é onde o usuário faz o input de informação. No quarto mês, você vai focar somente naquele, naquela estrutura. Eu vou dar o exemplo aqui do Android.
Por exemplo, você vai ficar só em Jetp Compose na prática. Então você vai aprender a criar seu aplicativo usando essa tecnologia. Se você é de web, você vai aprender React.
Então você vai usar o React para aprender essa tecnologia e criar interfaces gráficas. A ideia aqui você pegar uma tecnologia moderna que o mercado utiliza e aplicar nas ideias que você vier a criar, tá? Então você vai tá aprendendo o compose aqui, trazendo aqui pro pro meu universo, compose functions, navegação com compose, states, recomposição, layouts responsíveis.
você sempre vai estar mais praticando do que estudando a teoria, porque a teoria ela já foi lapidada nos passos e nos meses anteriores. Então você vai começar a praticar tudo aquilo que você aprendeu na teoria, tá? E você também pode estar colocando, incrementando seus projetos, como por exemplo, dados locais.
Ah, se você tá fazendo aplicativo desktop, por exemplo, né, utilizando o compose multiplataforma, vamos dar um exemplo, você pode estar utilizando para salvar dados locais no banco, no banco Esquelite. Ou se você tá fazendo aplicação web, você quer salvar no dispositivo do usuário, você pode salvar num arquivo. Ou se você tem um smartphone, você pode salvar no banco de dados, utilizando o banco de dados room, né, ou lá no Swift, como por exemplo, Core Data ou Swift Data.
A ideia aqui é você pegar algo de uma tecnologia que o mercado tá utilizando e fazer os seus projetos rodar em cima dele, né? Então, pega lá o seu app de lista de tarefas, começa a colocar navegação, começa a colocar detalhes nele para que você consiga aplicar esses conceitos nesse mês na tecnologia específica. E de novo, eu tô dando exemplo aqui com o Android, porque é o meu knowwow, é o que eu vivo há anos e é uma forma mais prática de te dar exemplos, mas você poderia adaptar apertar isso daqui para Goleng, para Rust, para JavaScript, para PHP, o que você adotou e o que você quer trabalhar.
Quinto lugar, APIs e consumo de dados externos. Então vamos sair ali do campo offline pro campo online e começar a aprender a como fazer requisições usando métodos HTTP como get post, o que é de fato uma API, como você trabalha com Jason, né? Quais ferramentas você pode estar utilizando dentro da tecnologia que você trabalha.
Então sei lá, se você tá no Android, como que utiliza o retrofit ali com cot? Tô no JavaScript, como que eu utilizo o FAT? Ah, tô no iOS, como que eu utilizo os sessions com o Swift?
Então você sempre adapta ao objetivo principal lá do mês número um, né? Projetos práticos que você pode estar utilizando para você consumir essas APIs. Pode ser um app de previsão de tempo usando uma API pública.
E existe diversas APIs públicas, não só de previsão de tempo, mas de conversão monetária, de criptomoedas. Tem várias que você pode encontrar no próprio Google ou perguntar pro chat GPT que ele vai listar para você, tá? A dica aqui também importante é você usar sempre o Postman, que é uma ferramenta pra gente conseguir testar as nossas requisições e validar se tá tudo funcionando.
Às vezes a gente tenta testar diretamente no aplicativo que a gente tá fazendo, seja web ou mobile, e acha que o programa é app, mas às vezes é só a API que não tá funcionando, tá? Então é bom testar com essas ferramentas. No sexto mês, então meio ano já se passou, você já começou a criar seus projetos.
Agora chegou a hora de você melhorar por boas práticas dentro dele, saber debugar esses projetos. Então, refatora esses projetos anteriores aplicando conceitos de boas práticas, né? Evite gambiarra.
Eh, comece a pensar no seu projeto, por mais que ele rode, funcione, como que eu posso deixar ele melhor? Como que eu melhoro esse código para um próximo desenvolvedor? Então, aprenda a escrever código limpo, legível, aprenda a fazer depuração eficiente, aprenda a tratar erros pro usuário, né?
Muitos apps que eu já vi também cometem erro, que a mensagem é error, tá? Mas erro do quê? Que que aconteceu no erro?
Então, tenta descrever, seja por sistema de log para você, seja pro usuário final, tá? sempre eh melhora com boas práticas de programação nesse mês. Então, foca ali nessas pontos eh durante esse mês.
O mês 7 e o mês oito, eu coloquei eles em conjunto, né? Faz mais sentido eles estarem junto porque vai consumir bastante do seu tempo aqui. Então aqui é onde você vai começar a fazer uma grande revisão de tudo que você aprendeu e começar a criar projetos completos.
Então o que que você vai fazer? Você vai escolher um projeto maior, né? E um projeto com uma ideia validada.
por exemplo, ah, vou fazer um clone do Spotify, do Instagram, do Netflix. Obviamente você não vai passar o resto da vida querendo fazer um igual, porque essas empresas levaram anos para criar esse projeto. Mas a ideia principal que você tem que é aplicar que essas empresas fizeram nesses projetos.
Então, passa ali seus dois meses resolvendo um problema real, tá? Cria esses projetos que resolve algo real. E a grande vantagem é que você não precisa pensar em ideias novas.
você vai pegar ideias que já existem, porque o seu objetivo nesse momento não é criar uma ideia eh boladona que vai pôr dinheiro no seu bolso agora, não. A ideia aqui é você desenvolver a sua habilidade técnica como programador, tá? E aí você pode dividir o projeto em partes, como por exemplo, de testes, funcionalidades, de layout, integração com API.
Aqui você já vai pôr os conceitos de boas práticas, colocando seu projeto em camadas diferentes para ficar mais sustentável de uma manutenção melhor para você a longo prazo. E aí começa a subir no GitHub nesses projetos com RIDM pra galera começar a visualizar, criar esses RIDMs com descrições, prints, instruções de uso, né, para que você tenha ali os seus entrevistadores ah engajados, impactados com os seus projetos quando você começar a chegar na fase de exibir para eles, tá? Então, esse aqui são dois meses que você pode focar neles aqui.
O nono mês, você vai fazer estruturas de código e organização. Que que você vai fazer? Você vai criar projetos em pastas organizadas e começar a migrar ali pro GitHub, para você aprender a subir esses projetos no GitHub.
Então, você vai aprender a como fazer comites, como criar repositórios, como fazer merge, como criar brins, tá? como fazer fix, né, correções de bugs. Então, esse mês todo dedicaria não só a criar os projetos que você já vem criando, mas aprender a estruturar o seu código para começar a imaginar você trabalhando ali em equipe.
O 10º mês eu coloco como opcional porque você não necessariamente precisa aprender essas habilidades de web, HTML, CSS, JavaScript, porque você tem ferramentas que fazem o que eu vou te falar de uma maneira rápida. Mas eh seria legal você aprender também usar essas tecnologias, mesmo que seu foco seja web, mesmo que seu foco não seja web, seja mobile ou data science, por exemplo, que é o quê? é você criar a página simples que eu vou mostrar como para você ter o projeto como portfólio online, né, para você usar ele como seu currículo online também.
Então a ideia aqui, por isso que eu coloquei opcional, é ou você construir o seu próprio portfólio online com o próprio HTML CSS JS, ou você cria um gerador ali de código, um gerenciador de hospedagem que cria isso automaticamente para você, só para você ter isso online. Mas eu acho legal você brincar um pouquinho com essas tecnologias também e você criar ali o seu currículo online, o seu portfólio online, tá? Então você pode estar utilizando ali o próprio HTML semântico puro com JavaScript, utilizando qualquer tecnologia que você quiser, com React, com View, com Svel Velt, com HTMX, que você achar.
Ali o universo é gigante. Se eu quisesse listar aqui a quantidade de frameworks web que tem para JS para você fazer páginas, aí a gente ficar aqui até amanhã. Mas o importante é você ter ali conhecimentos do CSS responsível para ele se adaptar a dispositivos móveis e desktop e tablets e focar ali criar sua página HTML, mesmo que seja estática, sem muitos recursos de banco de dados, tá?
Isso aqui é mais um adendo que você pode fazer. Eu acho válido você eh melhorar a sua mensagem pessoal, né? Aqui eu focaria mais não só na parte técnica, mas assim focando em como você vai se expor pro mercado de trabalho, como que você vai se eh vender paraa hora que você para na hora que você for se candidatar a uma vaga.
No mês 11 você vai se preparar pro mercado. Então aqui você vai começar a se organizar tanto no portfólio no GitHub, seja no seu próprio site que eu nem eu mostrei. Vai organizar o seu currículo, vai organizar o seu liquedinho, vai começar a se preparar para você aplicar as vagas.
Enquanto isso, você vai fazer simulação de entrevistas técnicas. Então você vai começar a resolver alguns desafios, responder perguntas comuns de lógica, de programação e criar projetos baseados eh nesses desafios que as empresas vão pedir para você. Você também vai participar de comunidades e eventos o máximo que você encontrar, seja online, seja offline, e ajudar outras pessoas em fóruns para aumentar a sua visibilidade, tá?
Fóruns aqui é um jeito de eu falar como comunidades, como todos, seja o Discord, seja o Facebook, enfim, qualquer comunidade que você encontra um problema, você vai e resolve esse problema junto com a pessoa. E por último, o último mês é onde você vai de fato aplicar essas vagas e fazer o network final. Você vai mostrar esses projetos em comunidades que você construiu, vai começar a aplicar para as vagas de estagiário ou de júnior.
Não queira ser pleno agora porque você nem passou pro júnior ainda. Então foca no que você tá fazendo nesse exato momento, no seu estágio atual, né? Mande e-mails personalizados pros recrutadores, procura e no site oficial das empresas, tenta fazer alguns frilas pequenos.
Então começa a entrar em sites de freelancers ou até mesmo recomendações para você começar a criar projetos menores. Continue estudando os temas avançados da da tecnologia que você vai abordar. Então, sei lá, se eu tô desenvolvendo com aplicativos Android, iOS, vou começar a me especializar em arquiteturas MVVM, clean architecture.
Ah, eu quero me especializar com banco de dados como Firebase, por exemplo. Então, você começa a pegar tópicos um pouquinho mais avançados daquele contexto que você tá atuando. E como dica, continue sempre aprendendo mesmo após você conseguir o seu primeiro trabalho.
É muito importante que você continue seu processo de aprendizado, porque uma vez que você conseguiu seu emprego, na verdade é onde o jogo começa. Então aqui você vai começar a ser remunerado. Talvez não seja remunerado suficiente quanto você gostaria, mas é seu primeiro passo.
Lembre-se, você sempre pode crescer na carreira. Então, todo mundo começa do zero. É importante que você comece.
Esse aqui é o mapa que você pode seguir pelos próximos 12 meses. E eu tenho certeza que você aplicar isso aqui com consistência. Eu tenho certeza que você consegue a sua primeira vaga, sem dúvida nenhuma, tá bom?
Então, se você quiser seguir um roadmap desse parecido, seja com desmentento Android ou iOS, é só conferir o meu link dos meus treinamentos na descrição do vídeo. Eu tenho diversos estudos de casos, seja de pessoas que começaram do zero, pessoas que migraram de área pro desenvolvimento mobile. Na página você encontra diversos depoimentos e também aplicativos desses alunos, tá?
Importante é que você comece hoje e não deixe para amanhã. Então eu te vejo no próximo vídeo.
Copyright © 2025. Made with ♥ in London by YTScribe.com