Une fois que vous commencez à chercher un développeur indépendant avec qui collaborer, vous remarquerez qu'ils sont partout. Les marchés indépendants en ligne sont remplis de candidats qualifiés. En plus de cela, vous êtes obligé de trouver au moins un ou deux (cent) dans la ville la plus proche.

Maintenant, vous avez la tâche difficile de réduire ce réservoir de talents à celui qui fonctionnera le plus efficacement avec vous. Même si vous avez un certain savoir-faire technique, c'est intimidant, mais cela peut sembler presque impossible si vous ne le faites pas. D'un autre côté, il est facile de penser que les considérations techniques sont les seules qui comptent. Quiconque a embauché un génie avec lequel il est impossible de travailler peut vous dire à quel point cela peut être erroné.

Dans cet article, nous allons nous concentrer sur quelques moyens de vous assurer que vous obtenez le partenaire le plus compatible.

Découvrez leur travail

Demandez à voir certains travaux terminés du développeur. Avant de commencer votre évaluation, assurez-vous de bien comprendre les éléments sur lesquels votre prospect a travaillé. Passez du temps pour explorer leur projet. Prenez des notes de ce que vous aimez et n'aimez pas. Peut-être ont-ils créé une application Web très rapide, mais elle impose des contraintes étranges au mot de passe de l'utilisateur. Demandez-leur ce qui les a amenés à prendre ces décisions.

Tout type de développement logiciel, que ce soit le Web, les applications mobiles ou les ordinateurs de bureau, consiste à trouver les meilleurs compromis. Entendre les différents compromis auxquels un développeur a été confronté et son approche pour résoudre le problème est extrêmement précieux pour évaluer la manière dont ils vont résoudre les problèmes rencontrés par votre projet.

Si vous en savez un peu plus sur le code, vous pouvez explorer le compte GitHub du développeur pour voir ce qu’il a écrit et les projets auxquels il a contribué. Le fait de voir leur code vous aidera à comprendre s’ils correspondent bien d’un point de vue technique. Cela vous donne une idée plus concrète de la liste des réalisations des développeurs en termes de compétences.

Voici quelques aspects du GitHub du pigiste qui ne sont peut-être pas évidents au début, mais vous devriez porter une attention particulière à:  

  • Langues: le pigiste s'en tient-il à une ou deux langues préférées, ou se débrouillent-ils dans de nombreuses langues différentes? Trouver un spécialiste des technologies dont vous avez besoin pour votre projet peut faire avancer les choses rapidement, mais un pigiste ayant une vaste expérience peut proposer des suggestions sur d'autres types d'outils mieux adaptés à votre travail.
  • Commentaires et documentation: le code est-il bien documenté? La nature de la pige signifie que d'autres personnes peuvent travailler sur le code à un moment donné. Le code de ce pigiste sera-t-il facile à utiliser? Sinon, cela signifie que vous vous engagez peut-être plus que vous ne le souhaitez. Certains développeurs pensent que le code d'auto-documentation signifie qu'ils n'ont pas besoin de commentaires. Si vous ne voyez pas les commentaires, comment trouvez-vous le code lisible?
  • Contribuent-ils à d'autres projets? Aussi paradoxal que cela puisse paraître, il est souvent plus difficile de contribuer à d’autres projets open-source que de créer votre propre projet. Le code des autres personnes peut être difficile à comprendre, mais le faire est une compétence nécessaire. Ceci est particulièrement important si vous apportez un développeur pour travailler sur une base de code existante. S'ils ont contribué à l'open source, il est plus probable qu'ils écrivent du code que les autres pourront conserver plus tard, car ils comprennent les défis à relever.

Découvrez comment (et quoi) ils apprennent

Des meilleures pratiques à la technologie utilisée, le développement logiciel évolue rapidement. Si vous vous retrouvez avec un développeur coincé dans les pratiques et la technologie d'il y a 10 ans, vous manquerez d'outils et de techniques qui pourraient améliorer votre projet, le rendre plus rapide et plus facile à gérer.

Demandez aux prospects comment ils apprennent de nouvelles choses et quelle est la chose la plus récente qu'ils ont apprise et qui les aide dans leur développement. Qu'ont-ils gagné en l'apprenant? Quelle est la prochaine chose qu'ils aimeraient apprendre et pourquoi?

Même si vous ne connaissez pas les spécificités de leurs réponses, vous pouvez avoir une idée de la curiosité de ce développeur. Trop de curiosité peut mener à la construction de projets sur des fondations expérimentales et non éprouvées, mais, en général, un développeur curieux peut apporter plus à votre projet.

Trouver un communicateur compatible

La communication peut faire ou défaire un projet. Assurez-vous que les développeurs avec lesquels vous travaillez sont prêts et capables de communiquer d’une manière et avec une fréquence avec lesquelles vous pouvez vivre. La plupart des développeurs ont des outils de communication qu'ils utilisent avec leurs collègues. Regardez-les et voyez s'ils vont travailler pour vous. Si ce n'est pas le cas, découvrez si le développeur accepte les outils alternatifs que vous proposez.

C'est aussi un bon moment pour savoir à quelle fréquence vous allez entendre le développeur. Si la réponse est "une fois à la fin de chaque étape", vous allez probablement être mécontent. Quelles sont les chances que le développeur comprenne votre projet exactement comme vous le souhaitez la première fois? Quelles sont les chances que chaque pièce distincte constituant un jalon achevé soit parfaitement en place, comme vous l'avez imaginé?

Les check-ins réguliers (au moins une fois par semaine) peuvent résoudre les petits malentendus avant qu'ils ne deviennent de gros problèmes.

Les tester avec un projet

Vous apprendrez plus avec cette méthode qu'avec tous les autres combinés. Poser des questions approfondies et jeter un coup d'œil sur leur code ne peut que vous donner un aperçu de ce qu'est le travail avec une personne. La meilleure façon de comprendre ce que cela signifie de travailler avec eux est de le faire. Un test est également votre meilleure opportunité pour dépasser les aspects techniques et les choses qui comptent vraiment: Allons-nous être malheureux en essayant de travailler avec cette personne?

Si possible, séparez un petit morceau de votre projet et travaillez avec le client potentiel pour le compléter. Si possible, payez-les pour le faire. Cela fait quelques bonnes choses pour vous:  

  • cela vous donne un moyen peu risqué de tester le travail avec le développeur;
  • il vous laisse un livrable utile même si la relation ne fonctionne pas;
  • Si vous pouvez vous permettre de payer un taux équitable, cela sera bénéfique pour vous et pour le développeur.

Je mentionne ce dernier point parce que les entreprises sont parfois tentées de demander aux développeurs de créer gratuitement un petit projet de test pour les évaluer et leur style de travail. Ce n'est pas un bon moyen de commencer une relation avec votre développeur. S'ils peuvent construire quelque chose qui vous sera utile - même si, au début, ce n'est pas tout le projet que vous voulez construire - cela ne vaut-il pas la peine de payer?

C'est probablement mieux que vous ne présentiez pas cela au développeur en tant que projet de test. Vous n'avez pas besoin de les mentir ou de les tromper, mais présentez-les comme le projet. En fait, c'est le projet pour l'instant. Si tout se passe bien, vous aurez un autre projet à proposer, mais ne vous en occupez pas. Cela affectera négativement la dynamique de la relation. Personne ne veut faire l'objet d'expérimentation. Si tout se passe bien, le développeur voudra travailler avec vous sur de futurs projets; vous n'avez pas besoin de l'utiliser au début pour les garder en haleine.

Pendant cet engagement, gardez les yeux ouverts pour les drapeaux rouges. Réfléchissez bien aux types de comportement que vous ne pouvez pas contourner.

Un examen minutieux porte ses fruits

Si votre calendrier de réalisation du projet approche et que vous n'avez pas le temps de prendre toutes ces mesures, faites au moins le projet de test. Demandez à votre prospect de construire un morceau du projet plus large, de cette manière, votre risque est faible et votre temps est perdu. C'est un outil extrêmement précieux pour vous assurer qu'il s'agit d'une relation que vous souhaitez avoir. Même si cela échoue et que vous devez trouver quelqu'un d'autre, cela vous coûtera moins de temps et d'argent que de vous engager auprès d'un partenaire de développement pour construire le projet entier uniquement pour le faire échouer.

Au début, il est beaucoup plus facile de choisir quelqu'un qui vous plait et d’espérer pour le mieux. Parfois, cela peut fonctionner, mais, pour le bien de votre projet, vous devriez entrer en relation avec vos yeux autant que possible.

L'image sélectionnée, image de travail d'équipe via Shutterstock.