Comment attirer un CTO dans sa startup ?
Usage du prétotyping pour valider son idée et séduire les développeurs
Introduction
Grâce à l’évolution des moeurs et du web, il devient de plus en plus tentant et accessible de changer le monde. Rêvant de devenir les prochains Mark Zuckerberg (Facebook), Brian Chesky (Airbnb), ou encore Travis Kalanick (Uber), des milliers de diplomés ou anciens salariés se lancent dans la création d’une startup. Un de leurs principaux problèmes est de transformer leur idée en produit. Les développeurs logiciels sont alors devenus des proies convoitées, mais souvent approchés de manière trop maladroite pour qu’ils acceptent de les rejoindre dans cette aventure entrepreneuriale.
Lors de ma présentation dans le cadre du “Startup Tour” (à NUMA, en Août 2015), j’ai démontré les causes fréquentes de la maladresse des créateurs de startup dans leur recherche de développeur, et ai proposé des moyens pratiques pour avancer sur la réalisation de leur idée de startup (le MVP) sans attendre qu’un développeur ne veuille bien s’y associer (le CTO).
Cet article est un résumé de cette présentation.
1. Comment réaliser son MVP ?
Tel qu’expliqué dans la présentation de Mathieu sur le Lean Startup, le MVP (Produit Minimum Viable, en Anglais) est une première réalisation permettant de tester l’idée de la startup auprès du public qu’elle cible.
Pour réaliser le MVP d’une application mobile ou d’un service web, les compétences d’un développeur logiciel (aussi appelé “geek”, “programmeur”, ou “ingénieur informaticien”) paraissent indispensables, car la plupart des entrepreneurs de startup n’ont aucune connaissance technique.
Mais alors, comment trouver un tel développeur qui accepterait de réaliser ce MVP, contre des parts de ma startup naissante en guise de salaire ?
La réponse est simple, il suffit d’aborder le développeur là où il aime échanger avec ses confrères: dans un meetup technique !
Pour mettre toutes les chances de son côté, l’entrepreneur (le CEO) va s’habiller de manière élégante — mais pas trop non plus, car un start-upper est trop cool pour céder au dictat du costard-cravate — , choisir au hasard un développeur parmi un groupe de geeks à lunettes, lui déclamer fièrement son pitch (quelques phrases qui décrivent le but de la startup), puis lui proposer de s’associer au projet, en héritant alors du titre honorifique de “CTO” (responsable technique, en Anglais).
Le problème, c’est que dans 99% des cas, ça ne fonctionne pas. (cf réponse de W. Pietri à la question “Where can I find developers willing to join my startup?”)
2. Se mettre à la place du développeur
Encore trop d’entrepreneurs me demandent pourquoi il est si difficile d’attirer, motiver et fidéliser un développeur sur leur projet de startup. Il suffit pourtant de se mettre à la place du développeur pour comprendre les raisons.
Imaginez que vous êtes un développeur. Vous savez “coder” des sites, des applications mobiles. Chaque semaine vous recevez des offres alléchantes de la part d’entreprises subissant la pénurie de bons développeurs. Mais vous prenez votre temps pour vous décider, car la conjoncture vous le permet. Et puis, vous tenez à avancer sur vos propres projets perso (les “side projects”), plus excitants que les missions que l’on vous propose.
Un développeur aussi a des idées. Contrairement à la plupart des entrepreneurs, il est capable de les réaliser.
Pour résumer ce constat:
- les entrepreneurs ont besoin d’un développeur pour réaliser leur idée;
- les développeurs n’ont pas besoin d’entrepreneur pour avoir une idée.
Il devient donc facile d’imaginer que le développeur préférera probablement investir son temps et son énergie sur ses propres idées que sur celles des autres. Se pose alors la question de l’intérêt du développeur de s’associer avec une personne non technique, pour travailler sur l’idée de cette personne.
Lectures associées: “Pourquoi je ne veux pas être ton CTO” / “No, I won’t be your technical co-founder”
3. Veux-tu être mon associé ?
Vous êtes un entrepreneur qui cherche un développeur avec qui s’associer ? Imaginez que je vienne me présenter à vous de la manière suivante:
“Salut, je m’appelle Adrien, je développe un ambitieux produit qui va révolutionner la discussion instantanée sur téléphones mobiles. J’ai déjà réalisé l’app sur iPhone et Android. Dans l’intention de concurrencer Facebook Messenger et Whatsapp, je cherche à m’associer avec un profil commercial ou marketing pour m’aider à générer de la croissance. Je n’ai pas de fonds pour l’instant, mais je suis prêt à céder des parts du capital de la startup. Veux-tu être mon associé ?”
Je ne sais pas pour vous, mais lors de ma présentation à NUMA, aucune personne du public ne semblait intéressée par cette opportunité. Pourtant nous avions a priori tous envie de créer une startup, et nos profils étaient pour la plupart complémentaires !
Certes, les raisons de ne pas vouloir rejoindre le projet de quelqu’un peuvent être nombreuses. La plus évidente est que vous n’êtes pas forcément convaincu(e) par mon idée. Mais n’auriez-vous pas accepté ma proposition, si j’avais avancé des raisons plus convaincantes de travailler avec moi ?
Il y aurait donc d’autres facteurs que l’idée pour motiver une personne à s’associer avec soi ?
Voici quelques exemples de facteurs qui auraient pu vous faire changer d’avis:
- Facteurs d’affaires: j’ai déjà des fonds, plusieurs clients, des partenaires solides, et/ou mon app rapporte déjà du revenu.
- Facteurs humains: j’ai été chaudement recommandé par un ami à qui vous faites confiance, j’ai une réputation solide, vous appréciez mes qualités, et vous sentez bien en ma compagnie.
En supposant que je cumule ces facteurs, êtes-vous sûr(e) que mon idée aurait autant de poids qu’au départ dans le choix de vous associer avec moi ?
Et bien, sachez que le développeur que vous cherchez à séduire est sensible aux mêmes facteurs. Votre idée a peu de chances de suffire à elle seule.
J’ajouterais que le développement logiciel d’un produit de startup est une tache difficile et pénible, car une startup doit se développer très rapidement, et change très souvent de direction. En effet, ces contraintes font que beaucoup de “code” écrit par le développeur finira à la poubelle, et que le reste du code deviendra tellement fragile qu’il sera de plus en plus difficile de le modifier sans causer des bugs dans d’autres parties du logiciel. C’est ce qu’on appelle la “dette technique”, le cauchemar du développeur de startup, et la raison pour laquelle il rechigne à effectuer des changements.
En acceptant de s’associer à votre projet, le développeur ne veut donc pas avoir l’impression d’être le seul à effectuer un travail difficile et pénible, pendant que vous paradez aux soirées cocktail d’entrepreneurs. Il est donc important de prouver que vous êtes capable et déterminé(e) à effectuer des taches tout aussi difficiles et pénibles que lui pour faire avancer votre startup.
Plus vos taches paraitront déplaisantes à votre développeur, plus il s’estimera heureux de ne contribuer qu’à la partie logicielle des taches.
Je dois préciser quelques contre-exemples trop souvent rencontrés:
- Avoir réalisé un business plan est peut-être difficile et pénible, mais ce n’est souvent pas aussi utile que vous le croyez pour une jeune startup.
- Avoir conçu les écrans de votre future app est un bon début, mais ce n’est probablement pas une tache pénible, ni difficile au yeux de votre développeur.
4. Se rendre attractif
Alors, si le développeur a besoin que constater que vous aussi mouillez tous les jours votre maillot, que pouvez-vous faire pour le lui prouver ?
Je vous propose quelques pistes, basées sur les facteurs que nous avons vus plus haut.
En termes de facteurs d’affaires, le développeur a besoin de voir que vous avez des atouts qui lui manquent, et que vous avez déjà obtenu des résultats. Par exemple:
- Vous avez des années d’expérience sur le domaine métier de votre idée, et/ou dans le rôle que vous allez avoir dans la réalisation de cette idée.
- Vous avez “l’esprit startup”, car vous avez cette culture, vous êtes bien intégré dans le réseau des startups locales, d’ailleurs vous aidez les autres startups autant que vous le pouvez, et vous avez déjà publié un article post-mortem avouant les erreurs que vous avez faites dans votre dernière création de startup.
- Ca fait des semaines que vous démarchez des clients potentiels en maison de retraite. Ça ne vous amuse pas vraiment, mais vos efforts sont récompensés par la satisfaction d’avoir résolu leurs problèmes, et prouvé l’utilité de votre startup par la même occasion.
En termes de facteurs humains, le développeur va chercher de la confiance, de la complémentarité, mais surtout du mérite. Par exemple:
- Certes, vous ne savez pas coder, mais personne ne résiste à votre charisme, à votre culot et à votre détermination. Vous l’avez prouvé au meetup de l’autre jour, en empruntant le micro sans en avoir demandé l’autorisation, afin de faire savoir fièrement et avec assurance que vous cherchiez un associé.
- Malgré vos efforts (le “hustle”) pendant plusieurs semaines, vous n’avez toujours pas trouvé votre associé technique… Qu’à cela ne tienne, vous vous êtes inscrit(e) au Wagon pour apprendre à créer votre application vous-même, sans avoir besoin de développeur !
Enfin, en termes de facteurs liés à l’idée, le développeur aura besoin d’être convaincu de sa pertinence et de sa viabilité. En particulier s’il est question de le rémunérer en parts, plutôt qu’en salaire. Il est donc important que vous trouviez un moyen de valider votre idée, de manière la plus objective possible. Pour cela, rien ne vaut les méthodes analytiques: prouver la validation avec des chiffres traduisant l’intérêt, voire l’usage de votre cible.
Dans la plupart des cas, le développement logiciel n’est nécéssaire que pour automatiser un service que vous avez déjà réalisé avec succès “à la main”, dans le but de passer à une échelle supérieure de croissance.
Dans le cas rare où votre startup ne peut absolument rien faire sans développement logiciel, n’attendez pas de trouver un hypothétique associé technique. Ça pourrait vous faire perdre des mois, voire des années, pour un résultat qui ne serait probablement pas à la hauteur de vos espérances. Dans ce cas, formalisez plutôt votre besoin de la manière la plus simple et précise, cassez votre tirelire, et sous-traitez le développement à une agence ou à des indépendants.
Ce que vous avez lu dans une étude Gartner ne suffira pas à convaincre un développeur. Quant à votre étude de marché, elle sera probablement obsolète dès la deuxième itération de votre startup.
Pour résumer cette partie: votre meilleure chance d’attirer un CTO (ou un développeur) dans votre startup naissante est d’être attractif sur trois aspects: l’humain, l’idée, et les affaires. Pour cela, vous allez devoir prouver vos qualités, et celles de votre idée, en vous passant de développeur. Pour un exemple plus concret, je vous invite à lire ce précédent article: “Etes-vous vraiment prêts à accueillir un CTO ?”
5. Avancer sans développeur:
le “Prétotyping”
Comme nous l’avons vu plus haut, trouver un développeur (CTO ou pas) pour réaliser le produit (MVP ou pas), peut prendre des mois, voire des années. Il serait dommage de gaspiller votre temps et votre énergie dans cette recherche, alors que celle-ci serait plus efficace après avoir validé votre idée. Mais comment valider son idée sans compétences techniques ?
Il existe une solution: le “prétotyping”. (à ne pas confondre avec prototyping)
Le prétotyping sert à valider l’attrait initial et l’usage réel d’un potentiel nouveau produit, en simulant ses fonctionnalités vitales, pour un cout minimal.
Un prétotype est donc une sorte de MVP, à cela près qu’il ne nécessite pas de développement logiciel. Il suffit de prétendre que le logiciel existe, et mesurer l’efficacité ressentie par ses utilisateurs. Magique !
Dans le cas où vous seriez sceptique, sachez que de nombreuses entreprises ont eu affaire au prétotyping. Et ce, depuis des dizaines d’années.
Quelques exemples:
- Avant d’investir des millions de dollars dans la réalisation d’un système de saisie vocale (dictée), IBM a tenu à s’assurer qu’un tel produit rencontrerait un succès suffisant auprès de ses clients. Ils ont alors fourni un faux prototype à certains employés d’entreprise: la saisie était en fait assurée au clavier par un opérateur caché par la machine. Ainsi, IBM s’est rendu compte que la dictée causait trop de problèmes pour être viable auprès de ses clients. En effet, les cobayes étaient vite enroués après 7 heures de saisie vocale, le bruit ambiant de l’open space causait des erreurs de diction, et ce mode de saisie était incompatible avec le caractère confidentiel de certains documents. Grâce à cet astucieux stratagème, IBM a finalement décidé que cette idée n’était pas (encore) pertinente pour ses clients, et a donc pu investir ses économies sur d’autres idées plus valides.
- Avez-vous connu le Palm Pilot ? Cet ancêtre du smartphone était le remplaçant moderne de l’agenda, du répertoire de contacts, et du carnet de notes. Afin de concevoir une interface la plus efficace possible en toutes circonstances, son créateur a conçu un simple bloc de la taille de l’appareil, équipé de feuilles et d’un crayon. Ainsi, au gré de ses besoins, il dessinait l’interface qu’il aurait aimé voir sur l’écran de l’appareil, pour saisir ses notes en situation, ou retrouver l’adresse d’un contact. Cette démarche de prétotyping lui a donc permis de concevoir son produit de manière plus pragmatique.
- Dropbox, le célèbre service de synchronisation de fichiers dans le cloud, s’est fait connaitre par une vidéo montrant sa simplicité d’utilisation: on pose un fichier ici, et hop, une copie apparait comme par magie sur mon deuxième ordinateur ! Il s’avère que la vidéo était un trucage car le logiciel de synchronisation n’avait à ce jour pas été réalisé ! Cet habile montage vidéo aura permis à Dropbox de lever les fonds nécessaires pour réaliser le véritable produit.
- La méthode de prétotyping la plus couramment employée depuis quelques années est la “landing page”. Elle consiste à prétendre l’existence d’un produit ou service sur une page web, et inviter les visiteurs de cette page à inscrire leur email contre la promesse de pouvoir l’essayer avant tout le monde. Dans la plupart des cas le produit ou service en question n’a pas été développé, et la page web permet de mesurer l’intérêt que suscite cette idée auprès de sa cible, et donc son potentiel futur succès commercial. Outre sa simplicité de mise en oeuvre, cette technique de prétotyping présente deux atouts substantiels: elle permet d’effectuer de l’A/B testing sur la proposition de valeur (en mesurant l’efficacité d’accroches différentes, par le nombre d’adresses email obtenues respectivement), et elle permet aussi de constituer une base d’utilisateurs motivés pour tester les premières itérations du produit, dans le cas où ce dernier serait finalement développé.
- Enfin, il est possible de mettre des outils automatisés à disposition de ses futurs utilisateurs sans écrire une seule ligne de code. Zapier et IFTTT permettent en effet de réaliser des procédures de transferts de données entre services web pré-existants. Par exemple, si votre startup propose de se faire livrer des croissants à domicile depuis son smartphone, ces deux services vous permettent de connecter votre formulaire de commande réalisé sur Google Forms, avec un service d’envoi de SMS à destination de vos boulangers et livreurs partenaires, afin que les commandes soient automatiquement honorées sans effort de votre part.
Avec ce genre de techniques, il suffit d’un peu de temps et d’imagination pour valider son idée, sans avoir à produire la moindre ligne de code. Une fois votre idée validée, ce sont les développeurs qui viendront vous demander s’ils peuvent s’associer avec vous !
Video à voir: “Comment créer sa startup en 48h” par Côme Courteault
+ exemples de prétotyping
Conclusion
J’espère vous avoir convaincu qu’un CTO (ou développeur) se mérite, mais surtout que ce n’est pas une fin en soi.
En effet, tout au long de cet article:
- nous nous sommes ensemble mis dans la peau d’un développeur se faisant séduire par un entrepreneur ayant seulement une idée de startup, afin de comprendre les faiblesses de cette approche,
- nous avons listé des facteurs pouvant motiver une personne extérieure à s’associer à ce projet de startup,
- nous avons proposé des manières de prouver et développer ces facteurs afin de se rendre attractif,
- et enfin, nous avons exposé des techniques permettant de convaincre que son idée de startup est pertinente.
Pour résumer, si vous êtes créateur de startup en recherche d’un développeur (associé ou pas), voici ce que je vous invite à garder à l’esprit:
- Votre but n’est pas de trouver un développeur, mais de l’attirer.
- Pour cela, vous devez prouver vos atouts, et votre mérite.
- Vous devez être capable de générer un maximum de valeur sans développeur.
- A cette fin, vous pouvez employer des techniques de prétotyping.
Par ailleurs, si vous débutez dans le monde des startups, je vous invite chaudement à choisir quelques lectures en rapport avec vos problématiques actuelles, parmi cette selection personnelle de liens en Anglais et en Français: “Startup Noob Guide”.
Dans le cas où vous n’auriez pas eu la patience de lire cet article dans son intégralité, vous pouvez l’écouter ci-dessous:
Ces conseils sont basés sur mon expérience personnelle, sur mes discussions avec d’autres développeurs, avec des entrepreneurs en recherche de développeurs, et sur mes lectures. Si vous pensez que certaines informations sont fausses, mal interprétées, ou excessivement généralisées, je vous remercie de bien vouloir m’en informer en réponse ou commentaire de cet article.
Plus généralement, je serais ravi de lire vos commentaires, compléments, points de vues différents, et anecdotes, du moment qu’ils sont pertinents, constructifs, et respectueux envers toute personne concernée.