Comment bien choisir son ESN pour une projet de développement ?

Vous avez besoin de faire appel à un prestataire pour développer un projet technologique sur lequel vous n’avez pas les ressources ou compétences en interne. Vous vous tournez alors vers une ESN mais comment choisir ? Le choix est large, de la grosse structure classique à la neoESN, et constitue une étape délicate dont le succès de votre projet va dépendre. Voici quelques bonnes pratiques qui relèvent du bon sens mais qu’il n’est pas inutile d’avoir en tête lors du choix.

La vitrine de L’ESN

Le portefeuille clients de l’entreprise pour commencer, va vous permettre d’étudier les use cases réalisés par l’ESN et vérifier la concordance entre votre projet et les sujets déjà traités. La taille et la durée des projets réalisés peuvent-être des indicateurs importants ainsi que les technologies et environnements maîtrisés par le candidat. Le nombre de projets ainsi que le nombre de clients affichés permettent d’évaluer le dégré d’expérience de l’ESN et sa capacité à atteindre vos objectifs.

Ces critères constituent un vrai plus mais il ne faut cependant pas négliger de rencontrer les petites ESN emmérgeantes qui malgré une expérience plus réduite compenseront peut-etre leur manque de maturité par un enagement sans faille pour vous avoir parmi leurs premiers clients.

L’expertise tehnologique

Rare sont les ESN totalement agnostiques en terme de technologie. Il vous faut alors creuser un peu pour vérifier le dégré d’expertise sur vos techno cibles. Au delà des use cases présentés par l’ESN, il sera important de regarder dans le détail les CV des intervenants et leurs années d’expérience sur ces technos.

Pour un projet complexe, le fait de pouvoir recruter dans vos équipes un lead-tech référent sur le projet sera un précieux atout. Ses soft-skills seront également importantes pour fédérer l’équipe et faire monter en compténces vos développeurs en interne. C’est pourquoi il est nécessaire d’aller au délà de l’image de marque de l’ESN et de ses uses cases affichés pour être focus sur le détail de chaque profil proposé.

Même si de nombreuses ESN sont en mesure de répondre sur une large palette de technologie, assurez vous, si vous êtes déjà arrêté sur un environnement ou un langage spécifique de trouver une ESN qui est réellement up-to-date sur cette solution. L’ESN a-t-elle réalisée un projet récent sur cette techno ? Propose-t-elle des formations ? A-t-elle nouée des partenariats avec des éditeurs ou acteurs de la solution. Si par exemple vous optez pour une solution cloud utilisant Google Cloud, vous pouvez vous renseigner sur les certifications obtenues par l’ESN sur la plateforme. Vous pouvez aussi savoir via la communication faite par l’ESN et par les réseaux sociaux si elle est active sur une techno donnée en la diffusant au travers de conférences ou meet-up.

Comment l’ESN communique-t-elle en mode projet ?

Après avoir évaluer l’expertise de vos candidats, il est également crucial de connaître à l’avance comment l’ESN va pouvoir inter-agir avec vous. Une bonne communication est primordiale , si ce n’est le premier facteur de réussite d’un projet. Quels sont les moyens de communication mis en oeuvre par l’ESN? Quelles sont leurs pratiques en terme de gouvernance projet. Aurez-vous un ambassadeur dédié en son sein pour suivre la bonne marche du projet et monitorer le budget ?

Quelle méthodologie projet souhaitez-vous utilisée ?

Il en va de même avec la méthodologie projet adoptée par vos candidats. Correspond-t-elle à vos attente ? Peut-elle être applicable au sein de votre éco-système ?

Si vous souhaitez privilègier une approche agile, il faut vous assurer que des méthodes éprouvées comme Scrum par exemple sont bien maîtrisées par les équipes de l’ESN. Y-at-il au sein de l’équipe proposée des profils orienté Scrum master. Des membres de l’équipe ont-il passé avec succès des certifications reconnu comme celle de la Scrum Alliance ? Quelle est la maturité de l’équipe dans les process allant de l’estimation initiale du backlog à la gestion des sprints ?

Vous devez donc vous faire clairement expliquer comment l’équipe de développement sera organisée et quel sera précisement votre rôle dans leur process. En effet, les méthodes agiles place le client au centre du processus itératif et lui demande une disponibilité importante pour ajuster en permanence les items du backlog afin de délivrer le plus rapidement possible la valeur métier.

DevOps et testing

L’approche DevOps peut également être un critère de choix intéressant. En ligne avec les méthodes agiles, DevOps permet l’intégration et la livraison en continue (CD/CI). Pour mettrre en pratique DevOps, une expertise et de l’outillage sont nécessaires.

Cette approche va souvent de pair avec les bonnes pratiques de testing qui sont également un facteur clés dans le recrutement d’un prestataire. Renseignez-vous sur la stratégie de test mis en oeuvre par l’ESN, sur la documentation et la transmission de connaisance si vous réalisez la TMA en interne ou sur les contrats de maintenance proposés si vous souhaitez l’externaliser.

Confidentialité et sécurité

La confidentialité et la sécurité sont des enjeux majeurs dans la réalisation de vos projets. Là aussi veiller à bien faire détaillé par l’ESN leur politique en matière de sécurité et de confidentialité en particulier si votre projet est délocalisé dans leur structure. Vous devrez alors avoir une vue précise sur les mesures de sécurité prise en interne pour mesurer leur conformité avec votre projet.

Quelle dynamique interne pour l’ESN ?

Enfin, et c’est sans doute l’un des élements les plus important, il est nécessaire de bien apréhender la dynanamique interne de l’ESN et sa gestion RH. Même si l’on peut vite tomber dans la caricature, qui n’a pas en tête les travers de certaines ESN qui placent leurs salariés sur des missions non choisies et des techno non désirées. Il faudra donc rester vigilant sur la motivation des développeurs et leur appétences avec les techno proposées.

Vous pouvez opter pour le choix d’une “feature team” que certaines ESN proposent et qui regroupe toutes les compétences nécessaires à la réalisation de votre projet.

Vous pourrez la composer avec votre partenaire en fonction de vos besoins et vous faire accompagner si vous le souhaitez par des coach agile, Scrum master , PO ou Delivery manager intégrés à une équipe de développement full-stack.

Cette solution de “feature team” offre bien des avantages car elle vous permet de réunir des profils qui ont l’habitude de travailler ensemble et partagent une même culture.

Cette check-list est loin d’être exhaustive mais réunie des critères de bases nécessaires au succès de vos projets. Les passer tous en revue lors de vos entretiens avec vos candidats limitera les risques et vous aidera à construire des partenariats réussis.

A lire sur le même sujet :