Découvrez un métier: Programmeur Java

Ce mois-ci, nous découvrons un métier très recherché en ce moment par les entreprises québécoises, celui de programmeur (ou développeur) Java.

Yannick Gendron, programmeur Java principal pour le site d’annonces classées LesPAC, nous parle de son métier dans les moindres détails!

Jobboom : En quoi consiste le métier de Programmeur Java?

Yannick Gendron : Le rôle principal d’un programmeur Java, comme n’importe quel programmeur, est de créer des fonctionnalités pour des sites web ou des logiciels. Il traduit les désirs des équipes de conception dans un langage que les ordinateurs comprendront.

Il assure aussi la maintenance du code informatique au fil de ses évolutions et teste ses améliorations même si elles doivent passer entre les mains des testeurs en assurance qualité. 

Il peut aussi réaliser des analyses techniques ou fonctionnelles afin de découvrir et de prioriser les améliorations futures à apporter à la plateforme web ou au logiciel dont il a la charge.

JB : Quelle est la différence entre un programmeur Java et un autre programmeur?

YG : Le Java est un langage de programmation parmi tant d’autres. Le rôle de programmeur tout court n’existe pas vraiment. On retrouve globalement deux types de programmeurs, des développeurs généralistes, qui connaissent plusieurs langages, et des développeurs spécialisés. Les langages de programmation les plus répandus sont le .NET et le Java, mais il en existe un grand nombre. Dans la mesure où chaque logiciel ou site en utilise un seul, même un développeur généraliste développe une forme de spécialisation.

JB : Quelles sont les compétences primordiales?

YG : Ce métier nécessite de la rigueur, un bon esprit d’analyse, et également d’être observateur. Cela permet de limiter les erreurs et les bugs et d’assurer un meilleur fonctionnement des applications. Il faut aussi être autonome et avoir le sens de l’initiative afin de bien réussir à gérer son temps et les urgences.

Savoir trouver des informations efficacement est l’autre aspect primordial. C’est une compétence utile dans de nombreuses jobs à l’heure actuelle. Mais dans le cas de la programmation, toute la documentation au sujet des langages de programmation est en ligne et assez massive. Il faut simplement savoir quoi chercher et où le trouver.

JB : Quels sont les traits de personnalité particulièrement utiles chez un Programmeur Java?

YG : La curiosité, la passion et un certain goût pour l’expérimentation sont nécessaires. Cela fait en sorte que le développeur apprendra beaucoup par lui-même en allant explorer ce qui se fait ailleurs sur internet, ou en essayant de nouvelles choses par plaisir.

Savoir verbaliser les problèmes rencontrés est aussi très utile afin de gagner du temps dans les échanges et la résolution des problèmes.
Enfin, et cela peut paraître bête à dire, mais les développeurs sont souvent assez « geek ». Un candidat qui connaît bien la « pop culture » aura souvent plus de facilité à s’intégrer dans son équipe!

JB : S’agit-il d’un emploi qui demande de la passion?

YG : Pas nécessairement, j’ai rencontré d’excellents développeurs qui considéraient leur job comme un 9 à 5. Être passionné de technologies est sans aucun doute un avantage considérable et une chose à laquelle les recruteurs s’attendent.
Mais ce n’est pas un prérequis essentiel. Les développeurs moins passionnés feront souvent preuve de plus de concentration, ce qui est un plus inestimable!

JB : Quels sont les principaux défis à surmonter?

YG : Le plus gros challenge, c’est de transposer le besoin du client qui n’a souvent pas d’expertise technique en programmation et d’être capable de le conseiller efficacement. On dit souvent qu’il n’y a rien d’impossible en informatique, mais certaines techniques peuvent être très complexes, et donc plus coûteuses à mettre en place. Il faut alors pouvoir proposer des compromis au client pour que la solution déployée corresponde à ses besoins.

Une fois que l’application ou le site web est en fonction, il peut y avoir des bugs liés à la multiplicité des configurations et des appareils. Le défi est alors de gérer les urgences afin de prioriser les réparations qui doivent être effectuées.

JB : A quoi ressemble une journée typique?

Y.G : Cela dépend des développeurs. Un programmeur en télétravail va travailler avec beaucoup d’autonomie. Généralement, il commencera sa journée en assistant aux réunions en vidéo-conférence. Ensuite, il organise son horaire pour livrer son code dans les temps impartis.

Au bureau, le rythme est assez similaire. La plupart des développeurs commencent leur journée avec plusieurs cafés! Ensuite ils accomplissent les tâches qui leur sont affectées, mais cela reste assez flexible. C’est-à-dire que ce n’est pas un véritable horaire de 9h à 17h puisqu’un développeur travaille à la tâche. En fin de journée, chacun doit estimer s’il vaut mieux travailler un peu plus pour la finir ou s’il vaut mieux rentrer à la maison et revenir le lendemain frais et dispos.

Il est même parfois possible de combiner du travail au bureau et en télétravail avec des tendances qu’on voit se développer comme les entreprises « prenez vos appareils personnels » par exemple.

JB : Sur quel type de projets un programmeur travaille-t-il?

Y.G : Un développeur Java peut travailler sur n’importe quel type de projet; le Java fonctionne sur toutes les plateformes, il peut donc s’agir de créer des sites internet, des applications ou des logiciels… Le spectre des tâches possibles est très large. Il peut s’agir de changer un mot dans une page web et aller jusqu’à la conception de l’architecture complète d’un serveur pour des programmeurs expérimentés.

JB : Quelles sont les possibilités d’avancement?

Y.G : Un développeur Java commence en tant que junior. En gagnant en séniorité, il va toucher un peu plus à la création de modèle et la conception. Ensuite un développeur peut devenir architecte de logiciel, et donc dédier son temps à la conception, ou chef d’équipe, pour occuper un rôle de gestion.

JB : Dans quelles industries peut-on trouver des Programmeurs Java?

Y.G: Dans tous les types. Tout projet demandant du développement peut être fait en Java, qu’il s’agisse d’un site internet, une application, ou un logiciel, particulièrement si le produit doit être multiplateforme puisque la force du langage est sa compatibilité.

JB : Quelles sont les carrières vers lesquelles un Programmeur Java pourrait facilement se transférer?

Y.G : On voit beaucoup de développeurs devenir analystes d’affaires pour se consacrer à trouver des solutions techniques. D’autres apprécient le test et iront vers l’assurance qualité. Mais un développeur peut aisément se réorienter vers de l’intégration web ou de la configuration de serveur. C’est vraiment un bon point d’entrée pour découvrir tout ce qui est possible de faire dans les métiers des technologies de l’information!

JB : Peut-on apprendre ce métier par soi-même?

Y.G : Oui, il y a beaucoup de ressources en ligne. De l’expérience et des exemples de productions vaudront beaucoup plus que des études sur le CV.

JB : Quelles études peut-on faire pour devenir Programmeur Java?

Y.G : Il est quand-même souhaitable de faire des études pour devenir développeur. Il y a deux principaux canaux:
– La technique dans un CEGEP
– Le BAC universitaires voire une maîtrise

Ce sont les deux diplômes que nous voyons sur la majorité des CV des candidats. Le niveau d’études, lui, n’a pas beaucoup d’incidence sur le travail. Il faut d’abord qu’un nouveau développeur fasse ses preuves et montre de quoi il est capable.
Il existe aussi des certificats et des formations professionnelles qui fournissent de très bonnes bases et qui sont reconnus par la profession.

JB : Avez-vous des conseils pour les intéressés?

Y.G: N’attendez pas, allez consulter des ressources et essayez! Choisissez un langage de programmation et prenez une demi-journée ou même une journée pour faire votre premier « Hello World » (nom donné à un tout premier programme au cours de l’apprentissage qui affiche simplement les mots « Hello World »). Vous aurez déjà une bonne idée si ce métier peut vous intéresser ou non!

Ensuite, renseignez-vous sur les procédures. Dans un premier temps, il est plus important de bien maîtriser les concepts globaux qui s’appliquent aux groupes de langages de programmation que les langages eux-mêmes. Cela permet de commencer sur de bonnes bases.

JB : Une anecdote de travail particulièrement marquante?

YG : Mes premières mises en production (livraisons) sont un excellent souvenir. À l’époque, elles se faisaient principalement le vendredi vers minuit pour se terminer vers midi le lendemain. Je trouvais ça super cool! Je me sentais privilégié de pouvoir y participer, et je trouvais que c’était unique comme expérience.

Passer une nuit blanche, ou presque, à travailler pour offrir le fruit de notre labeur des derniers mois. À chaque étape, il y avait le petit stress que quelque chose ne se passe pas comme prévu. Mais cela créait des liens au sein de l’équipe. Aujourd’hui, nous avons beaucoup amélioré nos procédés. Ils sont un peu plus complexes mais nous permettent de livrer le matin en milieu de semaine. Cette complexité en vaut vraiment la peine, mais je suis toujours un peu de nostalgique quand je repense à ces nuits blanches!

Le point de vue du recruteur

Entrevue avec Jean-Philippe D’Amours, Conseiller Ressources Humaines chez Mediagrif.

JB : Quelles sont les compétences clés que vous recherchez sur le CV d’un Programmeur Java?

Les conseils d’usage sont toujours de mise. Il faut que le CV soit clair et présente bien les tâches réalisées et, dans le cas d’un programmeur, le langage dans lequel elles ont été effectuées. Il faut aussi s’assurer que le CV soit cohérent et homogène.

Les compétences importantes dans un premier temps sont les compétences techniques, il faut donc bien les mettre en avant, ainsi que les outils et les méthodologies (Agile ou Waterfall par exemple) qui sont maîtrisées. Si les outils utilisés par l’entreprise qui embauche sont déjà connus, c’est un plus indéniable.
S’il y a des trous sur votre CV, vous devrez être capable de les expliquer en entrevue.

JB : Quelle importance donnez-vous à un portfolio?

Ce n’est pas obligatoire, mais cela peut vraiment augmenter vos chances d’obtenir une entrevue. Cela vient asseoir vos compétences et permet aux gestionnaires des services de développement de se faire une meilleure idée de votre façon de travailler.
Les recruteurs poseront des questions sur vos réalisations passées en entrevue quoi qu’il arrive.

En entrevue?
Premièrement, ne vous inquiétez pas si vous êtes timide. Cela répond un peu à un cliché, mais les programmeurs ne sont pas toujours très à l’aise dans leurs interactions, et ce n’est pas grave. Habillez-vous correctement et révisez bien votre CV en imaginant les questions qui peuvent vous être posées et en analysant les besoins de l’entreprise, voire en envoyant un courriel quelques jours avant l’entrevue pour avoir plus d’informations sur des aspects techniques du travail par exemple.

Outre les questions au sujet de votre CV (auxquelles vous devez être capables de répondre), attendez-vous à des questions ou des petits tests techniques. Les recruteurs vous demanderont probablement quelles sont vos préférences en terme de programmation et d’indiquer un projet passé dont vous êtes particulièrement fier, un dont vous n’êtes pas fier, et pourquoi.

Vous êtes intéressés par un poste de programmeur Java? Rendez-vous sur Jobboom en cliquant ici pour consulter toutes les offres d’emploi disponibles.