
© Susan Q Yin via Unsplash
L'enquête métier
L’enquête métier constitue souvent la première étape vers la reconversion pour devenir développeur. Pas simple à faire si l’on ne connaît pas de développeur ou de développeuse dans son entourage. Formulaire un peu rébarbatif, elle sert surtout de base à un échange avec un professionnel.
Après avoir réalisé l’exercice avec 4 futur(e)s développeurs ou développeuses, il est temps pour moi de mettre à plat les réponses à ces questions, que toutes les personnes en cours de reconversion doivent se poser à un moment ou à un autre.
J’ai essayé de regrouper les réponses par thématique, et nous allons commencer par une présentation rapide.
Présentation
Dénomination du poste / Spécialité : Développeur web full stack
Nom de l’entreprise/structure : Max Digital Services.
Pouvez-vous me présenter l’entreprise dans laquelle vous travaillez ? (Objet, services, nombre de salarié(e)s, existence depuis………)
Max Digital Services est une société de services rennaise qui compte une trentaine de salariés. Cette entreprise fêtera ses 10 ans d’existance l’année prochaine. Elle suit le modèle de l’entreprise libérée, avec un fort investissement de ses salariés à tous les niveaux, du recrutement (oui oui, les devs recrutent d’autres développeurs) aux talks qui sont organisés à l’agence.
Entrons maintenant dans le vif du sujet et dans le quotidien d’un développeur.
Le métier
Difficile de donner une description générique, le fonctionnement de chacune des équipes auquel j’ai appartenu étant différent.
Une semaine type (dans ma mission actuelle) comporte un point de suivi spécifique au projet sur lequel on travaille, ainsi que 2 points d’avancement concernant tous les projets de l’équipe. Le point de suivi permet de synchroniser le développement entre front-end et back-end. La plus grande part de mon temps est consacrée au développement de nouvelles fonctionnalités, ainsi qu’aux tests et vérifications que nous effectuons. Une autre partie de mon temps est consacrée au déploiement de mon projet ainsi qu’à la gestion des environnements et bases de données associées.
Autre tâche à laquelle je m’attèle depuis quelques semaines dans ma mission, la relecture de code. Chaque développement doit nécessairement être relu avant d’être intégré à l’application à laquelle il appartient. Les développeurs d’une équipe se relisent les uns les autres afin d’éviter la mise en production d’un code ne répondant pas aux bonnes pratiques, ou utilisant des éléments dépréciés d’un framework.
Ce n’est pas le cas dans ma mission actuelle, mais j’ai souvent rédigé et/ou réalisé des campagnes de tests pour d’autres développeurs de mon équipe.
Les compétences
Les compétences requises pour effectuer le métier de développeur sont variées, et ne sont pas exclusivement des compétences techniques.
Qualités de réflexion
Le métier de développeur requiert les qualités suivantes :
- une bonne logique
- une forte capacité d’abstraction
- une bonne capacité d’apprentissage
Comme dit plus haut, sans qualités humaines le métier de développeur serait très compliqué, voire impossible. L’image du nerd enfermé dans sa cave au teint plus pâle qu’un vampire est moins vraie qu’elle n’a pu l’être à une certaine époque.
Qualités humaines
Être développeur nécessite des qualités humaines comme :
- l’écoute (compréhension du besoin client, acceptation des commentaires/revirements du client etc.).
- la communication (que ce soit avec le responsable de votre projet ou le client pour lequel vous travaillez, vous devrez communiquer afin d’avancer ensemble).
- l’esprit d’équipe (l’entraide est de mise, vous pouvez compter sur les autres autant que les autres comptent sur vous, à niveau équivalent bien entendu).
Toutes ces qualités sont fondamentales pour travailler à plusieurs sur un même projet et tirer le meilleur parti des qualités de chacun.
Qualités techniques
Logique et compétences en communication ne font pas tout, il faut bien entendu maîtriser les technologies sur lesquelles vous travaillez ainsi que les bonnes pratiques en matière de code afin de fournir un travail de qualité et des applications robustes, organisées et maintenables.
L’un de mes anciens collègues se reconnaîtra dans cette phrase qu’il évoquait souvent : “Code comme si ton successeur était un psychopathe qui connaît ton adresse.""
Les avantages du métier de développeur
L’un des aspects du métier de développeur qui me plaît le plus est l’impression de pratiquer une forme de magie. J’écris des lignes de code qui génèrent une interface au sens visuel du terme, j’ai beau être développeur depuis 4 ans maintenant, j’ai toujours cette forme d’émerveillement devant les changements engendrés dans l’apparence d’une page par des modifications dans mon code.
Par ailleurs, le renouvellement régulier des problématiques rencontrées est plaisant. Si je devais refaire tous les 2 mois la même chose, je tournerais en rond, et c’est d’ailleurs la raison qui m’a poussé à quitter le support informatique pour devenir développeur.
Et, même si la recherche d’un bug peut jouer avec mes nerfs et être difficile, j’ai rarement trouvé plus satisfaisant intellectuellement que l’instant auquel on se dit “C’est bon, j’ai compris !”. C’est en quelque sorte mon adrénaline à moi.
Les tâches moins plaisantes
Je ne peux pas dire que j’aime rédiger des scénarii de tests, ni réaliser les campagnes de test. C’est quelque chose qui semble aller tout droit mais qui recèle en réalité énormément de pièges, de cas particuliers, non gérés, qui échappent facilement à une campagne de test pour peu qu’on ne s’écarte pas trop du chemin proposé par les scénarii de tests.
Au rang des choses après lesquelles je ne cours pas je dirais également les phases de mise en production (MEP). Moment de toutes les incertitudes, avec des conséquences imprévisibles, les situations de crises que j’ai pu vivre suite à des MEP calamiteuses m’ont dégoûté durablement de cet exercice.
Les conditions de travail
Développeur tel que je le suis, les conditions de travail sont excellentes. J’ai des horaires de bureau (8h30-17h), avec une grande flexibilité (pratique quand on a des enfants 😅), et le matériel m’est fourni. Qu’il s’agisse de l’ordinateur, des accessoires (souris, clavier, support) ou des écrans, ils vous sont fournis.
Seul bémol, selon les endroits on peut hériter d’une machine asthmatique et devoir la subir un moment avant de pouvoir en changer.
Je travaille (actuellement) en binôme avec un développeur front (Angular) tandis que je travaille sur du C# (.Net Core). Mon entreprise m’a permis de participer une formation sur Angular, afin d’ouvrir la voie vers un profil fullstack me concernant.
Je bénéficie de télétravail à raison de 2 jours par semaine. Je n’ai pas de contraintes quant aux jours sur lesquels je souhaite me mettre en télétravail. Je n’ai pas de déplacements à effectuer, mais je sais que cela peut arriver à certains collègues.
En terme de rémunération je suis actuellement aux alentours de 36 000 € brut par an. Il faut noter qu’il existe une grande variabilité dans les salaires à expérience égale, même au sein d’un même bassin d’emploi. Par ailleurs, il existe aussi de grandes disparités d’une région à une autre. Rennes a pour réputation d’avoir des TJM (taux journalier moyens) bas par rapport à beaucoup d’autres endroits en France.
Le recrutement
Quel est le type de recrutement généralement utilisé ? Dans les ESN, on distingue 2 types de recrutements principaux, sur profil et sur mission. Le recrutement sur profil correspond à un pari sur vous et votre CV, dans l’idée de vous trouver une mission qui corresponde. Le recrutement sur mission part du principe que votre CV correspond à une mission que vous cherchez à pourvoir.
Là où le recrutement sur profil est risqué, c’est que votre embauche peut être suivie d’une longue période d’intercontrat, pendant laquelle vous ne rapportez rien à votre entreprise. A l’inverse, le recrutement sur mission assure que vous rapportiez à votre entreprise dès votre arrivée.
Le niveau de formation
J’ai un diplôme de Concepteur Développeur d’Applications de niveau bac + 4, réalisé en formation continue sur 8 mois de cours + 2 mois de stage.
Quelle formation choisir ?
Vu l’état actuel du marché, je dirais qu’il est plus que jamais important de se tourner vers des organismes de formations connus dans votre secteur géographique. Un organisme de formation inconnu dans votre secteur fera immanquablement passer votre CV aux oubliettes.
S’il faut classer les diplômes par leur “capacité” à vous rendre désirable auprès des entreprises, je dirais que le bac + 2 ne vous fera pas réellement faire du développement, mais plutôt du test, de la maintenance. Le bac + 4 que j’ai passé est désormais un bac + 3, donc une équivalence de licence si on se réfère au système LMD. Rares sont ceux qui, dans les universités trouvent du travail avec une licence dans leur domaine, j’aurais donc tendance à préconiser de faire un bac + 5 (qui vous fera passer toutes les étapes de toute manière), et en alternance afin d’acquérir de l’expérience (même si tous les recruteurs/recruteuses ne comptent par forcément l’alternance comme une véritable expérience).
Des personnes, institutions, ressources à consulter
Multiplier les personnes consultées ne peut pas faire de mal, et vous donnera des points de vue divers sur le métier que vous envisagez. Cela vous permettra de réduire les “angles morts”, ces aspects d’un métier qu’on ne soupçonnait pas avant de le pratiquer.
La carrière
Parmi les nombreuses questions qu’on rencontre quand on passe des entretiens, se présente toujours la fameuse question “Où vous voyez-vous dans 5 ans ?”, celle-là même qu’on retrouve dans l’enquête métier qu’on demande aux aspirants développeurs. A peine envisagent-ils un nouveau métier qu’on leur demande déjà d’envisager la suite.
Il faut savoir que le métier de développeur ne ferme pas de portes, comme bien des métiers il est possible de dériver de la case dans laquelle on s’est installé. A ma connaissance, les développeurs peuvent évoluer vers les métiers suivants :
- devops (oui c’est pas exactement un métier lit-on parfois… Dans mon quotidien les devops font du devops, les développeurs développent).
- leader technique ou tech lead selon qu’on parle français ou franglais (vous êtes le premier interlocuteur quand un équipier bloque sur son travail. Vous êtes l’un des artisans des grandes évolutions sur les projets qui vous concernent, et travaillez parfois également sur l’architecture logicielle globale de vos systèmes)
- fonctionnel, exit le code, vous devenez celui qui recueille le besoin du client (interne ou externe) et le traduit en unités fonctionnelles, de manière à pouvoir le développer morceaux par morceaux.
Par rapport à mes débuts ma position à ce sujet n’a pas changé, d’abord j’aimerais maîtriser mon art, ce qui au bas mot me prendra une petite dizaine d’années, ensuite on verra. En tout cas, gardez bien en tête que développeur n’est pas une case sans issue de sortie ou sans évolution.
Conclusion
Si je devais résumer mon métier en 3 ou 4 mots-clés, j’évoquerais ceci :
- curiosité : c’est il me semble la qualité primordiale d’un développeur, et ce qui fait le sel de ce métier.
- inventivité : tous les jours de nouvelles problématiques apparaissent, devant lesquelles il faut faire preuve d’inventivité afin de leur apporter une solution cohérente, viable et maintenable.
- conception : construire le modèle objet d’une application, le transposer au niveau d’une base de données, autant de choses fondamentales qui sont de notre ressort, tout comme l’apparence des applications, qui repose partiellement sur nos points de vue etc.
- communication : primordiale dans la réalisation d’un projet, elle permet de mettre en harmonie les idées du client avec une solution technique cohérente et adaptée aux besoins du client. Sans elle, allers-retours infructueux seront au rendez-vous et le développement d’un projet sera d’autant plus complexe.
Cet article vous a plu ? Contactez-moi sur LinkedIn 😉 !