Nous vous présentons le parcours d’Éric, Développeur Fullstack, Consultant issue des Mines de Saint-Étienne – cycle ISMIN, où il a suivi une majeure en informatique, option cybersécurité.
Bonjour Eric, si tu nous expliquais brièvement ton expérience en tant que stagiaire avant de nous rejoindre en CDI ?
J’ai rejoint Global Market Solutions pour mon stage de fin d’études. Durant mon cursus scolaire, j’avais pu avoir des expériences liées à la finance et c’est à travers cette appétence que j’ai cherché à mettre mes compétences en informatique au service de clients évoluant dans le secteur de la finance de marché.
Mon stage s’est structuré en deux phases : une première d’un mois, où j’ai suivi une formation en interne sur la solution ActivePivot, encadrée par un Consultant Senior de GMS. J’ai pu aussi avoir l’opportunité de suivre des sessions de workshops dispensées par l’équipe R&D d’ActiveViam, l’éditeur de cette solution, ayant pour objectif de comprendre leur solution d’interface Active UI 5 et savoir comment la personnaliser.
Une fois cette formation terminée, j’ai rejoint, pour le reste de mon stage, un projet chez un client, où j’ai été principalement impliqué dans le développement de l’interface. Certaines tâches étaient plus difficiles que d’autres mais j’ai pu évoluer dans un cadre bienveillant et monter en compétences grâce aux conseils qu’ont pu me partager mes collègues.
« L’objectif du développeur Fullstack est de pouvoir être un vrai couteau suisse et de pouvoir apporter son expertise autant sur des problématiques frontend que backend »
Peux-tu nous parler de ton métier et nous expliquer quel est le rôle d’un Développeur Fullstack ?
L’objectif du projet est de mettre en place la solution ActivePivot / Active UI, comme outil d’analyse de données.
Lorsque j’ai rejoint le projet, il y avait un fort besoin sur le développement de l’interface. Ainsi, dans un premier temps, j’ai donc participé à la création des widgets personnalisés, de tableaux de bords, à des fins de reporting et de WhatIf simulations notamment.
Maintenant que les principales attentes de la première phase du projet ont été atteintes, je suis en charge de maintenir le code UI et de le faire évoluer avec les mises à jour mensuelles d’Active UI. Je suis aussi impliqué dans l’ajout de nouvelles fonctionnalités serveur pour sauvegarder des rapports générés par les utilisateurs et leur permettre de se les partager.
Enfin, une partie de mes journées sont aussi dédiées à la correction de bugs. C’est ici que la compréhension globale du code : de son implémentation côté serveur, à son rendu côté interface, revêt sa plus grande importance à mon sens. En effet, il est plus facile de cerner la cause du problème et de le corriger.
L’objectif du développeur Fullstack est de pouvoir être un vrai couteau suisse et de pouvoir apporter son expertise autant sur des problématiques frontend que backend.
Est-ce que tu pourrais nous donner un exemple concret de bug que tu as résolu ?
Généralement, la plupart des incidents signalés est assez rapide à résoudre. Toutefois, il m’est en effet arrivé d’avoir à investiguer plusieurs jours d’affilé sur des problèmes plus épineux. Je me souviens en particulier d’une erreur liée à une activité de reporting. L’idée était de pouvoir planifier l’exécution des lourdes requêtes sur les données et d’en stocker les résultats sur un .csv.
La fonctionnalité avait été testée avec succès jusqu’au jour où, à première vue sans aucune modification du code, elle n’avait plus le comportement espéré : seules certaines requêtes étaient exécutées puis une erreur peu explicite apparaissait et stoppait l’exécution. Après de nombreux essais, nous avons pu identifier la cause : sur la solution ActivePivot, les données sont dynamiques et le Cube contenant les données est régulièrement mis à jour, ce qui se traduit par une nouvelle version. Lors des premiers tests, les durées d’exécution étaient plus courtes que celles en production et le Cube ne changeait pas de version. Toutefois, avec des requêtes plus lourdes, il arrivait que le Cube soit mis à jour et que la version prise par notre fonctionnalité pour accéder aux données ne soit plus la bonne, ou pire, qu’elle ait été supprimée.
Finalement le problème a pu être corrigé assez vite suite à cette découverte mais nous avions passé énormément de temps à investiguer pour en identifier sa cause !
« Pouvoir combler le fossé entre le développement frontend et backend permet une approche unique »
Qu’est ce qui te plait le plus dans ton métier de Développeur Fullstack ?
J’apprécie particulièrement la double compétence qui y est attachée. Un développeur Fullstack doit avoir les connaissances techniques suffisantes pour pouvoir implémenter une fonctionnalité dans sa totalité, c’est-à-dire de la logique définie côté serveur à la façon dont l’utilisateur va pouvoir interagir avec, en passant par la communication serveur-interface. Cela implique donc davantage d’efforts pour se maintenir à jour mais le fait de pouvoir ainsi combler le fossé entre le développement frontend et backend permet une approche unique. Ainsi, lors de l’implémentation d’une solution IT, il est possible de travailler sur chaque aspect du projet et je trouve cela très gratifiant. Enfin, je finirai en mettant en avant que cette vision globale, plus facilement acquise en étant Fullstack, permet aussi de pouvoir répondre plus facilement aux interrogations du client et de trouver un design adapté aux besoins.
« C’est une entreprise à taille humaine où l’ambiance est vraiment très conviviale ! »
Es-tu heureux d’avoir rejoint GMS ?
Tout à fait !
J’ai décidé de rejoindre GMS suite à mon stage de fin d’études : l’expérience que j’avais pu avoir était très positive ! C’est une entreprise à taille humaine où l’ambiance est vraiment très conviviale ! Un accent est mis sur la formation et de nombreuses ressources sont mises à notre disposition pour monter en compétences et préparer au mieux les missions à venir. Enfin, j’apprécie la confiance qu’on m’a accordée : j’ai pu notamment participer au recrutement des futurs stagiaires, ainsi qu’au forum école de l’ISMIN pour présenter mon parcours aux futurs diplômés !