Um Dev me disse: O que você precisa saber antes de conseguir seu primeiro emprego como Desenvolvedor Júnior?
Lembro até hoje quando estava iniciando minha faculdade e me deparei com a matéria lógica de programação. Eu já tinha estudado anos atrás um pouco de programação, com VB (Visual Basic). Mas nas matérias seguintes isso iria ficar mais constante principalmente com C e C++. Recordo que sempre pensei: "Trabalhar com isso deve ser muito difícil!" e "Quem trabalha com isso só pode ser doido mesmo..." E aqui estou escrevendo esse artigo depois de três anos aprendendo e trabalhando com Desenvolvimento de Software 😅. Mas engana-se quem acredita ser um caminho fácil. Tudo vai depender do seu foco em não desistir e estudar, além das oportunidades que vão surgir! Listei alguns detalhes que podem fazer a diferença para você que está iniciando a carreira no mundo da tecnologia! Lembrando que o objetivo é compartilhar dicas que podem te ajudar a conquistar seus objetivos na área.
Foco
Esse é o fator importante que pode levar você a alcançar seu objetivo sem desanimar. Mas por que? Se não tiver o foco em ir até o final, não vai poder colher os frutos dos resultados do seu estudo e trabalho. A vida é lotada de imprevistos. Alguns imprevistos podem atrasar seus planos mais do que imagina. Um exemplo disso é que talvez não será fácil conseguir a primeira oportunidade de estágio na área de Desenvolvimento de Software, ou pode ser que consiga na primeira entrevista. Conheci um colega de classe quando cursava a faculdade, que buscava uma oportunidade de estágio já fazia dois anos. Ele trabalhava o dia inteiro em uma fábrica e a noite se dedicava aos estudos. Mas conheci um outro aluno que depois de completar um ano cursando Análise e Desenvolvimento de Sistemas já tinha um emprego como Desenvolvedor Júnior. Não vamos entrar em detalhes dizendo que um aluno tinha mais foco que o outro. Temos que lembrar que cada pessoa tem seu próprio tempo e existem contextos diferentes. O ponto é ter em mente que imprevistos acontecem e podem atrasar seus planos, mas isso não deve tirar seu foco!
Foque também em aprender uma coisa de cada vez. Jamais tente aprender três frameworks ao mesmo tempo ou quatro linguagens de programação em um ano. Tenha como objetivo dominar uma tecnologia especifica ou uma linguagem. Com o tempo você vai entender outras pois a base é semelhante.
Ter claramente seus objetivos traçados e focar neles vai evitar que você desanime.
Um passo de cada vez
Às vezes na empolgação queremos aprender várias coisas ao mesmo tempo. Esse foi um dos meus erros ao iniciar meus estudo. Comecei aprendendo duas linguagens de programação ao mesmo tempo. Nunca faça isso! Um passo de cada vez. Entenda as particularidades da linguagem. Coloque em prática com projetos simples ou mais avançados. Mergulhe na linguagem e realmente compreenda ela, pois se não colocar em prática, esse tempo dedicado para estudar será perdido. Anote o que você entendeu e revisse novamente suas anotações quando tiver dúvidas.
Coloque em prática o que está estudando
Se você está aprendendo uma linguagem de programação, sempre coloque em prática. Existem linguagens que são orientadas a objetos, mas elas possuem detalhes bem diferentes de uma para outra. Existem vários frameworks JavaScript. Mas se você não criar o projeto e entender como funciona o framework, de nada adianta estudar. Onde eu quero chegar? Ficar olhando para a tela vendo o professor programar por você, sinceramente não vai te ajudar muito. É preciso que você coloque a mão na massa e treine. Praticando conseguimos entender claramente qualquer coisa que estamos aprendendo. Mas tenha um objetivo claro, não fique tentando aprender tudo de uma vez só.
Busque absorver conhecimento dos mais experientes
Existem livros escritos por desenvolvedores com anos de atuação no mercado de tecnologia que ajudam muito! Vou deixar uma lista no final do artigo. Mas não adianta apenas ficar buscando o conhecimento por livros ou por tentativa e erro no ambiente de estudo. Muitos desenvolvedores tem décadas de experiência e às vezes eles estão na mesa ao lado. Aprenda com eles! Muitos estão dispostos a passar o conhecimento para outros e ensinar métodos, estratégias e soluções para resolver N problemas. Mas não adianta ficar parado esperando que eles venham ensinar. É seu dever ir atrás e ser curioso em entender como uma regra de negócio funciona, a lógica implementada em um método, como se realiza um deploy... Enfim isso tem que partir de você. Pode ter certeza que muitos vão querer te ajudar. Outros nem tanto e uma minoria nunca irá te ajudar, mas esses casos são mais isolados e partem de pessoas que estacionaram no tempo e não gostam de sair da zona de conforto, dessas pessoas ou "líderes" eu recomendo que você se afaste o mais rápido possível. Quem fica na zona de conforto por muito tempo na área de tecnologia sempre fica desatualizado!
Tenha paciência
Quando você trabalha com desenvolvimento de software, cada sistema tem suas particularidades e regras de negocio específicas. Leva tempo entender como esses sistemas funcionam. Dependendo da organização da empresa pode levar mais tempo ainda entender a regra de negocio. Então é preciso ter paciência e entender que certas coisas estão fora do seu controle e que apenas com a prática e trabalhando no dia a dia você vai realmente entender como o sistema funciona.
Quando se está no inicio da carreira, as primeiras tarefas podem ser simples e bem chatas de realizar, muitos já passaram por isso e me incluo nessa. Mas se você se sair bem nelas e até mesmo encontrar soluções para facilitar a realização dessas tarefas, você começa a se destacar e mostrar que está na equipe para ajudar. Automaticamente começa a conquistar a confiança das pessoas que estão na empresa e isso vai te ajudar a trabalhar em tarefas mais complexas. Mas não pense que isso acontece em duas semanas ou dois meses. Isso é um processo que requer paciência e leva um tempo considerável.
Outro ponto. Você precisa ter paciência para ouvir a opinião do seu colega de equipe. Não adianta apenas levar em consideração a opinião de um membro do time. É preciso ter paciência para ouvir o que outros tem a dizer e se for preciso também para discordar. Lembre-se que não adianta nada ter conhecimento se você não tem paciência para ouvir outras opiniões ou transmitir esse conhecimento.
Entenda como usar as ferramentas de Versionamento de Código
A principal utilizada hoje é o famoso Git. Muitas empresas usam e por isso entender os principais recursos é muito importante para não se perder. Você não precisa ser o expert de todas as ferramentas de Versionamento de código. Basta entender como criar branch, realizar pull request, fazer push para repositórios remotos. Vou deixar o link de um artigo bem completo sobre isso, esse artigo não foi escrito por mim, mas sim por outro desenvolvedor. Clique aqui para acessar.
Depois você pode ir se aprofundando mais nos comandos e também vai entender melhor a importância de se realizar commits semânticos.
Entenda o que está codificando
Não tente ficar apenas no copia e cola de códigos. Tente também entender o objetivo e melhorar o código. Desenhe se for preciso o que precisa trazer do mundo real e transformar em código. Principalmente em ambiente de estudo. Nesse ambiente mais controlado sem tantas pressões você pode errar à vontade. Preocupe-se em escrever o código e fazer funcionar, depois tire um tempo para entender como melhorar a qualidade da escrita do seu código. Aplicando isso aos poucos no dia a dia, vai adquirir uma carga de experiência gigante ao trabalhar em projetos do mundo real.
Prepare-se para desafios
Trabalhar com tecnologia muitas vezes é trabalhar com desafios. Coloque-se à disposição do time para trabalhar em projetos, mesmo que comece realizando tarefas simples. Se prepare também para colocar em prática em um ambiente real tudo o que aprendeu nos estudos. E sempre que surgir uma dúvida pergunte, não tenha medo de perguntar. E confesso que esse sempre foi meu maior receio. Mas acredite que se não tirar suas dúvidas com a equipe, o custo pode ser alto lá na frente! Então fique tranquilo, ninguém nasceu com todo o conhecimento na área de T.I. É importante fazer perguntas e sanar suas dúvidas.
Inteligência Emocional
Não acredite que todo ambiente corporativo é apenas risos, alegria e cooperação. Infelizmente existem muitas pessoas que pensam apenas no benefício próprio ou que se irritam facilmente, causando muitas vezes um clima bem chato com outros colaboradores. Você vai aprender que muitas vezes é preciso ter inteligência ao lidar com suas próprias emoções. Hoje se alguém te responder de uma maneira grosseira e mal educada dentro do ambiente de trabalho, como você iria agir? Pensar nessa pergunta pode te ajudar a fazer uma reflexão melhor em como você age hoje e se preparar caso isso ocorra em algum momento da sua vida. Infelizmente já passei por essa situação inúmeras vezes em empresas a alguns anos atrás e a melhor opção muitas vezes é o silêncio e contar até mil. Nunca se rebaixe ao nível da pessoa que te ofendeu! Seja melhor que ela. Já trabalhei em ambientes corporativos que os colaboradores não gostavam uns dos outros por divergência de times de futebol que torciam! São casos isolados, mas que me ajudaram a aprender com erros de outros e a manter a inteligência emocional!
Lidar com pressão também pode fazer parte do seu dia a dia dependendo da demanda e também da empresa. Nessas horas é preciso se manter calmo. Trabalhe esse ponto, pois muitas pessoas não aprenderam ainda como colocar em prática a inteligência emocional no seu trabalho.
Acredite que ter controle das suas emoções vai te ajudar MUITO a evitar estresses e possíveis conflitos.
Conclusão
O objetivo deste artigo é mostrar alguns pontos que se eu soubesse antes, o caminho na área de Tecnologia teria sido com menos obstáculos e decepções. O objetivo não é desanimar, mas sim incentivar a persistência na busca. Muitas pessoas acham que trabalhar com desenvolvimento de aplicações Mobile, Web ou Desktop é simples. A realidade é que existem muitos desafios! Mas os benefícios são maiores, basta ter persistência e disposição em querer aprender. Espero que esse texto chegue a Desenvolvedores Jr que se empenham diariamente em trabalhar com o que realmente amam e aqueles que estão buscando a primeira oportunidade no mercado de Tecnologia. Espero também que as dicas sejam úteis e te ajudem.
Fico por aqui neste artigo e também à disposição para contato por meio do LinkedIn .
Lista de livros:
Código Limpo: Habilidades Práticas do Agile Software – Robert C. Martin
Refatoração: Aperfeiçoando o design de códigos existentes (Versão 2020) - Martin Fowler
Código Limpo (Clean Code) - Robert C. Martin
Domain-Driven Design - Eric Evans
O codificador limpo: Um código de conduta para programadores profissionais - Robert C. Martin