Au sein de cet article, j’aimerais vous partager deux visions :

  • La vision du développeur en freelance que je suis.
  • La vision des entrepreneurs que j’interviewe et qui recrutent des freelances régulièrement.

Si vous lisez ces lignes, vous savez le très bien, recruter un bon développeur est difficile. C’est d’autant plus compliqué lorsqu’on n’a parfois pas toutes les compétences techniques nécessaires pour évaluer les candidats.

Comment limiter les risques que la mission soit un échec ? Comment savoir si la personne est compétente pour notre projet ? Comment savoir si l’on paie le juste prix ? Comment attirer le meilleur candidat ? Ce sont les questions auxquelles je vais tenter de répondre ici.

Conseil n°1 : préparez-vous

En amont d’un recrutement, il vous faut une vision claire de ces 3 aspects :

  • Qu’est-ce que j’attends du freelance ?
  • Qu’est-ce que j’ai à offrir à ce dernier ?
  • Quel type de contractualisation notre relation va-t-elle prendre ?

Ce que vous attendez du prestataire

Vous avez une idée plus ou moins précise de l’application que vous souhaitez développer ? Super ! Mais, cela ne suffit pas. Il faut que vous posiez vos idées sur le papier.

Ce précieux travail de rédaction permet de prendre conscience de la complexité du problème qu’on essaie de résoudre. Ce n’est qu’une fois que vous avez commencé à lister les fonctionnalités que vous aurez une idée précise de la quantité de travail à fournir. Cette liste servira de base d’estimation à chaque freelance que vous consultez. Ainsi, vous aurez un point de comparaison sur les prix !

Mais ce n’est pas tout.

Si vous n’êtes pas préparé, vous serez incapable de répondre à des questions basiques comme : quelles sont les fonctionnalités les plus importantes à vos yeux ?

Vous allez donc perdre en crédibilité face aux développeurs aguerris. Dans la tête d’un indépendant, un client qui ne sait pas ce qu’il veut, c’est un client qui change souvent d’avis… N’oubliez jamais une chose, les meilleurs développeurs d’application mobile ont le choix des clients, vous aussi vous devez les convaincre de travailler avec vous.

Je vous conseille de faire au moins deux choses :

  • Lister les fonctionnalités de votre application d’un point de vue de l’utilisateur.
  • Réaliser des maquettes (même grossières).

Il existe d’ailleurs de nombreux outils pour cela (zeplin.io, invisionapp.com, justinmind.com…). Autre solution possible : faire appel à un design UX/UI qui fera ce travail avec vous.

Ce que vous allez offrir au freelance

Bien évidemment, la réponse la plus commune est de l’argent. Il est important pour cela que vous ayez une idée du budget. Mais ce n’est pas la seule contrepartie possible…

La « social proof » : si vous êtes une entreprise connue et reconnue, le simple fait qu’un développeur travaille pour vous va immédiatement améliorer sa valeur sur le marché. N’hésitez pas à l’indiquer lors de l’entretien.

Le challenge technique. Mon astuce : expliquez le problème fondamental que vous essayez de résoudre et comment vous comptez vous y prendre. Si vous voyez les yeux de votre interlocuteur s’illuminer, c’est bon signe !

La mission de votre entreprise. Pourquoi avez-créé cette société ? Quelles sont vos valeurs ? Certaines personnes sont animées par des causes. Ces personnes-là seront d’autant plus motivées à travailler avec vous s’ils partagent les vôtres.

Vous pouvez aussi offrir une partie des parts de votre entreprise afin d’intéresser le développeur à la réussite du projet. Maintenant, je vous déconseille de le faire dès le début. Cela ne vous viendrait pas à l’idée de faire une proposition en mariage dès le premier rendez-vous, non ?

La formalisation du contrat

Dans cette section, j’aimerais explorer plus en détail les deux types de relation contractuelle que l’on retrouve le plus souvent : le forfait et la régie.

Le forfait : c’est une obligation de résultat. Le développeur s’engage à réaliser les fonctionnalités X et Y pour un certain montant. Quel que soit le temps qu’il met, il doit livrer le résultat attendu.

Ce type de contrat présuppose que le développeur soit capable d’estimer précisément le temps de travail à fournir. Si c’est le projet est trop complexe, le développeur est forcé de prendre une marge de sécurité importante qui pourrait vous desservir.

À contrario, s’il se rend compte que le temps de travail est bien supérieur à ce qu’il a prévu, il risque d’avoir du ressentiment envers vous ou pire, disparaître dans la nature et ne jamais donner de nouvelles.

Malheureusement, cette dernière situation arrive bien plus souvent qu’on aimerait l’admettre. Je vous conseille donc de partir sur une première prestation au périmètre restreint (2-3 semaines pour commencer).

La régie : c’est une obligation de moyen, le développeur s’engage à passer un certain nombre de jours à travailler sur votre projet.

C’est un fonctionnement idéal pour un projet long et complexe quand vous avez le budget suffisant. C’est un modèle qui est d’ailleurs très privilégié par les développeurs d’application mobile les plus expérimentés.

Ces derniers s’engagent à travailler X jours sur votre projet et à faire le maximum pour vous.

Ce modèle offre beaucoup plus de flexibilité que le forfait où l’attendu est souvent figé après signature du devis.

Néanmoins, c’est un modèle que je vous déconseille si votre budget est très limité.

Conseil n°2 : attention aux vendeurs de technologies

Il existe une multitude de technologies et langages pour développer des applications mobiles : Swift, Kotlin, Java, React Native, Flutter, Titanium, etc. En fonction de votre projet et de votre équipe, certaines technologies seront plus adéquates que d’autres. Je vous invite à faire attention au biais de chaque développeur à vendre sa technologie comme la meilleure solution.

Doutez toujours quand on vous vend une technologie avant même de connaître les fonctionnalités que vous souhaitez… Se renseigner de soi-même pour vérifier les dires d’un développeur mobile en faisant une recherche Google peut vous épargner plein de problèmes !

Comme disait Steve Jobs, le cofondateur d’Apple : « You’ve got to start with the customer experience and work backwards to the technology  » / Vous devez commencer par l’expérience utilisateur pour ensuite aller vers la technologie.

Conseil n°3 : « Pas besoin d’être un chef étoilé pour savoir si ce qu’on mange est bon »

Vous avez trouvé le profil d’un freelance qui semble correspondre à votre besoin. Maintenant, vous vous demandez si c’est un bon élément pour votre équipe ou non ?

Regardez son portfolio, vous y trouverez certainement le nom des applications sur lesquelles il a travaillé. Jetez aussi un coup d’œil aux avis sur l’App Store et le Play Store, c’est un premier indicateur de qualité.

Je vous invite aussi à télécharger et tester vous-mêmes ces applications. Vous semblent-elles faciles à utiliser ? Quel est votre ressenti ? Voyez-vous des bugs ? Que se passe-t-il si vous coupez internet ? 

Conseil n°4 : l’effet « shaman »

Quand on ne comprend pas la technologie, on a l’impression que c’est « magique ». En réalité, le développement d’application mobile n’a rien de surnaturel.

Cette incompréhension est parfois entretenue par l’utilisation du jargon technique. La capacité à vulgariser et à être pédagogue est une qualité appréciable. Vous pouvez la tester facilement en posant cette question en entretien : « Pourriez-vous m’expliquer (comme si j’étais un enfant de 5 ans) le dernier problème technique auquel vous avez été confronté ? »

Conseil n°5 : les références

Avec qui le développeur a-t-il travaillé par le passé ? Quel a été le résultat de cette collaboration ?

Le système d’avis de Malt et des autres plateformes permettent de se rassurer sur le sérieux d’un prestataire. Vous pouvez aller un cran plus loin en contactant les anciens clients d’un indépendant.

Voici des idées de questions :

  • Est-ce que vous retravailleriez avec untel dans le futur si vous en avez le besoin ?
  • Depuis la fin de la prestation, avez-vous rencontré des bugs particuliers ?
  • Comment vous êtes-vous organisé durant le projet ?
  • Qu’est-ce que vous changeriez dans la collaboration si vous deviez travailler ensemble à nouveau ?

Conseil n°6 : à quoi la mission va-t-elle ressembler ?

J’ai une règle avant de faire soumettre le moindre devis à un client. Mettre à plat l’organisation de la mission.

C’est un sujet que je vous conseille d’aborder rapidement. Il n’y a rien de plus anxiogène que de ne pas avoir de nouvelles d’un freelance… Alors, autant mettre en place une routine ensemble dès le début. Par exemple, une réunion quotidienne pour faire le point sur l’avancée du projet. Des démonstrations des développements de façon hebdomadaire et la mise en place de versions de « test » afin que vous puissiez tester vous-même l’application sur votre téléphone.

Je vous conseille d’explorer des outils pour la gestion de projet :

  • Une messagerie instantanée et visioconférence (Slack, Teams, Skype…)
  • Un outil de gestions de projet (Jira, Trello, Klaxoon…)
  • Un gestionnaire de code (Gitlab, Github…)

Conseil n°7 : secret de polichinelle

Pour le dernier conseil, j’aimerais vous partager une technique secrète : les questions pièges. Avant d’échanger avec les différents développeurs, préparez une série de questions que vous poserez à chacun d’entre eux.

Préparez 1 ou 2 questions auxquelles vous avez déjà la réponse. Maintenant, vous avez deux possibilités :

  • Poser la question et voir si la personne est réellement compétente.
  • Poser la question et suggérer une réponse erronée afin de juger de la pédagogie de la personne en face de vous.

J’espère sincèrement que cet article vous aidera dans le recrutement et l’évaluation des développeur d’application mobile.

Je suis Lilian Alvarez, freelance en développement d’application mobile et hôte sur « Le Podcast Tech ». Au sein de mon podcast, j’ai la chance d’échanger avec les meilleurs entrepreneurs de la tech française. Retrouvez ici mon profil Malt et écoutez mon épisode du Podcast Tech avec Hugo Lassiège, CTO et co-fondateur de Malt ici.