Point fort de la communauté GDE: Nishu Goel

Nishu Goel est un ingénieur Web renommé en Inde, et Google Developer Expert pour Angular et les technologies Web. Elle nous a parlé de son engagement dans la communauté, de ses projets professionnels et des meilleurs moyens d'apprendre le développement Web.

Monika Janota
Monika Janota

Nishu sur scène.

Nishu Goel est un ingénieur Web renommé en Inde, Google Developer Expert pour Angular et les technologies Web, et Microsoft Most Valuable Professional. Elle est l'auteure de Step by Step Angular Routing (BPB, 2019) et de A Hands-on Guide to Angular (Educative, 2021), ainsi que du chapitre sur JavaScript de l'Almanach Web 2021. Nishu travaille actuellement chez epilot GmbH en tant qu'ingénieur full stack. Elle nous a parlé de son engagement dans la communauté, de ses projets professionnels et des meilleurs moyens d'apprendre le développement Web.

Monika: Commençons par votre histoire. Qu'est-ce qui vous a inspiré pour devenir développeur et jouer un rôle actif dans les communautés de développeurs ?

Nishu: J'ai obtenu ma licence en informatique. Nous avons étudié les structures de données, et c'est là que j'ai commencé à m'intéresser à la programmation. Au cours de ma troisième année d'ingénierie, j'ai établi un lien avec la communauté des développeurs en participant à la compétition nationale Microsoft Imagine Cup, où nous avons présenté des solutions via du code. L'idée de l'application que nous avons développée était de proposer des opportunités d'éducation aux élèves locaux, en particulier aux filles. J'ai rencontré des personnes très inspirantes, à la fois des participants et des organisateurs.

En 2018, ma carrière professionnelle a pris son envol et j'ai commencé à travailler avec Angular. Angular est devenu la technologie principale qui m'a permis de participer au programme GDE. À peu près à la même époque, j'ai commencé à écrire des articles de blog et à créer du contenu sur le sujet sur lequel je travaillais et que j'étudiais . Dhananjay Kumar m'a aidé à me lancer dans ce parcours et m'a assuré de rester sur la bonne voie. Mes premiers articles portaient sur les principes de base d'Angular. Peu de temps après, j'ai commencé à donner des conférences lors d'événements, dont la première était ngNepal, la conférence Angular du Népal. J'ai ainsi reçu davantage d'invitations à parler d'Angular et des technologies Web.

Nishu et d'autres membres de ng-india

Monika: Quelle est votre expérience professionnelle en matière de technologie ?

Nishu: Les deux premières années, nous n'avons travaillé que sur Angular et les composants Web. J'utilisais Angular pour créer des sites Web, mais j'ai rapidement 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 pour les utiliser dans d'autres frameworks.

La première chose que j'ai faite a été de créer des composants Web à l'aide d'Angular. Je l'ai publié sur npm et l'ai utilisé comme démonstration dans un projet React. J'en ai parlé dans certaines de mes conférences et présentations. Mon prochain emploi nécessitait d'utiliser React et TypeScript. Comme je travaillais avec React, je n'utilisais plus un seul framework, mais le Web en général. À ce moment-là, j'ai beaucoup appris sur le Web, en particulier sur ses performances. C'est là que j'ai commencé à penser au LCP (Largest Contentful Paint) ou au FCP (First Contentful Paint), qui correspond au temps de chargement de votre application ou au temps maximal de rendu de la page. J'ai travaillé à l'application des bonnes pratiques et à l'amélioration des performances des applications.

Cet intérêt pour les performances Web m'a amené à participer à l'Almanach Web et à écrire le chapitre sur JavaScript. L'Almanach Web est un rapport annuel sur l'état du Web en général. Il nous indique comment les internautes utilisent les 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>. Combien de sites Web les utilisent correctement, combien ne les utilisent pas du tout et combien les ont améliorés par rapport à 2020 ? Le dernier rapport Web Almanac indique qu'environ 35% des sites Web utilisaient deux attributs sur le même script, ce qui constitue un antimodèle qui réduit les performances. Ce problème a été signalé l'année dernière. Cette année, nous avons essayé de voir si la situation s'était améliorée. J'ai également participé à ngConf et au Reliable Dev Summit, où j'ai axé mon intervention sur les performances du Web.

Édition papier de l&#39;Almanach Web.

Monika: Vous êtes également très impliquée dans le soutien de la communauté. Vous avez récemment fait du bénévolat auprès d'une ONG ougandaise, YIYA. Comment est-elle née et quel était l'objectif principal de cette coopération ?

Nishu: Tout a commencé lorsque l'équipe GDE nous a informés de l'opportunité de bénévolat avec YIYA. L'ONG ougandaise cherchait des ingénieurs pour l'aider à préparer le contenu ou à mettre en place des fonctionnalités techniques. Le programme vise à autonomiser les enfants d'âge scolaire en Ouganda et à leur offrir des opportunités d'éducation à l'aide des technologies disponibles localement (pas d'ordinateurs ni de manuels, mais des téléphones et des radios basiques). Les enfants devaient composer un numéro pour recevoir un ensemble d'informations, puis un autre pour obtenir plus d'informations, etc. Elle est devenue encore plus utile pendant la pandémie.

J'ai toujours été impliqué dans la communauté et les objectifs de développement durable, alors j'ai décidé de vous contacter. Après une réunion avec l'équipe YIYA, j'ai proposé de l'aide pour les scripts Python ou les bugs qu'ils ont détectés, ou tout problème lié au portail. Nous avons travaillé ensemble pendant une courte période.

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

Nishu: Je change de travail et je déménage dans un autre pays. Je travaillerai sur le Web en général, en améliorant les performances du site, et également sur le backend, à l'aide de Golang. Je vais continuer à me concentrer sur les performances Web, car ce domaine est très intéressant et complexe, et il y a beaucoup à comprendre et à optimiser. Même maintenant, après avoir consacré beaucoup de temps à ce domaine, il y a encore beaucoup à apprendre. Par exemple, j'aimerais comprendre comment utiliser un CDN pour mes ressources d'images m'aiderait à rendre mon application encore plus rapide. Je veux devenir LE spécialiste des performances Web. Je progresse petit à petit, j'aime à le croire :)

Monika: Vous avez mentionné avoir commencé à écrire à un moment où vous n'étiez pas experte, mais que vous écriviez simplement ce que vous appreniez. Quel conseil donneriez-vous aux nouveaux développeurs qui pensent n'avoir rien à partager ?

Nishu: C'est exactement ce que j'ai ressenti lorsque j'ai commencé à écrire. Je me suis demandé si je ne devais pas publier cette information. Peut-être que c'est juste une erreur ? J'avais peur que mon écriture ne soit pas utile aux lecteurs. Mais l'essentiel était que l'écriture m'aidait. Je perdais des informations au bout d'un certain temps, puis je revenais sur ce que j'avais écrit plus tôt. C'est une excellente idée.

Livre &quot;Angular Routing&quot; sur une table.

Je recommande donc à tout le monde d'écrire, à n'importe quel stade. Même si vous n'avez terminé qu'une partie d'un cours, vous apprenez en le notant. Une information que vous avez apprise à un moment donné peut être utile à d'autres personnes qui ne la connaissent pas encore. Vous n'avez pas besoin d'être un expert. La rédaction vous aidera. Et pour tous, à n'importe quel stade de leur carrière.

Monika: Il est préférable de suivre des personnes qui viennent d'apprendre quelque chose, car elles connaissent toutes les choses qu'elles ont dû comprendre. Une fois que vous êtes devenu un expert, il est difficile de vous souvenir de ce que vous ressentiez lorsque vous débutiez. Avez-vous des conseils à donner à quelqu'un qui commence tout juste à se lancer dans le développement Web ?

Nishu: De nombreuses personnes se demandent quel framework choisir au début, mais je pense que ce n'est pas la bonne question. Tout ce que nous apprenons à un moment donné doit également être utile à un stade ultérieur. Je recommande à tous de ne pas se limiter et de commencer par HTML ou JavaScript. Cela sera rentable à l'avenir.

Saisissez ensuite toutes les opportunités qui se présentent à vous. C'est ce qui m'est arrivé lorsque j'ai découvert des informations sur l'Almanach Web à la recherche d'auteurs. Je me suis dit : "Oh, c'est intéressant, cela peut aider tout le monde à améliorer les performances." C'est ainsi que je suis devenu responsable de contenu pour le chapitre sur JavaScript, et j'ai passé six mois à l'écrire. Je pense qu'il suffit 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 sera le prochain sujet à la mode ? Quels sont les éléments qui vont croître rapidement ?

Nishu: J'apprécie le fait que nous puissions désormais exécuter des serveurs dans les navigateurs. C'est un grand progrès. Par exemple, l'exécution de Node.js à partir du navigateur a été introduite récemment. Auparavant, nous ne pouvions rien exécuter sans avoir Node.js installé dans nos systèmes. Nous pouvons désormais tout faire depuis le navigateur. Il s'agit d'une avancée majeure dans l'écosystème Web. Et l'OMT (Off the Main Thread). Le travail sur les threads sera également beaucoup amélioré. Web Assembly progresse et permet aux développeurs de le faire. Je pense que c'est l'avenir de l'écosystème Web.