Como estou trabalhando para superar minhas dificuldades como desenvolvedor júnior

Syeda Aimen Batool Blocked Desbloquear Seguir Seguindo 9 de janeiro Foto de Stas Aki em Unsplas h

Eu acredito que o outro nome para codificação é a “luta”. E se você é um iniciante ou um desenvolvedor júnior, essa luta é multiplicada por 100. Aprendendo a codificar, encontrando os recursos certos, criando um portfólio, buscando um estágio ou um trabalho de desenvolvedor júnior, e então trabalhando em um projeto da vida real Tudo pode ser uma luta.

Mas a coisa boa sobre lutar é que você aprende e sai da sua zona de conforto para experimentar coisas novas e implementar novas idéias, eventualmente se aperfeiçoando para ser uma versão melhor de você.

Na indústria de tecnologia, há muitas histórias de sucesso que apresentam uma longa jornada de luta e aprendizado. Tudo parece fascinante do lado de fora. Especialmente para desenvolvedores juniores, seus colegas e mentores seniores são as melhores pessoas que criam uma grande lógica e as surpreendem com suas formas incríveis de escrever código.

Mas quando nos aproximamos e vemos as coisas com clareza, percebemos que todos têm que enfrentar desafios, todos ficam presos com erros e erros. Mas, com o tempo e a experiência, vemos que eles apenas se deparam com desafios maiores e complexos do que nós.

Deixe-me compartilhar meus dois tweets favoritos de duas pessoas das quais aprendi muito. Esses tweets sempre me fazem sorrir e me motivar. Percebo que talvez estejamos todos no mesmo barco e compartilhando a mesma visão para o mesmo destino.

Este é um MPJ um dos meus favoritos técnicos

A vida deixou-me ver este tweet no momento em que eu era um lutador e tentando usar JavaScript no meu cérebro. Foi um conceito horrível há alguns meses. E levei cerca de 10 meses para aprender, explorar, implementar coisas e finalmente conseguir um estágio de remuneração remota .

Na fase de aprendizado, sempre busquei apreciação e reconhecimento de que algum dia me tornaria um bom programador. Eu queria saber se a programação era minha coisa ou não, ou se eu seria capaz de escrever boa lógica e código como outros grandes programadores fazem.

Ficar preso em pequenos problemas e não ser capaz de consertar as coisas rapidamente usado para me deixar confuso e frustrado. Mas ver algumas celebridades top de programação sendo honestas e mostrando aos seus seguidores que elas também não são perfeitas me ajudaram a acreditar em mim mesmo.

E meu segundo tweet favorito durante meu tempo de luta foi de um dos melhores desenvolvedores e o autor da série Você não conhece JS, Kyle Simpson.

Haah! Sentindo-se bem? Eu não tenho certeza sobre você, mas isso me fez sentir um pouco mais relaxado por algum tempo, pelo menos.

Depois de compartilhar minha história de aprendizagem e não ganhar em meu artigo anterior , hoje vou compartilhar outra fase da minha jornada técnica: depois de uma longa luta para conseguir um emprego, lutando para sobreviver nesse trabalho.

Um pouco de recapitulação

Recentemente iniciei um estágio remoto na Outreachy . Estou trabalhando com o Mozilla no painel de controle do Firefox nos próximos três meses. Percebi que, com a aprendizagem e a experiência, meus medos e inseguranças em relação à minha carreira também mudaram. Este artigo é parte da minha tarefa de estágio – escrever os medos e desafios que enfrentei durante as primeiras semanas do estágio. Espero que ajude os recém-chegados e os desenvolvedores juniores que estão lutando para entrar na corrida ou sobreviver e que eles saibam que todos lutam e é necessário para o aprendizado.

Eu estava animado e um pouco nervoso para começar minha primeira semana na Mozilla com tudo pronto na noite anterior. mas não vi nada de inesperado: uma falta de eletricidade de nove horas na minha casa. Não consegui me comunicar com os mentores e começar qualquer coisa no trabalho.

Felizmente, ele voltou às 5 da tarde e eu tive uma reunião muito acolhedora com os bolsistas da Outreachy e os mentores da Mozilla. As coisas foram muito interessantes e novas para mim, como conhecer pessoas de todo o mundo e se comunicar em inglês por quase uma hora. Conheci meus mentores Armen e Dustin pela primeira vez, e foi bom vê-los. Parecia totalmente diferente de e-mails e mensagens.

Meus mentores já tinham um fórum tipo trello organizado no GitHub, com algumas questões colocadas de acordo com sua complexidade. Começando no dia seguinte, eu tive que escolher os problemas e começar a trabalhar neles. Depois de começar a trabalhar nas questões, percebi que a festa acaba de começar. As lutas anteriores foram apenas um trailer.

É tudo sobre entender o código.

Meus sentimentos ao se candidatar ao estágio foram totalmente diferentes dos sentimentos quando comecei. Agora, o medo de não conseguir essa oportunidade foi substituído pelo medo de não se sair bem e acabar perdendo.

E foi muito difícil quando eu estava preso ao meu primeiro problema, que era personalizar a toolJip graphJS de acordo com os requisitos. No começo, eu achava que seria capaz de fazer isso facilmente, mas isso realmente me deu um tempo difícil. Não consegui descobrir a solução por dois dias.

Eu fiz algumas perguntas dos mentores e estava tentando o meu melhor para resolvê-lo. Mas por um momento, acreditei que não seria capaz de consertar e isso era deprimente.

Naquela época, meus mentores não me pressionaram. Em vez disso, eles me deram a confiança e a ideia de que é totalmente correto lutar com uma nova e grande base de código. Às vezes, leva tempo para entender as coisas e o código escrito por outros, então não devemos ser duros com nós mesmos. Precisamos tomar nosso tempo para entender coisas novas.

Depois de perceber que eu estava lutando para entender a base de código, com centenas de funções e arquivos, meu mentor me contou sobre a Técnica do Pato de Borracha e me pediu para explicar o código para o pato de borracha. Isso me ajudaria a entender melhor o código e o que estava acontecendo.

“Não há problema em ficar preso, todos nós ficamos presos a problemas e erros. Com os anos de experiência, ficamos menos presos, mas continuamos presos. ”- Armen Zambrano

Então, aqui estão minhas descobertas

Saber por onde começar é metade da batalha

Na maioria das vezes você conhece a solução, e talvez a lógica, e como implementá-la, mas você não sabe ONDE COMEÇAR! Com muitos arquivos e funções de código, você fica confuso sobre onde essa solução deve ser colocada para funcionar bem. Meu mentor Dustin Mitchell sugeriu que eu usasse comentários para entender o código e as funções, além da minha própria técnica para console.log (tudo o que vem no caminho).

Após a primeira edição, as coisas ficaram um pouco mais suaves, mas ainda estavam desafiadoras. Eu fiquei preso novamente em um problema relativamente complexo e demorou alguns dias para ser consertado. Mas, felizmente, nossos mentores e pessoas em opensource têm a gentileza de entender que nós, os desenvolvedores juniores, às vezes lutamos – e eles não nos fazem sentir mal por isso. Precisamos de mais pessoas como essas em tecnologia que estejam dispostas a ajudar e orientar, que forneçam aos jovens os melhores recursos para aprender e não se esgotar.

Mesclar conflitos doer!

Ah !! Se você é iniciante e novo no opensource, quero avisá-lo sobre conflitos de mesclagem. Dói muito quando você não sabe como resolvê-los, você gastou horas para encontrar a solução de um problema e acabou perdendo seu código na tentativa de corrigir o conflito de mesclagem.

Eu encontrei alguns conflitos e cometi alguns git commits. Era chato e assustador. Mas eu não teria aprendido alguns conceitos novos em fusão, comprometimento e resolução de conflitos se eu não tivesse feito isso. Obrigado a Sarah Clements e Dustin Mitchell por me ajudarem a sair da armadilha da fusão.

Reconhecer seu próprio código é uma luta

Isso vale para quase todos, e é realmente engraçado que, mesmo depois de alguns dias, deixemos de reconhecer nosso próprio código, escrito por nossas próprias mãos. Depois de resolver um bug, tentei resolver um bug similar e voltei para o anterior como referência. E eu estava tipo … como é que eu escrevi este código e por que diabos está funcionando ?!

O código de trabalho pode ser tão confuso quanto um código não funcional. Na maioria dos casos, o código de trabalho nos dá um tempo mais difícil. E, às vezes, depois de voltar ao código antigo, você repensa e pode encontrar uma solução melhor. Então você não precisa se preocupar ou se sentir mal se não entender seu próprio código ou o código de outras pessoas. Talvez você esteja perto de aprender algo novo.

Me diga como sobreviver

Baseado nas minhas primeiras semanas como estagiário, tenho algumas sugestões para mim (e outros) para o resto do estágio. E a maioria dessas sugestões é de meus mentores e pessoas incríveis que conheci na Mozilla durante o estágio. Eu os estou compartilhando com você, para que talvez eles possam ajudá-lo também.

Foto por Darran Shen em Unsplash

Não leve as coisas para o lado pessoal e concentre-se no aprendizado

Esta sugestão é de Sarah e depois disso. É difícil não levar as coisas para o lado pessoal e se sentir insultado quando um desenvolvedor ou mentor sênior faz uma correção ou sugestão. É ainda mais difícil quando você está trabalhando em código aberto e está em uma plataforma pública.

Mas recomendo que você se concentre nesse ponto e tenha uma atitude de aprendizado. Você não poderá aprender novos conceitos e boas práticas de codificação, a menos que tenha uma atitude humilde e de aprendizado. Coloque todo o seu ego de lado e concentre-se em aprender com a experiência e o conhecimento dos outros.

Absorva a quantidade máxima de informação e pergunte sobre coisas novas

Mantenha seus olhos e ouvidos abertos e tente absorver a quantidade máxima de informações e tenha uma sede de aprender coisas novas. Não tenha medo de tentar coisas novas e diferentes que não estejam na sua zona de conforto. Às vezes nos sentimos confortáveis com nossa maneira de pensar e escrever código, mas há algumas boas práticas e padrões de design que não conhecemos. Tente aprender o máximo que puder. Isso só é possível se você seguir o conselho mencionado no primeiro ponto.

Faça sua lição de casa antes de fazer perguntas

Fazer perguntas não é uma coisa ruim e, especialmente, quando você está preso. Mas é uma boa prática fazer o dever de casa e a devida diligência primeiro e apresentar algumas perguntas válidas ou uma solução. Então você pode obter uma revisão do seu mentor ou idosos.

Isso ajudará você a descobrir como fazer as coisas sozinho. Seus mentores também não sentirão que você não está se esforçando antes de perguntar. As pessoas em código aberto e em cargos de chefia são geralmente agradáveis e estão dispostas a ajudá-lo se você apresentar uma pergunta válida.

Não se compare com os outros

Não continue comparando-se com os outros. Isso afetará seu desempenho e você acabará perdendo sua confiança. Lembre-se, todo mestre já foi um iniciante. Todos lutam e até os seus superiores também estavam no seu lugar no começo. Eles estão familiarizados com a dor e os desafios que um desenvolvedor júnior enfrenta. Ninguém se torna um mestre apenas em uma noite – há um processo e todo mundo tem que passar pelo processo. Espere o seu tempo chegar e, até lá, trabalhe duro.

Lembre-se, todo desenvolvedor júnior está no mesmo barco que você – você não é uma exceção. O que estudamos na faculdade é muito diferente do que temos que implementar na vida real, e precisamos aprender muitas coisas para ser um desenvolvedor competente na indústria. E todos os seniores estiveram no seu lugar e estão familiarizados com a dor em que você está. Você só precisa se concentrar e ter uma atitude de aprendizado para continuar aprendendo e continuar crescendo.

Estou planejando compartilhar mais coisas com base na minha experiência e aprendizado. Este é o segundo artigo da série que estou escrevendo depois de obter meu estágio remoto pago através da Outreachy.

Sinta-se livre para compartilhar seus pensamentos @aimenbatool .