Transformer une extension chrome en SaaS

On s'est mis en tête de transformer une extension chrome en réel SaaS. Malheureusement, la release ne s'est pas passée comme prévu.

J’ai rĂ©Ă©crit cet Ă©pisode un an aprĂšs sa publication. Je dirais pas qu’il m’a cringĂ© autant que les prĂ©cĂ©dents, mais il demandait quand mĂȘme une petite repasse.

Par ailleurs, l’extension chrome en question n’est plus maintenue (bien qu’elle soit toujours disponible et fonctionne toujours).

Il y a un an et demi, pour la premiĂšre fois, j’ai dĂ©veloppĂ© et publiĂ© une extension chrome qui s’appelait LinkedIn to Notion (on a dĂ» changer de nom, explications plus bas). Je l’ai ensuite oubliĂ©e sur une Ă©tagĂšre d’oĂč elle n’a plus bougĂ© pendant plusieurs mois.

Quand soudain, je me suis aperçu que cette extension (pas trĂšs bien codĂ©e), dont je n’avais parlĂ© qu’une fois sur LinkedIn, Ă©tait utilisĂ©e rĂ©guliĂšrement par plusieurs dizaines de personnes. Mon alarme Ă  “comment faire effet de levier avec le peu que je possĂšde dĂ©jà” s’est alors dĂ©clenchĂ©e.

C’était en juin 2023.

Depuis, il s’est passĂ© plein de trucs et j’ai eu pas mal de dĂ©cisions Ă  prendre. Le but de cet Ă©pisode, c’est de partager mes rĂ©flexions et mes enseignements, notamment :

  • D’oĂč m’est venue l’idĂ©e de l’extension initialement

  • Pourquoi j’ai promis de ne plus jamais lancer de projet seul

  • Pourquoi on l’a entiĂšrement reprogrammĂ©e de zĂ©ro

  • Pourquoi on a fait le choix d’un design insipide

  • Pourquoi on a fait le choix de la product-led growth

Et Ă  la fin, je m’éloignerai du sujet des extensions chrome pour parler de mĂšmes, de culture internet et de write in public.

GenĂšse

Barbotage dans le recrutement

En mai 2022, je finis mes Ă©tudes Ă  CentraleSupĂ©lec. J’étais dans le parcours entrepreneuriat et je me suis mis en tĂȘte de monter une “agence” de recrutement que j’ai appelĂ©e Recruitivity.

En rĂ©alitĂ©, je n’ai pas rĂ©ussi Ă  ĂȘtre plus qu’un recruteur en freelance. Et, en tant que tel, je reposais lourdement sur Notion :

C’est un funnel factice : je l’ai rempli avec quelques-uns d’entre vous, chers lecteurs.

J’y mettais tous les profils (prĂ©nom, nom, entreprise, poste, 
) que j’avais copiĂ©s sur LinkedIn et qui correspondaient aux exigences de mes clients. C’était pratique, efficace et gratuit 🐀

Il ne restait qu’un dĂ©tail Ă  rĂ©gler


Les copier-coller

Il me fallait un moyen de sauvegarder les profils LinkedIn dans mes base de données Notion, en 1 clic, sans un seul copier-coller.

C’est pour ça que j’ai initialement crĂ©Ă© LinkedIn to Notion. HonnĂȘtement, ça m’a fait gagner beaucoup de temps sur mon sourcing. Beaucoup.

À ce moment-lĂ , j’ai compris que ce que j’avais construit pouvait ĂȘtre utile Ă  d’autres. Alors j’ai partagĂ© mon extension chrome, sur LinkedIn, avec d’autres recruteurs de mon rĂ©seau.

Ce fut ma seule publication.

Set and forget

Ensuite, je ne me suis plus prĂ©occupĂ© de l’extension pendant plusieurs mois. J’étais davantage investi dans l’agence que j’essayais de monter, jusqu’en avril 2023 — le moment oĂč j’ai dĂ©cidĂ© de revenir au freelancing (sans vellĂ©itĂ©s d’agence).

Je me suis Ă  nouveau penchĂ© sur LinkedIn to Notion par curiositĂ© : qu’était devenue mon extension ?

Bilan :

  1. 500 installations (mais la moitiĂ© de dĂ©sinstallations đŸ« )

  2. Quelques dizaines de personnes qui l’utilisent rĂ©guliĂšrement

  3. Une poignée de concurrents

Pas mal pour un truc dont je n’ai parlĂ© qu’une fois !

Vision

Du coup, j’imagine un monde dans lequel ça n’est plus une simple extension mais un vrai SaaS avec un Monthly Recurring Revenue dĂ©cent.

Seulement, aprĂšs avoir Ă©chouĂ© seul sur un projet d’agence, je sais maintenant d’expĂ©rience qu’il me manque une chose essentielle pour transformer mon extension en SaaS : une Ă©quipe.

C’est pour cette raison que je me suis associĂ© Ă  Gauvain — une de mes meilleures dĂ©cisions des derniers mois.

Une sĂ©rie d’arbitrages

Dans cette partie, je retrace quelques-unes des grandes dĂ©cisions qu’on a dĂ» prendre avec Gauvain. Je ne veux pas nĂ©cessairement encourager Ă  faire les mĂȘmes choix, seulement engager une rĂ©flexion.

Se lancer seul ou Ă  plusieurs

TL;DR :

  • Raisons de se lancer seul :

    1. Si le projet réussi, on en récupÚre tous les bénéfices

    2. Les prises de décisions sont beaucoup plus rapides

    3. La vision d’un unique fondateur n’est jamais diluĂ©e

    4. Entreprendre seul, c’est retirer une variable dans le succĂšs de l’entreprise — il n’y a personne d’autre que soi-mĂȘme Ă  blĂąmer.

  • Raisons de se lancer Ă  plusieurs :

    1. Convaincre un cofondateur est petit test sur notre capacité à convaincre des clients

    2. À plusieurs, les victoires sont plus savoureuses et les Ă©checs plus supportables

    3. Le jeu de la NASA prouve que les dĂ©cisions prise par une Ă©quipe aux compĂ©tences similaires (← ce point est important) est toujours meilleure que la meilleure dĂ©cision prise par un individu seul

    4. Savoir travailler en groupe est nĂ©cessaire pour mener Ă  bien des projets ambitieux et on peut dĂ©velopper cette compĂ©tence sur des projets de n’importe quelle ambition

    5. C’est un moyen de passer un crible sur son rĂ©seau pour connaĂźtre les personnes avec lesquelles on est compatible professionnellement

  • Je pense que les raisons de se lancer Ă  plusieurs l’emportent sur les raisons de se lancer seul. VoilĂ  pourquoi je travaille maintenant avec Gauvain sur ce projet.

Product-led growth ou sales-led growth

On a commencĂ© par entĂ©riner notre association avec un “Gentlemen’s Agreement” (i.e une espĂšce de contrat pas trop formel, mais un peu quand mĂȘme) dont voici l’introduction :

Ecrire notre engagement et le signer a eu deux avantages :

  1. Il a donné un ton un peu solennel à notre association (par conséquent plus engageante)

  2. Il nous a permis de graver dans le marbre les objectifs directeurs du projet.

Je pense vraiment que des objectifs s’écrivent. Le meilleur moyen de n’en atteindre aucun, c’est d’avoir des objectifs flous et mal dĂ©finis. Or, c’est beaucoup plus difficile d’ĂȘtre flou Ă  l’écrit qu’à l’oral. Donc il faut les Ă©crire.

Maintenant, j’aimerais expliquer pourquoi est-ce qu’on a autant mis l’accent sur la product-led growth. En fait, l’alternative aurait Ă©tĂ© de faire comme 80% des SaaS : gĂ©nĂ©rer des leads pour les sales qui auraient ensuite fait leur possible pour les transformer en clients.

Pour certains types de produit, on ne peut pas y couper : il faut un commercial pour faire une dĂ©mo du produit et plusieurs rdv pour le convaincre d’acheter. Mais en rĂ©alitĂ©, pour l’écrasante majoritĂ© des SaaS, il est possible de procĂ©der diffĂ©remment.

Extrait du livre Product-Led Growth, Wes Bush.

Il est possible de faire de la product-led growth — Ă  mi-chemin entre du design, du produit et du dĂ©veloppement. Contrairement Ă  la sales-led growth, la croissance n’est pas exogĂšne, elle est intrinsĂšque. Elle est inscrite dans les fonctionnalitĂ©s du produit.

Et ça, en plus d’ĂȘtre pertinent dans l’absolu, c’est particuliĂšrement pertinent pour une petite Ă©quipe de devs sur un side-project. : on fait un bien meilleur usage de notre temps en dĂ©veloppant des fonctionnalitĂ©s sans perdre la croissance de vue, plutĂŽt qu’au tĂ©lĂ©phone avec des prospects.

Ce que je veux dire c’est qu’il n’y a pas que l’outbound dans la vie et le bon modĂšle de croissance dĂ©pend (entre autres choses) des compĂ©tences de l’équipe.

Bref, product-led growth ou non, il fallait ajouter des fonctionnalitĂ©s Ă  notre produit. Et c’était impensable de le faire par-dessus mon vilain code vanilla (i.e sans aucun framework de dĂ©veloppement, tel que react.js).

Un gros changement s’annonçait.

Quick and dirty

C’est le chantier qui nous a occupĂ© ces trois derniers mois : le choix d’une stack technique performante pour l’extension chrome puis rebĂątir l’extension de zĂ©ro par-dessus.

À ce moment-lĂ , deux visions se sont confrontĂ©es :

  1. La vision hĂ©gĂ©monique dans la startup nation → “move fast and break things” by Facebook.

  2. Investir du temps en amont pour en gagner en aval.

Les partisans du “quick and dirty” auraient directement itĂ©rĂ© par-dessus ma codebase.

Puis, un jour pas si lointain, ils auraient rencontrĂ© un mur, Ă  la hauteur de la dette technique qu’ils auraient accumulĂ©e. En revanche, ils auraient gagnĂ© des utilisateurs plus rapidement.

HonnĂȘtement, je comprends la motivation du “quick and dirty”, mais le fait que ce soit devenu un dogme m’interpelle. Comme tous les autres dogmes, j’aime bien les questionner et vĂ©rifier que si je les suis, c’est bien parce que je l’ai dĂ©cidĂ©.

Bref, comme Gauvain et moi somme plutĂŽt des “investisseurs”. Nous avons prĂ©fĂ©rĂ© investir du temps en amont pour choisir une stack sur laquelle il sera plus rapide d’itĂ©rer en aval.

Gauvain a joué un rÎle majeur lors de cette premiÚre étape : grùce à lui on a une stack technique moderne et un projet (open-source) bien organisé.

Glow up (mais pas trop)

C’est pas tout d’avoir une stack technique moderne. C’est mĂȘme invisible pour l’utilisateur. Contrairement au
 design.

Et lĂ , c’était l’heure du relooking.

Seulement, on avait une grosse contrainte, quasi antithĂ©tique. Pour l’expliquer, je vais faire un petit dĂ©tour.

En fait, je suis convaincu qu’avoir une marque forte est un puissant levier de croissance (e.g Liquid Death ne vendrait pas une seule canette sans sa marque). Mais pour que ça marche, il faut que la marque rĂ©sonne avec notre cible.

Or nous, on ne sait pas encore bien qui est notre Ideal Customer Profile. On ne sait pas si c’est un recruteur en freelance, ou bien le premier recruteur d’une startup early-stage.

Donc pas la peine de construire une marque si c’est pour la jeter à la poubelle deux mois plus tard.

Et lĂ , j’en reviens au design : le design n’est que l’un des nombreux vĂ©hicules d’une marque. Donc si on ne veut pas que la marque soit clivante, a fortiori, le design ne peut pas l’ĂȘtre non plus.

C’est pour cette raison qu’il nous fallait un truc Ă  la fois propre et insipide. Il nous fallait un design gentil 🌝 pas de vagues.

Le design n’est pas une discipline d’artiste dĂ©sintĂ©ressĂ©. Il ne s’agit pas “d’ĂȘtre joli” mais de fluidifier l’UX et de renforcer la marque. Donc la bonne posture n’est pas celle d’un peintre face Ă  une toile blanche (ce que j’ai tendance Ă  faire).

J’ai tentĂ© des trucs sur Figma, et comme souvent, c’était un peu baroque, un peu trop fleuri — juste “un peu trop”. J’ai invoquĂ© le joker Sixtine Mailleux pour nous aider (une de mes meilleures amies, excellente designer).

GrĂące Ă  ses conseils, Gauvain a pu modifier ce que j’avais crĂ©Ă© et construire le design parfaitement neutre qu’on connait aujourd’hui.

Il ne restait plus qu’une chose à faire.

Publier l’extension (sous un nouveau nom đŸ€Ą)

Une fois qu’on a reprogrammĂ© et re-designĂ© l’extension, on n’a en rĂ©alitĂ© fait que 90% du chemin. C’est bien, mais les 10% restants sont vitaux : il faut la (re)publier, et vite ! Parce que ça fait dĂ©jĂ  3 mois qu’on est sur le projet et qu’il ne s’est rien passĂ© de significatif pour les utilisateurs.

On a donc visĂ© l’efficacitĂ©, Ă  commencer par notre nouveau nom 🌝

VoilĂ  pourquoi nous avons dĂ» changer de nom.

Heureusement, j’avais encore le nom de domaine de mon “agence” Recruitivity sous la main. On a donc pris le nom recruitivity temporairement, et dĂ©cidĂ© de nous poser des questions existentielles plus tard.

Le reste du 80/20 c’est l’écriture. Quoi qu’on en dise, le plus important en marketing, Ă  l’écrit ou Ă  l’oral : ce sont les mots.

Donc on passe une semaine comme ça, Ă  Ă©crire notre contenu, vidĂ©os, slides, emails ; Ă  tout calibrer, peaufiner, ajuster. On sait que l’équipe du chrome store peut valider notre code d’un moment Ă  l’autre.

Il faut qu’on soit prĂȘts.

On se voit dĂ©jĂ  rĂ©pondre Ă  un torrent d’emails de fĂ©licitations, Ă  recevoir des suggestions de fonctionnalitĂ©s toutes plus pertinentes les unes que les autres, Ă  un appel de Macron, ...

Quand soudain :

Nice. On vĂ©rifie que l’extension est effectivement sur le store et on commence Ă  envoyer les premiĂšres campagnes d’emails Ă  nos (anciens) utilisateurs, par salves, pendant 10 jours.

À l’heure oĂč j’écris cet Ă©pisode, un mois a passĂ©, et l’heure du bilan a sonnĂ© et
 je crois mĂȘme qu’on a perdu des utilisateurs depuis la release mdr.

Tout ça Ă  cause d’un minuscule changement dans nos fonctionnalitĂ©s — un changement microscopique, mais vital. J’en parlerai en dĂ©tail dans un prochain mail pour pas que celui-ci fasse 600m de long.

Suspens.

J’ai envoyĂ© des mĂšmes Ă  un prospect

Changeons de sujet avant de se quitter.

Il y a quelques jours, je me suis retrouvĂ© Ă  envoyer un florilĂšge de mĂšmes Ă  un prospect par mail. Quand je me suis vu Ă  la 3Ăšme personne en train de le faire, je me suis dit qu’on vivait une Ă©poque marrante. Pas dĂ©sagrĂ©able, mais marrante.

Pourquoi j’ai fait ça ? Parce que mon prospect Ă©tait trĂšs déçu des performances de ses LinkedIn Ads dans lesquelles il a utilisĂ© des mĂšmes crĂ©Ă©s par ses soins.

C’était une bonne idĂ©e, je ne lui jette pas la pierre. Mais j’y ai vu la parfaite illustration du gap entre sa gĂ©nĂ©ration et la mienne.

On l’a tous observĂ© aprĂšs avoir montrĂ© un mĂšme ABSOLUMENT HILARANT Ă  nos ancĂȘtres, sans rĂ©ussir Ă  leur dĂ©crocher plus qu’un sourire :

“Aha, oui rigolo le chat. Allez, laisse-moi faire ma dĂ©claration d’impĂŽts bastien”

J’ai suggĂ©rĂ© Ă  ce prospect de se baigner dans la culture internet oĂč circule l’essentiel des mĂšmes. RĂ©trospectivement, je me dis que la meilleure chose Ă  faire aurait peut-ĂȘtre Ă©tĂ© simplement d’embaucher un jeune et de jouer du gap gĂ©nĂ©rationnel.

Write in Public

Je teste le write in public, curieux de recueillir vos avis.

À plus 🖖 

Bastien.

Reply

or to participate.