Revenir aux actualités des développeurs

À la rencontre des développeur·ses : édition React @ Meta (Vitalii Topoliuk)

28 juin 2023DeSuraj Subramanian

Cet article a été rédigé en collaboration avec Vitalii Topoliuk, ingénieur logiciel chez Meta et Sean Keegan, représentant des équipes de développement chez Meta également.

Aujourd’hui, nous nous entretenons avec Vitalii Topoliuk, ingénieur logiciel pour l’application de bureau Messenger chez Meta. L’équipe de Vitalii travaille sur la version bureau de Messenger, qui permet de passer des appels et d’envoyer des messages directement sur ordinateur.

Parlez-nous un peu de vous.

Je m’appelle Vitalii Topoliuk et je suis ingénieur logiciel pour l’application de bureau Messenger. Nous développons une version de l’application Messenger pour Windows et macOS depuis trois ans, et cela fait deux ans que nous utilisons React Native.

Quelle place occupe React dans le fonctionnement de la version de bureau de Messenger ?

Notre application repose sur le framework de React Native.

Parmi les projets sur lesquels vous avez travaillé chez Meta, lesquels font appel à React ?

L’application de bureau Messenger et les projets dérivés : Work Chat et Workrooms sur ordinateur.

Pourquoi votre équipe a-t-elle choisi d’utiliser React et comment son utilisation vous aide-t-elle, vous et votre équipe, à atteindre vos objectifs de développement ?

Nous avons créé notre application avec le framework Electron, qui nous a permis de démarrer sur de bonnes bases. Malheureusement, nous avons vite atteint la capacité d’Electron, ce qui nous a contraints à réaliser de lourds investissements pour respecter nos engagements en matière de performances, de fiabilité et d’efficacité (PFE). D’autre part, les fonctionnalités de notre application étaient limitées par Electron.

Qu’est-ce qui vous a enthousiasmé ou dont vous êtes incroyablement fier ces derniers temps ?

En adoptant React Native, nous avons résolu de nombreuses problématiques de PFE, tout en améliorant significativement l’expérience de nos développeur·ses. React Native nous a permis de réutiliser 80 % de notre base de code et d’obtenir de bien meilleurs résultats PFE. Vous trouverez ci-dessous quelques-uns de ces résultats obtenus simplement en passant à React Native, sans autre investissement PFE, par rapport aux résultats que nous avions obtenus avec l’application basée sur Electron sur trois mois :

Application Windows :

Étendue des plantages : -60 %

Taux de réussite des démarrages à froid : 97 % (88 % pour Electron)

Latence P90 des démarrages à froid : -50 %

Taille binaire : -80 %

Application MacOS :

Étendue des plantages : +59 %

Taux de réussite des démarrages à froid : 99 % (95 % pour Electron)

Latence P90 des démarrages à froid : -60 %

Taille binaire : -70 %

Quel aspect de votre travail est le plus excitant dans le fait d’être développeur React dans une entreprise comme Meta ?

Chez Meta, nous avons l’occasion de montrer à la communauté que React Native peut être utilisée pour créer des applications de bureau multiplateformes.

Qu’attendez-vous avec impatience dans le développement à venir de React ?

J’espère qu’à terme, React Native remplacera Electron mais, pour ce faire, des améliorations doivent être apportées au framework pour inclure davantage d’outils de production de bout en bout. Par exemple, Electron n’est pas qu’une simple interface pour les applications web : le framework contient des outils pour créer des programmes d’installation, des outils de mise à jour automatique, des rapports de plantage, etc.


Nous tenons à remercier Vitalii d’avoir pris le temps de nous accorder cet entretien. Il a été très intéressant de découvrir comment React permet d’améliorer des applications majeures, à quel point il est possible d’apprendre de tout ce que nous développons chez Meta et la manière dont nous contribuons en retour à la communauté React. Nous espérons que cet entretien vous a été utile et qu’il vous a donné un aperçu de la manière dont React est utilisée chez Meta. Lisez les prochains entretiens de notre blog, dans lesquels nous rencontrerons d’autres ingénieur·es de Meta et écouterons leurs réflexions sur le sujet.

À propos de notre série À la rencontre des développeur·ses : édition React @ Meta

React est l’un des projets open source les plus populaires et a toujours été classé parmi les cadres web les plus appréciés au cours des dernières années. Chez Meta, nous pensons que React est une bibliothèque exceptionnelle qui aide les développeur·ses à créer facilement des interfaces d’utilisation à grande échelle. Utilisée par des millions de développeur·ses dans le monde entier, dans tous les domaines, des simples sites web aux applications d’entreprise, React est une bibliothèque open source qui a sa place auprès de chacun.

Ce blog fait partie de notre série À la rencontre des développeur·ses, au cours de laquelle nous invitons les ingénieur·es de Meta qui utilisent régulièrement React à partager leurs expériences et à nous parler des produits étonnants qu’ils développent. Lisez les prochains entretiens de notre blog, dans lesquels nous rencontrerons d’autres ingénieur·es et écouterons leurs réflexions sur le sujet.

Pour en savoir plus sur Meta Open Source, consultez notre site Open Source, abonnez-vous à notre chaîne YouTube, ou suivez-nous sur Twitter, Facebook et LinkedIn.