Point fort de la communauté GDE: Nishu Goel

Nishu Goel est un célèbre ingénieur Web indien, et expert Google Developers pour les technologies Web et Angular. Elle nous a parlé de son implication dans la communauté, de ses projets de carrière et des meilleures façons d'apprendre le développement Web.

Monika Janota
Monika Janota

Nishu sur scène.

Nishu Goel est un célèbre ingénieur Web indien. Il est également expert Google pour les technologies Web et Angular, et Microsoft Most Valuable Professional. Elle est l'auteur de Step by Step Angular Routing (BPB, 2019) et de A Hands-on Guide to Angular (Guide pédagogique, 2021). Elle est également l'auteure du chapitre Web Almanac 2021 sur JavaScript. Nishu travaille actuellement chez epilot GmbH en tant qu'ingénieur full stack. Elle nous a parlé de son implication dans la communauté, de ses projets de carrière et des meilleures façons d'apprendre le développement Web.

Monika: Commençons par ton histoire. Qu'est-ce qui vous a poussé à devenir développeur et à agir activement au sein des communautés de développeurs ?

Nishu: J'ai obtenu une licence en informatique et nous avons étudié les structures de données. C'est là que tout a commencé pour la programmation. Au cours de la troisième année d'ingénierie, un lien avec la communauté des développeurs s'est établi grâce à ma participation au concours Microsoft Imagine Cup Nationals, au cours duquel nous avons présenté des solutions par le biais du code. L'idée de l'application que nous avons développée était d'offrir des opportunités éducatives aux élèves de la région, en particulier aux filles. Au cours de cette aventure, j'ai rencontré des personnes très inspirantes, aussi bien des organisateurs que des participants.

En 2018, ma carrière professionnelle a décollé et j'ai commencé à travailler avec Angular. Angular est devenu la principale technologie qui m'a connecté au programme GDE. À peu près au même moment, j'ai commencé à écrire des articles de blog et à créer du contenu sur le sujet sur lequel je travaillais et que j'apprenais . Dhananjay Kumar m'a aidé à me lancer et m'a permis de rester sur la bonne voie. Mes premiers articles abordaient les bases d'Angular. Peu de temps après, j'ai commencé à prendre la parole lors d'événements, le premier étant le ngNepal, la conférence Angular du Népal. Cela a conduit à des invitations à parler davantage d'Angular et des technologies Web.

Nishu et d'autres habitants du ng-india.

Monika: Quelle est votre expérience professionnelle du point de vue technologique ?

Nishu: Pendant les deux premières années, tout s'est concentré sur Angular et les composants Web. J'utilisais Angular pour créer le Web, mais j'ai vite décidé d'aller plus loin et d'explorer d'autres domaines. Je ne voulais pas me limiter au cas où je devrais changer de projet. C'est ainsi que j'ai commencé à créer des composants Web dans Angular afin de les utiliser dans d'autres frameworks.

J'ai commencé par créer des composants Web à l'aide d'Angular. Je l'ai publié sur npm et je l'ai utilisé comme démonstration dans un projet React. J'en ai parlé lors de certaines de mes conférences et de mes présentations. Mon prochain emploi a nécessité l'utilisation de React et TypeScript. Comme je travaillais avec React, je n'utilisais plus seulement un framework, mais le Web en général. À ce moment-là, j'ai beaucoup appris sur le Web, en particulier sur les performances Web. C'est à ce moment-là que j'ai dû commencer à réfléchir aux Largest Contenful Paint (LCP) ou First Contentful Paint (FCP), c'est-à-dire le temps nécessaire au chargement de votre application ou le temps maximal pour que la page s'affiche. Je me suis efforcé de choisir les bonnes pratiques et d'améliorer les performances des applications.

En raison de cet intérêt pour les performances Web, j'ai commencé à travailler sur l'almanach Web et j'ai rédigé le chapitre sur JavaScript. "Web Almanac" est un rapport annuel sur l'état du Web en général. Il nous indique comment les internautes utilisent différentes fonctionnalités. L'année dernière, 8,6 millions de sites Web ont été examinés, et les données ont été analysées et présentées dans le rapport. Le rapport inclut des statistiques telles que l'utilisation des attributs async et defer dans un élément <script>. Le nombre de sites Web qui les utilisent correctement, qui ne les utilisent pas du tout et qui les a améliorés par rapport à 2020 Le dernier rapport "Web Almanac" indiquait qu'environ 35% des sites Web utilisaient deux attributs sur le même script. Il s'agissait d'un anti-modèle, ce qui entraînait une baisse des performances. Nous l'avons souligné l'année dernière, et cette année, nous avons essayé de voir si la situation s'était améliorée. J'ai également pris la parole lors du ngConf et du Reliable Dev Summit, où je me suis concentré sur les performances du Web.

Version papier de l&#39;Almanach du Web.

Monika: Par ailleurs, tu t'investis vraiment dans le soutien que tu peux apporter à la communauté. Dernièrement, vous avez fait du bénévolat pour une ONG ougandaise YIYA. Comment cela a-t-il commencé et quel a été le principal point de cette coopération ?

Nishu: Tout d'abord, l'équipe GDE nous a présenté la possibilité de faire du bénévolat avec YIYA. L'ONG ougandaise recherchait des ingénieurs pour l'aider à préparer le contenu ou à réaliser les tâches techniques. Le programme vise à responsabiliser les enfants d'Ouganda en âge d'aller à l'école et à leur offrir des opportunités d'éducation à l'aide des technologies disponibles localement, et non les ordinateurs ou les manuels scolaires, mais plutôt les téléphones et radios de base dotés d'un clavier. Les enfants composaient un certain numéro et recevaient un ensemble d'informations, en composaient un autre pour plus d'informations, et ainsi de suite. Il est devenu encore plus utile pendant la pandémie.

Comme j'ai toujours été impliqué dans la communauté et les objectifs de développement durable, j'ai décidé de me contacter. Après une réunion avec l'équipe YIYA, j'ai proposé mon aide concernant les scripts Python, les bugs qu'elle avait rencontrés, les problèmes sur le portail. Nous avons travaillé ensemble pendant un court laps de temps.

Monika: Quels sont vos projets pour 2022 ? Y a-t-il quelque chose sur lequel vous vous concentrez en particulier ?

Nishu: Je change d'emploi et je déménage dans un autre pays. Je vais travailler sur le Web en général, pour améliorer les performances du site, ainsi que sur le backend, à l'aide de Golang. Je vais me concentrer sur les performances Web, car elles sont très intéressantes et complexes, et qu'il y a beaucoup de choses à comprendre et à optimiser. Même maintenant, après y avoir consacré beaucoup de temps, il reste encore beaucoup à apprendre. Par exemple, j'aimerais comprendre en quoi l'utilisation d'un CDN pour mes ressources image pourrait m'aider à rendre mon application encore plus rapide. J'aimerais devenir L'expert en performances Web. J'y progresse progressivement, j'ai envie de le croire :)

Monika: Vous avez mentionné que vous commenciez à écrire à un moment où vous n'étiez pas une experte, mais seulement ce que vous appreniez. Quel conseil donneriez-vous aux nouveaux développeurs qui ont l'impression de n'avoir rien à partager ?

Nishu: C'est exactement ce que je ressentais quand j'ai commencé à écrire. Je me suis dit que je ne devrais peut-être pas mettre ça en ligne ? C'est peut-être tout simplement faux ? J'avais peur que mes écrits n'aident pas les lecteurs. Mais le plus important, c'est que mon écriture m'aidait. J'oubliais certaines choses après un certain temps, puis je revenais à quelque chose que j'avais écrit plus tôt. Noter les choses est une excellente idée.

Le routage Angular du livre sur une table

Je conseille donc à tout le monde d'écrire, à n'importe quelle étape. Même si vous n'avez terminé qu'une seule partie d'un cours que vous suivez, vous apprenez en la notant. Une information que vous avez acquise à un moment donné peut être utile à d'autres personnes qui ne le connaissent pas encore. Pas besoin d'être un expert. L'écriture vous aidera. Et pour tout le monde, à tout moment de leur carrière.

Monika: Mieux vaut suivre des personnes qui viennent d'apprendre quelque chose, car elles savent tout ce qu'elles ont dû comprendre. Une fois un expert, il est difficile de se souvenir de ce qu'était la nouvelle. Avez-vous des conseils à donner à quelqu'un qui vient tout juste de se lancer dans le développement Web ?

Nishu: De nombreuses personnes s'interrogent sur le cadre qu'elles doivent choisir au début, mais je pense que ce n'est pas la bonne question. Tout ce que nous apprenons à un moment donné devrait également être utile à un stade ultérieur. Je conseillerais à quiconque de renoncer aux limites et de commencer avec HTML ou JavaScript, car cela sera rentable à l'avenir.

et profiter de toute opportunité qui se présente à vous. C'est ce qui m'est arrivé lorsque je suis tombée sur des informations sur l'almanach du Web à la recherche d'auteurs. Je me suis dit : "C'est intéressant, cela peut aider tout le monde sur le plan des performances". C'est ainsi que je suis devenue responsable du contenu pour le chapitre consacré à JavaScript, et j'ai passé six mois à le rédiger. Je pense qu'il s'agit simplement de saisir les opportunités et de travailler dur.

Monika: Avez-vous des prédictions ou des idées sur l'avenir de la technologie Web en général ? Quel est le prochain sujet d'actualité ? Qu'est-ce qui va se développer rapidement ?

Nishu: J'apprécie beaucoup le fait de pouvoir désormais faire fonctionner des serveurs dans des navigateurs. C'est une grande avancée. Par exemple, depuis peu, l'exécution de Node.js à partir du navigateur a été introduite. Auparavant, il était impossible d'exécuter quoi que ce soit sans l'installation de Node.js dans nos systèmes. Maintenant, nous pouvons faire tout ce que vous voulez depuis le navigateur. C'est un pas de plus vers l'écosystème Web. Et l'OMT : en dehors du thread principal. Nous allons également améliorer considérablement le travail sur les threads. Web Assembly progresse et permet aux développeurs de le faire. Je pense que c'est l'avenir de l'écosystème Web.