Destaque da comunidade do GDE: Nishu Goel

Nishu Goel é um renomado engenheiro da Web da Índia e especialista em desenvolvimento do Google para tecnologias da Web e Angular. Ela contou sobre o envolvimento da comunidade, os planos de carreira e as melhores maneiras de aprender sobre desenvolvimento na Web.

Mônica Janota
Monika Janota

Nishu no palco.

Nishu Goel é um renomado engenheiro da Web da Índia, especialista do Google Developers em tecnologias Angular e da Web e Microsoft Most Valuable Professional. Ela é autora de Step by Step Angular Routing (BPB, 2019) e A Hands-on Guide to Angular (Educative, 2021), bem como do capítulo JavaScript Web Almanac 2021. Nishu trabalha na epilot GmbH como engenheiro de pilha completa. Ela contou sobre o envolvimento da comunidade, os planos de carreira e as melhores maneiras de aprender sobre desenvolvimento na Web.

Monika: Vamos começar com sua história. O que inspirou você a se tornar um desenvolvedor e assumir um papel ativo nas comunidades de desenvolvedores?

Nishu: me formei em ciência da computação, estudei estruturas de dados e foi aí que começou o interesse em programação. Durante o terceiro ano de engenharia, criei uma conexão com a comunidade de desenvolvedores na competição Microsoft Imagine Cup Nationals, em que apresentamos soluções usando código. A ideia do aplicativo que criamos era oferecer oportunidades educacionais para os alunos locais, especialmente as meninas. Conheci algumas pessoas muito inspiradoras, tanto participantes quanto organizadores nessa jornada.

Em 2018, minha carreira decolou, e eu comecei a trabalhar com o Angular. O Angular se tornou a tecnologia principal que me conectou ao programa GDE. Na mesma época, comecei a escrever postagens no blog e criar conteúdo sobre o assunto em que estava trabalhando e aprendendo . Dhananjay Kumar me ajudou a começar essa jornada e me manteve no caminho certo. Meus primeiros artigos abordavam os conceitos básicos do Angular. Logo depois, comecei a dar palestras em eventos. O primeiro era o ngNepal, a Conferência Angular do Nepal. Isso levou a mais convites para falar sobre as tecnologias do Angular e da Web.

Nishu e outras pessoas da ng-india.

Monika: Qual é sua experiência profissional em termos de tecnologia?

Nishu: o foco era o Angular e os componentes da Web nos primeiros dois anos. Eu estava usando o Angular para criar a Web, mas logo decidi ir além e explorar outros campos. Não queria me limitar para trocar de projeto. Foi assim que comecei a criar componentes da Web no Angular para usar em outros frameworks.

A primeira coisa que fiz foi criar componentes da Web usando o Angular. Publiquei no npm e usei como uma demonstração em um projeto do React. Discuti isso durante algumas de minhas palestras e apresentações mais tarde. Meu próximo job exigia usar React e Typescript. Agora, como eu estava trabalhando com o React, eu não estava mais usando apenas um framework, mas a Web em geral. Naquele momento, aprendi muito sobre a Web, principalmente sobre desempenho nela. Foi quando pensei na Maior exibição de conteúdo (LCP) ou na Primeira exibição de conteúdo (FCP, na sigla em inglês), que significa quanto tempo o aplicativo vai levar para carregar ou qual será o tempo máximo para a renderização da página. Tenho trabalhado para escolher as práticas recomendadas e melhorar o desempenho dos aplicativos.

Devido a esse interesse no desempenho da Web, me envolva no Almanaque da Web e escrevi o capítulo sobre JavaScript. Web Almanac é um relatório anual sobre o estado da web em geral. Ele informa como as pessoas estão usando recursos diferentes. No ano passado, 8,6 milhões de sites foram avaliados, e os dados foram analisados e apresentados no relatório. O relatório inclui estatísticas como o uso dos atributos async e defer em um elemento <script>. Quantos sites usam corretamente, quantos não usam e quantos melhoraram em comparação com 2020. O último relatório Almanaque da Web mencionou que cerca de 35% dos sites usavam dois atributos no mesmo script, o que era um antipadrão, diminuindo o desempenho. Isso foi destacado no ano passado e, neste ano, tentamos ver se a situação melhorou. Também falei na ngConf e na Trust Dev Summit, onde me concentrei no desempenho da Web.

Edição impressa do Almanaque da Web.

Monika: Você também participa muito da retribuição à comunidade. Ultimamente, você tem trabalhado como voluntário para a organização YIYA de Uganda. Como tudo começou e qual foi o principal ponto dessa cooperação?

Nishu: Tudo começou quando a equipe do GDE nos informou sobre a oportunidade de voluntariado com a YIYA. A ONG de Uganda estava procurando engenheiros para ajudar com a preparação de conteúdo ou com os recursos técnicos. O objetivo do programa é capacitar crianças em idade escolar na Uganda e oferecer oportunidades educativas usando as tecnologias disponíveis localmente. Não são computadores nem livros didáticos, mas sim telefones básicos com teclado e rádios. Os filhos discavam um determinado número e recebevam um conjunto de informações, discavam outro para mais insights e assim por diante. Ele se tornou ainda mais útil durante a pandemia.

Como sempre estive envolvido com a comunidade e com os objetivos de desenvolvimento sustentável, decidi entrar em contato. Após uma reunião com a equipe do YIYA, eu ofereci minha ajuda com os scripts de Python ou com os bugs que eles encontraram, problemas com o portal. Trabalhamos juntos por um breve tempo.

Mônica: Quais são seus planos para 2022? Há algo em que você está se concentrando em particular?

Nishu: Estou mudando de emprego e me mudando para outro país. Vou trabalhar na Web em geral, melhorando o desempenho do site, e também no back-end, usando Golang. Continuarei me concentrando na área de desempenho da Web, já que ela é muito interessante e complexa, e há muito para entender e otimizar. Mesmo agora, depois de dedicar muito do meu tempo a isso, ainda há muito o que aprender. Por exemplo, eu adoraria entender como o uso de uma CDN para meus recursos de imagem poderia me ajudar a tornar meu aplicativo ainda mais rápido. Quero me tornar o especialista em desempenho da Web. Estou conquistando gradualmente, acredito que :)

Monika: Você mencionou que começou a escrever quando não era especialista, mas estava apenas escrevendo o que estava aprendendo. Qual seria seu conselho para novos desenvolvedores que estão chegando e sentem que não têm nada para compartilhar?

Nishu: Foi exatamente como eu me senti quando comecei a escrever. Achei que não devesse divulgar isso. Talvez esteja apenas errada? Eu tinha receio de que minha escrita não ia ajudar os leitores. Mas o importante é que minha escrita estava me ajudando. Eu esquecia algumas coisas depois de algum tempo e depois voltei a algo que escrevi antes. Escrever as coisas é uma ótima ideia.

O livro do Angular Routing em uma tabela.

Então, sugiro que todos escrevam em qualquer etapa. Mesmo que você tenha concluído apenas uma parte de um curso que está fazendo, você está aprendendo quando for anotando. Uma informação que você descobriu em algum momento pode ser útil para outras pessoas que ainda não sabem. Você não precisa ser especialista. Escrever vai ajudá-lo. E qualquer um, em qualquer estágio da carreira.

Monika: O melhor é seguir pessoas que acabaram de aprender algo, porque elas sabem tudo o que precisam saber. Depois de ser especialista, é difícil lembrar como era quando você era novo. E algum conselho para alguém que está começando a trabalhar com desenvolvimento da Web?

Nishu: muitas pessoas perguntam qual estrutura devem escolher no início, mas acho que essa não é a pergunta certa. O que aprendemos a qualquer momento também será útil em uma fase posterior. Aconselho qualquer pessoa a abandonar as limitações e começar com HTML ou JavaScript, porque isso será lucrativo no futuro.

Depois, aproveite qualquer oportunidade que surgir. Isso aconteceu comigo quando encontrei informações sobre o Almanaque da Web procurando autores. Eu só pensei: "Ah, isso é interessante, isso pode ajudar todos com relação ao desempenho". Foi assim que me tornei líder de conteúdo do capítulo JavaScript, que passei seis meses escrevendo. Então, acho que se trata de agarrar as oportunidades e trabalhar duro.

Monika: você tem alguma previsão ou ideia sobre o futuro da tecnologia da Web em geral? Qual será o próximo tema em alta? O que vai crescer rápido?

Nishu: Adoro o fato de podermos executar servidores em navegadores agora. Esse é um grande avanço. Por exemplo, a execução do Node.js no navegador foi introduzida recentemente. No entanto, antes não era possível executar nada sem ter o Node.js instalado em nossos sistemas. Agora podemos fazer qualquer coisa no navegador. Isso é um grande passo no ecossistema da Web. "E a OMT: fora da linha de execução principal". Trabalhar nos tópicos também será muito melhor. O Web Assembly está progredindo e possibilita que os desenvolvedores façam isso, e acho que esse é o futuro do ecossistema da Web.