Recherche devs spécialistes, et non de couteaux-suisses techniques

Aujourd’hui, petit billet à dominante recrutement, cela faisait bien longtemps tiens :)

Chez Wisembly, nous recherchons en permanence des personnes talentueuses pour rejoindre nos équipes. Souvent en postant des offres bien précises, parfois, au détour d’un chemin, par pur hasard, au grés des rencontres.

Et si je n’ai toujours pas changé d’avis sur l’inutilité d’un CV académique sans projets perso et / ou profile Github (ou Dribble, Pen.io, Stackoverflow..), je me rends compte que trop de candidats à mon goût se présentent à moi comme véritables “couteaux-suisses” techniques sachant tout faire, indispensables pour ma startup.

Dans mon cas, ainsi que celui de nombreuses startups, je pense que c’est totalement faux. Je vais essayer de détailler un peu ici pourquoi.

Tout d’abord, ce qui nous différencie nous startups du reste du monde à mon sens, c’est la capacité à concevoir et délivrer de nouveaux produits ou usages comblant de la façon la plus élégante / efficace qu’il soit un cruel manque business.

Pour ce faire, il ne suffit pas d’aligner superficiellement quelques lignes dans deux trois langages et frameworks différents et pusher le tout sur un serveur. Il faut (et ceci est le rôle du CTO normalement) étudier quel est le meilleur mix techno à adapter pour mener à bien son développement produit, composé normalement de quelques techos “standards / classiques” mais aussi de techos plus méconnues, innovantes et qui évoluent rapidement.

Dans ce contexte là, il faut:

  • être capable de maitriser et pousser dans ses retranchements chaque techno employée, pour en tirer sa quintessence, gagner en performance, efficacité de développement et expérience utilisateur.
  • connaitre sur le bouts des doigts ses technos pour les agencer efficacement et avoir une archi robuste mais souple qui permet de shipper vite, pivoter aisément et iterer agilement sur ses features.
  • savoir placer ses meilleurs ressources sur du front, d’autres sur du back, d’autre sur de l’algo, d’autres sur ceci ou cela

Je pense que pour être le meilleur compétiteur dans son domaine technique / business, il faut être le plus exigeant et le plus perfectionniste tout en restant le plus efficace / performant possible (rien que ça!). Dans le monde de la technique, cela ne peut venir sans expériences et kilométrage au compteur dans le code en général, et dans quelques techno en particulier. Bien que ce billet sonne très vrai, et qu’un excellent codeur dans un langage donné peut être tout aussi bon dans plein d’autres, je suis convaincu qu’une personne faisant à longueur de journée du front, du back, du js et du dev ops sera juste moyen en tout et excellent en rien.

Attention, ne me faites pas dire ce que je n’ai pas écrit. Il est important d’être pluridisciplinaire et de pouvoir mixer les sensibilités / technos: c’est une preuve d’ouverture d’esprit qui ne peut qu’être bénéfique !

Mais lorsque je rencontre un candidat et que l’entretien tourne ainsi:

- “Bonjour, c’est quoi ton kiff dans le code au quotidien, au boulot ou le soir chez toi ?”
- “Alors moi ce que j’aime, c’est faire du Python sous Django et du Symfony2 en PHP, tout en faisant du javascript MVC sous Ember ou Angular, en utilisant HTML boilerplate et Bootstrap en less. Parfois du Saas”
- “Ah, très bien, et tu préfères travailler plus sur quoi? Du gros back, du gros js ou de la UI/UX ?”
- “Ah mais j’aime tout moi !”
- “Bon, et du coup, tu te vois plus travailler dans une team back, js ou front ?”
- “Bah, comme vous voulez, je sais tout faire et j’aime tout faire”
- “Bon… t’as des projets à me montrer ?”
- “Oui, 5 sites, avec des potes à chaque fois, j’ai un peu touché à tout, j’adore ça hihihi”
- “Très bien, on se rappelle !..”

Et bien ça ne va pas être possible mon garçon. Pour moi en tout cas.

Peut-être qu’au sein d’une startup sans CTO ce genre de profil peut faire l’affaire, peut-être qu’au tout début d’une startup en employé dev n°1 ou n°2 cela peut passer. Mais rapidement je pense il faut veiller à former des teams par technos / compétences afin de les pousser à l’excellence, et ce genre de profil “indécis”, non “spécialisé” aura difficilement sa place.

Et vous qu’en pensez-vous ? Quelles sont les teams que vous avez constitué ? Recruteriez-vous ce genre de profil et dans quels cas ?

26 thoughts on “Recherche devs spécialistes, et non de couteaux-suisses techniques

  1. Salut,

    Je suis très bien placé pour parler de ce sujet car je suis passé du stade de couteau suisse à celui de spécialiste (en fait, c’est la même chose mais présenté différemment, j’oserais même dire que c’est du “CV Marketing”).

    Je précise que je suis indep et que je suis un bestiau dans au moins 20 technos (je reste anonyme donc vous ne prendrez pas ça comme de la vantardise).

    Avant, j’étais un couteau suisse mais c’était avant…

    J’étais un technicien supérieur, je prenais toutes les missions qui se présentaient à moi. Du coup, lorsque j’alignais toutes mes missions dans mon CV (et que j’espérais que l’effet serait : il s’en sort toujours quelque soit le contexte), mes clients (c’est à dire mes recruteurs) ne savaient pas me ranger dans une case et, en particulier dans notre pays il faut pouvoir être rangé dans une case.
    Les commerciaux qui essayaient de me placer avaient du mal à le faire.

    Après, j’ai passé mon diplôme d’ingé, c’était juste avant maintenant…

    Quelle libération… Je ne suis pas devenu meilleur, plus intelligent ou quoi que ce soit, je n’ai juste plus eu à raconter ma life à chaque entretien pour convaincre mes interlocuteurs que j’étais bien un nain formaticien. Du coup, je pouvais mettre en avant mes compétences fonctionnelles puisque les compétences techniques étaient déjà “validées” par le diplôme.

    Maintenant, j’ai appris à monter un CV…

    Ben voilà, je suis toujours le geek gravissime qui a 20 bécanes chez lui et qui code dans 12 langages, se gave sur les plus gros moteurs de base de données et qui joue comme un taré mais maintenant, je dis juste que je suis expert de l’écosystème [Ma techno] (ce qui implique 40 compétences) et surtout, je choisi mes missions avec le plus grand soin, même si parfois ça me fait perdre un peu d’argent.
    4 domaines fonctionnels (ce qui est déjà beaucoup) : Banques, Assurance, Media, Logistique.
    A chaque fois j’essaye de montrer que j’apporte toujours quelque chose à mon client tout en respectant ses attentes.

    Pour conclure, je suis tout à fait d’accord, il vaut mieux être spécialisé toutefois, il vaut mieux ne pas s’enfermer sur une techno et encore moins sur une version exemple : Expert conception, programmation et optimisation SGBDR (Oracle, SQL Server, MySQL ainsi que plusieurs ETL comme Power center et SSIS).

    Recruteur : Vous êtes aussi bon sur toutes ces technos ?
    Vous: Une fois qu’on sait concevoir une base de données robuste, peu importe la techno, j’ai eu à le faire sur tous ces moteurs, je n’ai jamais eu le moindre souci.
    Recruteur : Ok pour la conception, mais la programmation sous PL SQL et sous T-SQL est quand même très différente, vous connaissez les deux ?
    Vous : Google est mon ami, l’algorithmique des bases de données est sensiblement la même quelque soit le moteur (à part SQL Server avec lequel on peut inclure faire du C# à condition d’avoir butté le DBA), le reste n’est que syntaxe, en plus, Google permet toujours de trouver l’équivalent d’une techno à l’autre vous tapez une commande PL SQL suivit de T-SQL et google trouve l’équivalent.
    Il suffit donc de connaitre les grands principes et non les spécificités des langages.

    Pour conclure, je dirais vivez votre vie de geek trankill MAIS soignez et spécialisez votre CV. Si vous avez des missions disparates parce-que vous avez été ballotté par une SSII bétaillère, inventez-vous un rôle au sein de la SSII (même si c’est pas tout à fait vrai ou officiel). Par exemple Référent technique C# ou Lead Dev C#, présentez ce rôle et indiquez que vous étiez affecté dans plusieurs équipe pour les faire monter en compétence pour pouvoir répondre aux exigences du client (ne mentez pas trop quand même, les RRH sont pratiquement des détecteurs de mensonges).

    • Je suis d’accord avec votre réponse,
      bientôt 59 ans et vus beaucoup de recruteurs.
      Nous sommes dans une civilisation ou il faut pipoter son CV, être jeune, pas cher, hyper compétant avec une gosse expérience .. une sorte la perle rare inexistante ou un gros menteur.

      Je ne suis pas ingé. d’école et ça, ça à été dur …. mais par chance une entreprise un jour m’a donné le statut .. Je faisais le même job que les autres et puis ça faisait mieux chez les clients.
      Merci à cette entreprise ça m’a permis de rentrer dans une Société (pas une entreprise mais Société avec un grand S) ou on ne regarde pas les capacités mais l’apprentissage/restitution en mode perroquet.

      Expert dans un domaine … c’est quoi ? le mec qui a appris à parfaitement répéter les même mouvements à la perfection ? un super OS quoi !

      J’ai tellement rencontré d’experts .. mais à peine plus que moi et tellement limité à leur petit domaine qu’ils ne voyaient plus ce qu’il y avait autour d’eux, tellement enfermé dans leur truc … et tellement vite obsolète car la technologie va plus vite qu’eux.

      Moi aussi je suis un adepte du Googleling et je considère que la connaissances des paradigmes est supérieure à la connaissance du langage/framework qui de toute façon sera obsolète plus vite que moi.

      J’ai très envie développer des compétences très pointues sur Erlang
      RH: sur quels grands projets avez vous travaillé ?
      Sur des petits projets perso et des maquettes/démo en entreprise!
      RH: donc pas de grandes d’expériences significatives ?
      l’oeuf et la poule .. sans futur possible

      Et votre projet perso il est sur Github ?
      Non Monsieur mon projet perso il est perso !
      si j’arrive au bout je devrait faire un choix: business ou pas. Et puis un projet perso ça n’avance pas vite car l’entreprise est gourmande de mon temps et les W.E pas si libre. Et oui je ne suis plus étudiant! Et oui je m’intéresse autant à mon RaspberryPi qu’à mon serveur hébergé perso et mon projet dessus.

      Un bon Recruteur c’est celui qui prend des paris, des risques et heureusement que j’ai eu la chance d’en rencontrer.
      Mais ils sont rares , la plupart pratique la politique du parapluie. D’ailleurs la plupart sont des mauvais persuadés d’être bons. On choisi JAVA parce que tout le monde choisi JAVA donc ça doit être bien !

      J’ai appris pleins de techno et de langages mais je sais précisément sur quoi j’ai envie de bosser et ce que je ne veux pas faire, mais ce n’est pas pour autant que je me limite à un seul truc. Par contre à partir du moment ou je suis motivé je me donne à fond .. l’inverse est tout aussi vrai .
      Et puis j’ai besoin de travailler et les entreprises n’utilisent pas forcement les technos qui m’excitent le plus alors je compose. Qui fait du Erlang, du Racket-lang, du Elixir en France ? et puis il a aussi les domaines .. moi la finance par exemple ça m’insupporte ! La qualité, la haute disponibilité et les interfaces graphique ça me branche.

      Pour conclure la teneur de ce blog me dérange .. discours en somme très classique des recruteurs ordinaires

      • Oh, du Erlang il y a quand même quelques personnes qui en font en France, hein ! Si je pouvais trouver aussi facilement des gens qui font du Lua je serais content :)

        • Salut,

          En fait, j’ai un gros projet open source sur codeplex avec 17 contributeurs situés un peu partout sauf en France.
          ——
          Les Français qui se sont penchés sur mon projet m’ont littéralement craché à la gueule, pourtant, grâce à ce truc, j’ai fait 180k€ de CA depuis Aout dernier depuis que j’ai ouvert les sources…
          Les pauvres petits Français qui donnent des leçons à tout le monde mais qui ont la créativité d’une huître le lendemain du réveillon et qui sont persuadé d’être des experts parce-qu’ils ont lu 3 articles sur le net corroboré par un article dans une revue informatique…
          ——
          Pour en revenir au jujet, je ne bidonne pas mon CV, il m’arrive souvent de aire deux missions en même temps, une en remote et l’autre sur site (j’ai la chance de n’avoir besoin que de très peu de sommeil 5h max).

          Voici le plan de mon CV qui me permet de faire un touch down presque à chaque fois :

          Identité
          compétences clé
          Missions du domaine fonctionnel cherché par le client
          Autres missions
          Divers
          Titres & récompenses
          Sport

          A tous ceux qui pensent (c’était mon cas avant) qu’un cv doit rentrer sur une ou deux pages, c’est une connerie, dans ,notre métier, une mission peut tenir sur une demie page
          Entreprise, Année, Durée
          Description fonctionnelle
          Description du contexte technique

          Je vire les mission qui ont plus de 10 ans, le tout rentre sur 3 à 5 pages selon les cas.

          • Identité
            compétences clé
            Missions du domaine fonctionnel cherché par le client
            Autres missions
            Formation & diplômes
            Titres & récompenses
            Divers / Sport (c’est important)

          • je ne connais pas codeplex. Ça ne me semble pas très connu et c’est peut être une des raison de la difficulté pour trouver des contributeurs.
            Et puis on sait que les français sont assez nuls et imbus d’eux même hein ;-)

            concernant le CV je n’ai pas de problème avec .. c’est plutôt après que ça se gate .. RH: vous avez un parcours atypique .. traduction en gros à votre age vous en être encore à coder ! ça se fait pas ça .. enfin en France.

            • En fait CodePlex est très connu du monde Microsoft. Perso, j’apprécie.
              Il permet aussi de gérer les sources avec SVN mais ne le maitisant pas, je préfère TFS.
              Non, le problème des contributeurs c’est le filtrage, il y en a plein qui se propose car ça fait bien d’avoir un ou deux projets Open Source dans son CV mais en vrai, il ne bossent pas tous.
              En plus, le travail sur mon core system est quand même réservé à des mec qui ont minimum 6 ans de C# et 3 ans de la techno MVC… Donc pas facile à trouver… Pas facile à gérer (je crois que maintenant je dois faire le grand écart entre 17 fuseaux horaires)…

              Enfin, dans mon cas, je suis obligé de cacher certaines compétences sinon je passe pour un mito…

              • quand je disais pas connu c’était en référence à GITHUB. Perso je ne ressent pas le besoin d’avoir mon nom dans un projet juste pour faire bien donc je n’ai rien en ligne. Si je contribue un jour c’est parce que je serais tombé sur le truc vraiment passionnant et que je pourrais y consacrer du temps !

                Ça ne fait qu’un an que je fais du C# donc insuffisant et hors concours ;-) et en plus ce n’est pas mon langage préféré. F# à la rigueur et puis je préfère la richesse Linux au monde Krosoft.

                • Alors tu tombes très très bien car j’ai cruellement besoin d’un Jedi du côté obscur pour mettre en oeuvre une plateforme MONO qui est l’équivalent du .net sous linux… C’est pas simple mais c’est super intéressant.
                  Quant à ton C# je peux te l’aiguiser à un point que tu n’imagines pas… F# ??? 13 ans de consulting jamais vu dans une entreprise…

                  • Donc pour info j’ai effectivement tenté C# d’abord sur Mono et c’est comme ça que je me suis retrouvé embarqué dans un IDE sur windows 7 et XP

                    Une petite recherche LinkedIn avec mon nom devrait apporter plus d’info sur mon identité.

                    J’ai cru comprendre que le projet était un CMS pretty ?

        • huum LUA
          J’ai regardé ça de loin. Le coté méta et fonctionnel m’intéressait, mais j’ai eu le sentiment que pour faire du LUA il fallait coder essentiellement en C. LUA a une syntaxe assez simple et classique.

          Concernant les compétences je considère qu’un bon ingé. avec une connaissance des paradigmes et un cerveau normal doit pourvoir apprendre une syntaxe en une semaine et devenir efficace après 3 ou 4 semaines intensives.
          J’ai repris la maintenance et l’évolution d’un gros IDE en C# qui génère du code Python. Je connaissait à peine C# et pas trop mal Python. Il m’a fallu 1 mois pour commencer à devenir opérationnel et 3 mois pour bien entrer dans le truc . C’est juste une question de temps et surtout de motivation.

          Mon simple point de vue.

  2. C’est un point de vue intéressant, mais je n’arrive pas à être vraiment d’accord avec. C’est un fait un peu paradoxal : pour devenir trés pointu et compétent dans un domaine, il faut en sortir.

    Un dev back ne peut devenir excellent s’il n’a pas une bonne visibilité sur les contraintes du développement front. Un dev front ne peut devenir excellent s’il ne comprend pas un minimum les notions de performance et d’accessibilité. Un ingénieur système ne sert pas à grand chose s’il ne collabore pas étroitement avec les deux premiers, etc. Et puis, de plus en plus d’applicatif se retrouve côté front, et faire la distinction dev back / front a de moins en moins d’intérêt.

    Évidemment, il ne faut pas confondre « élargir ses horizons » et « se disperser dans tous les sens ». Évidemment, il est impossible de maîtriser parfaitement 15 frameworks écrits dans 10 langages différents. Mais j’aurais fortement tendance à me méfier d’un développeur django spécialisé qui serait incapable d’aligner trois lignes de css.

    Il ne s’agit pas d’être des « couteaux suisses », des femmes et des hommes à tout faire. Simplement de comprendre que nous sommes des ingénieurs, et que bien maîtriser telle techno ne doit pas nous empêcher d’avoir la compréhension la plus vaste et complète possible de notre domaine d’activité.

    Mais peut-être parlais-tu des CV de débutants qui sont recouverts de technos abordés durant une ou deux heures en TP « oui, je maîtrise java, j’ai même écrit une classe, une fois ». Là dessus, nous sommes d’accord, mais ne sommes nous pas tous passés par là ? :)

    • Je suis d’accord avec toi. Peut-être par mégarde, ou par souci de buzz avec un titre/sujet tranché, je n’ai pas trop insisté sur ceci.

      En effet, un mec enfermé dans sa / ses technos et hermétique au reste est tout aussi bon à jeter qu’un mec qui fait 3 classes dans une techno et passe à la suivante.

      Je que je souhaitais juste mettre en avant dans ce post, c’est qu’il est important autant pour un dev/ingénieur que pour une startup qui embache ce genre de profil, de développer un fort axe techno où l’on excelle, afin de pouvoir répondre rapidement et efficacement à des problématiques innovantes et pointues.

  3. Salut,

    Intéressant ton point de vue, MAIS…

    Lorsque tu vas au resto, tu prend toujours le même plat ?
    Dans tes passions, n’essais-tu pas “de toucher un peu à tout”, “découvrir autre chose”, même si tu préfères “un truc” ?

    Bref, ce que j’essaie de dire c’est qu’en tant que CTO, tu devrais laisser plus de place “aux envies” de tes devs, en te concentrant sur TON ROLE de CTO, à savoir, “contrôler” les livrables (livrés dans les temps et respectant “le cahiers des charges”) et fournir/répartir les ressources nécessaires à tes devs pour qu’ils puissent faire leurs taf.

    Tu as tout à fait raison, plus un dev sera spécialisé dans une techno, plus il sera efficace dans ce “langage”, sauf qu’au bout d’un moment, on se lasse et on veut apprendre de nouvelle chose…et si on peut pas le faire dans ta startup, bah…on s’en va !

    Tout nouveau dans l’entrepreneuriat, j’entend beaucoup d’entrepreneurs/startupers me dire “on arrive pas à garder nos bons dev”.
    Les “devs” sont comme tout le monde: s’ils ne se sentent pas écoutés, à l’aise dans le projet, bah ils s’en vont.
    Je ne dis pas qu’il faille dire oui à toutes leurs demandes (faut rester focus sur le business), mais un devs n’est pas juste la pour pisser du code.

    CONCLUSION:
    Non, il ne faut pas enfermer les gens par technos, au risque de “tuer” leur motivation et leurs idées, parceque c’est “des spécialistes en couche 3 du modèle OSI” et qu’ils n’y connaissent rien en “couche présentation”.
    Il faut leurs donner des dead-lines, un objectif clair et les laisser se gérer…en contrôlant régulièrement l’avancement des livrables :)

    • Je me suis peut-être mal exprimé, mais loin de moi d’enfermer les devs dans une techno ! Mais plutôt, les pousser à développer un *domaine d’expertise* fort. Mes devs backs qui font actuellement du Symfony2 en PHP doivent juste déchirer là dedans. Si demain, Node.js devient vraiment mieux pour nous, ou encore RoR, et qu’il y a l’envie chez eux, on passera dessus en déchirant toujours.

      De même pour les front, actuellement sous Backbone. Le jour où on aura poussé ça à bout, et qu’Ember ou Angular sera une vraie bouffée d’air frais pour progresser et notre business, on passera dessus.

      Mais au moins, chacun excelle dans son domaine de compétence.

  4. Bon, je vais répondre, d’autant plus que tu m’as piqué mon illustration (https://gist.github.com/catwell/3742988) ;)

    Je pense que, comme tu le dis à la fin du post, ça dépend fortement du stade de croissance (et de la taille de l’équipe tech), et qu’en tout état de cause avoir quelques généralistes est toujours utile.

    Si je prends mon cas en exemple, je suis arrivé dans ma boite voilà plus de trois ans pour travailler sur un problème précis de scalabilité. Depuis, j’ai fait de l’algo, écrit presque tout le backend, des outils desktop, des crawlers, conçu des APIs, des métriques, des protocoles, intégré le front Web, je gère les ops au quotidien…

    Évidemment il y a des choses (algo, archi système) que je fais mieux que d’autres (front Web). Mais quand tu n’as pas 20 personnes dans ton équipe technique, il faut faire des choix. Donc tu prends des spécialistes sur les postes clés pour ton cœur de métier (pour nous ça voulait dire des gens très bons en algo et en code bas niveau, et de plus en plus des devs mobile) et pour tout le reste il y a MasterCa^W les généralistes :)

    Après, je ne connais pas de “bon” généraliste qui n’est pas en réalité T-shaped (http://hariesta.blogspot.fr/2012/05/t-shaped-people.html) et qui ne saurait pas répondre à la question “quel est votre domaine de prédilection). Un bon généraliste c’est un profil T-shaped qui exploite la branche horizontale du T, un passionné curieux, pas quelqu’un qui ne s’est jamais posé la question de ce qu’il voulait faire.

    En règle générale, s’intéresser aux autres domaines ne fait jamais de mal. Il y a aussi des spécialités qui ne *fonctionnent pas* sans s’intéresser à d’autres domaines. Par exemple, tu ne *peux pas* être un bon architecte système ou dev backend si tu n’as jamais fait d’ops. C’est comme dire que tu es un excellent designer d’apps mobile mais que tu n’as jamais utilisé autre chose qu’un Nokia 3310.

    Bref, je suis globalement d’accord avec le post si on parle d’une startup qui a grandi un peu. Plus l’équipe grandit et plus tu peux recruter des “spécialistes”, soulageant du même coup tes “généralistes” qui vont pouvoir se concentrer sur ce qu’ils préfèrent et/ou font le mieux (c’est souvent la même chose…). Personnellement je ne serai pas mécontent de ne plus avoir à toucher à du code Web par exemple ;) Mais quand tu es petit tu n’as pas le choix : il te faut des généralistes.

  5. Je dirais que c’est comme les décathlonniens. Commencer par là pour savoir ce qui nous plaît le plus/ce dans quoi on est bon oui. Mais on a jamais vu un decathlonien bien figurer dans un 400m pur. Ça demande un travail spécifique et des qualités spécitiques, faut pas se leurrer.

    • Tout à fait, c’est une bonne comparaison. Idem en natation. Un mec qui se place bien sur du crawl sera pas le mieux placé sur du papillon. Même s’il maitrise toutes les nages, et qu’il peut en début de carrière exceller sur du 100m crawl pour plus tard exceller finalement sur du 400m crawl.

  6. Bon, j’arrive après la guerre mais je tiens à rallumer le feu ^^

    Mon avis est l’exact opposé:
    un généraliste sera toujours meilleur qu’un spécialiste

    Je donne mon exp, j’ai fait un bts orienté dev, pour faire 4 ans d’admin sys full Linux, puis 4 ans d’admin full Windows, là je retourne sur de l’admin full Linux et en parallèle je refais du dev (avec l’intention de lancer ma startup).

    Je réalise que j’ai énormement gagné en dev car je pense non pas performance du produit mais performance du produit DANS son environnement. L’exemple type c’est optimiser la conso de la RAM … pour des pc qui ont 2Go de RAM dont 1Go libre … et prévoir la conso réseau pour du 1G, sauf que c’est 1G pour 20 pc, donc compter plutôt du 20M par pc …
    (je jure c’est véridique, l’appli qui fait croûter le réseau)

    C’est comme l’histoire (si j’ai bonne mémoire) d’un ingé de Toyota qui avait traversé les USA en monospace avec sa famille pour concevoir le nouveau monospace (les précédents ne se vendaient pas). Et c’est pendant ce trajet qu’il comprit tous les erreurs de conception.
    Ou Renault qui engage des femmes pour faire le design de l’intérieurs des voitures, le premier reflexe des femmes a été d’augmenter les rangements (un sac à main ne passe pas dans un vide poche)

    Le dev spécialisé c’est comme l’ingé Toyota qui n’a jamais conduit de voiture. Une équipe de dev spécialisé c’est comme une équipe de concepteurs sans femme.
    Si tu l’a pas vécu certains problèmes, tu ne peux pas les imaginer.

    Ps: pour connaitre la compétence lors du recrutement, j’opterais pour un mini-projet à faire. Puis tu regarde le code et t’a la réponse.
    Ps: regarder GitHub, StackOverFlow, etc … c’est complètement ridicule, 90% des questions sur les forums sont des questions simples; la participation à des projets open source ne prouvent qu’une chose: vous n’avez pas d’enfants.

    • Concernant les projets Open Source :

      2 enfants… 1 femme, 1 chien, un home studio (je joue basse, batterie, guitare et mal du synthé), 22 ordis dont 12 virtuels sans compter le cloud. Ah oui, et je suis gamer aussi.

      C’est pas pacque tu es limité que tout le monde l’est.

      Concernant le reste, comme tu l’as dit, venir compter les morts sur un champ de bataille n’a jamais procuré la moindre gloire.

      Je pense que tu devrais vieillir un peu, passer à la vraie informatique les systèmes d’information soa en client léger et t’apercevoir que croire qu’on sait est la preuve qu’on ne sait rien.

      Sinon tes exemples de bagnoles sont bien choisis mais la femme que tu mets dans la voiture, c’est le fonctionnel que tu as dans le SI. Ta parabole s’applique aux fonctionnels, pas au techniques. Tout le monde s’en fout de la technique aujourd’hui (et je suis le premier à le déplorer).

      • Un peu de délicatesse dans ce monde de brute, ça fait toujours plaisir ;)

        Pour L’Open Source, je te prend comme exemple pour ma démonstration:
        Ta journée ne dure que 24h et tu n’a pas le don d’ubiquité.
        Tout le temps que tu consacre à ta famille ou à faire de la musique, tu ne le passe pas à l’Open Source.
        Donc par rapport à quelqu’un qui va consacrer tout son temps libre, tu va faire moins de commit et participer à moins de projet.
        Un recruteur doit en déduire quoi ?? Tu es un moins bon dev car tu fais moins de commit ? Tu es plus limité car tu participe à moins de projet ??
        Perso comme je n’ai pas de réponse à ça, donc je considére que la participation à des projets Open Source ne permet pas de juger d’un niveau d’un dev, mais seulement de la quantité de temps libre qu’il y consacre.
        Si tu a une méthode pour répondre à cette question, je suis preneur.

        Ensuite ton reflexe d’opposer fonctionnel et technique est un reflexe que je vois souvent chez les spécialistes. Ils opposent leur techno préférée aux autres et on tombe rapidement dans des guerres de religions. C’est un peu comme un commercial qui va négliger toute la technique car ce n’est pas sa spécialité (comme tu le fais remarquer).

        • > je considére que la participation à des projets Open Source ne permet pas de juger d’un niveau d’un dev, mais seulement de la quantité de temps libre qu’il y consacre

          C’est vrai, et c’est un peu l’intérêt de la chose. Ça ne marche clairement pas pour un dev expérimenté qui a une vie de famille, etc.

          Par contre, pour un étudiant qui rentre dans le monde du travail, ça permet de savoir s’il a choisi de consacrer un peu (ou beaucoup…) de son temps libre à écrire du code.

  7. Il est vrai que je pensais à mon projet dont je suis l’auteur et non les projets dans lesquels je suis contributeur (qui ne comptent pas car on peut être contributeur dans des milliers de projets sans rien glander).

    Concernant les compétences satellites, tu as raison. J’ai eu un chef de projet une fois (je j’ai failli MuayThailiser) qui disait, je suis développeur c# je ne sais pas de Oracle.

    Ce con avait fait un traitement bulk sur une base de données située dans un autre pays ligne à ligne avec a chaque fois, ouverture de connexion, traitement, fermeture de connexion pour chaque ligne.

    J’ai refait ça en mode bulk, mon système traitait les 350 000 lignes en 10 seconde, le siens en 3 heures.

    Donc, oui il faut des compétences en plus de sa spécialité, mais il ne faut pas toujours en parler ça peut jouer des tours.

    Je n’oppose pas le fonctionnel au technique, je dis que je bosse pour les fonctionnels et que les astuces techniques que j’implémente, je n’en parle même pas pour n’avoir comme réaction que des : kool ça marche et vite en plus.

  8. Pingback: Le “meilleur développeur de France”: entre escroquerie et imposture | I'm CTO bitch!

  9. Product Manager, PM, Manager Produit : ce metier caracteristique des entreprises Tech peut s’apparenter a un CEO du produit ! Il est en charge du developpement de nouveaux produits : de la vision, a la roadmap en passant par la definition des features et du design, et la gestion du tout. La difference avec le Chef de Produit Marketing reside dans l’industrie et le type de produit : plus technique, il va travailler autant avec les equipes Marketing qu’avec les developpeurs. Son role est de definir avec precision les : _quand, comment, quoi et pourquoi

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>