Ce qu’il faut savoir pour recruter un développeur

Voici une vidéo pour vous présenter ce qu’il faut savoir pour recruter un développeur.

Sous la vidéo (32 minutes) se trouve un récapitulatif des points abordés. Je vous invite à regarder la vidéo pour avoir plus de détails.

 

 

Ce qu’il faut savoir pour recruter un développeur

 

Rappel : Qu’est-ce qu’un logiciel ?

 

Un logiciel est un ensemble de séquences d’instructions (interprétables par une machine) et d’un jeu de données nécessaires à ces opérations.

-Wikipedia

 

Quelle forme prend un projet logiciel ?

 

-Analyse/Spécification : Définition de ce qu’on va développer.

-Ingénierie : Réalisation du développement.

-Test/Validation : Tests techniques et fonctionnels effectués.

-Conclusion/Déploiement : Mise en production du projet. Produit accessible par les utilisateurs.

 

Analyse, Découverte du besoin

 

(A)MOA : (Assistance à) Maîtrise d’Ouvrage

Les consultants fonctionnels ou business analystes s’occupent de la phase de découverte du besoin. Ils vont au contact du client ou des futurs utilisateurs pour savoir quels éléments créer pour le produit.

 

Le Développement

 

Il peut y avoir toute une équipe pour le développement :

-Chef de Projet : Il s’assure de gérer le temps, la qualité et le coût du projet.

-Product Owner (PO) ou Scrum Master : seulement pour la méthode Agile.

 

-Développeurs : les devs font le code, ils produisent.

-Lead Dev : il gère l’équipe de développeurs et se charge de prendre les décisions techniques liées au développement.

 

-Architecte : il prend une vue d’ensemble, du recul, et fait les plans de la réalisation du projet.

 

Recette/Tests

 

L’équipe QA (Quality Assurance) effectue les tests techniques et fonctionnels du projet.

Ils peuvent utiliser des tests automatisés ou non. Les testeurs savent quels genre de bugs ils peuvent trouver.

 

Développeurs Back end, Front end et Fullstack

 

On peut comparer le Front end à une salle de restaurant. Le back end serait alors la cuisine de ce restaurant.

Les développeurs peuvent être spécialisé sur une de ces parties du développement ou faire les deux. Ils sont alors Fullstack.

Le front end est la partie visible de ce qui à été développé (Page d’un site internet). Le back end est tout le développement invisible aux utilisateurs qui permet le fonctionnement du projet (Fonctionnement de la barre de recherche d’un site).

 

Langages de Programmation et Framework

 

Les langages de programmation permettent de donner des instructions à la machine.

Un framework (Cadre de travail) est un cadre dans lequel on va utiliser un langage. Ce cadre permet une utilisation plus simple du langage avec des raccourcis pour les demandes les plus communes et des outils complémentaires pour le développement.

Voici quelques exemples de langages associés à leur(s) Framework :

-PHP –> Symfony, Laravel, Code Igniter, Zend,…

-JAVA –> Spring, Hibernate, Struts, Apache,…

-Javascript –> Angular, React, Vue.JS, Node.js

-Ruby –> RoR (Ruby on Rails)

Certains langages et frameworks seront plus adaptés à certains projets que d’autres.

 

Méthodes de Gestion de projet

-Méthode en V

 

La méthode en V met en place un cahier des charges très complet de ce qui est voulu au début. On donne le produit après sa finition au client. Cette méthode peut dure environ 6 à 9 mois en moyenne. L’inconvénient est qu’on ne change pas les idées en cours de route et on risque de présenter un produit qui ne correspond plus à ce qu’il faut pour le client.

 

-Méthode Agile

 

En suivant la méthode Agile, l’ensemble des fonctionnalités n’est pas définie dès le début. On fonctionne par itération : on montre ce qu’on fait petit à petit pour changer en cours de route si besoin.

Le Scrum Master ou PO s’assure du respect de la méthode agile mais il n’a pas le rôle de manager. Cette méthode permet à tous les développeurs de donner leur point de vue sur les décisions à prendre et leur laisse de la liberté.

 

Les types d’entreprises où travaillent les développeurs :

-DSI (Direction de Systèmes d’Information

 

Les développeurs travaillent pour le service informatique d’une entreprise classique (Total, Burger King,…)

+ : Confort, Proximité avec l’utilisateur

– : Salaire : les devs restent généralement longtemps sur ces postent et ont donc moins d’opportunités d’augmentation de salaire.

 

-Editeur de logiciel

 

Le dev travaille pour une boite fabrique des logiciels (Microsoft,…).

+ : Salaire, Plus d’implication de la part du dev et il peut avoir une vision à long terme des projets sur lesquels il travail (voir sa réalisation du début à la fin)

– : Le domaine est le même, c’est répétitif.

 

-Entreprise de Services Numériques (ESN)

 

Les développeurs qui travaillent pour une ESN sont envoyés en mission chez des clients, d’autres entreprises.

+ : Salaire, Projets variés

– : Fatigant sur le long terme, peut avoir la sensation d’être une marchandise louée.

 

Conclusion : Ce qu’il faut savoir pour recruter un développeur

 

Voilà donc les points les plus importants à savoir sur le métier de développeur. Avoir ces connaissances vous permettra de ne pas être perdu lors de votre entretien avec vos candidats développeurs.

Chaque point est plus détaillé dans la vidéo.

 

Consultez aussi :

La Boîte à Outils

Le Blog

Mon activité sur Linkedin

Derniers articles

Boite à outils