IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Débats sur le développement - Le Best Of Discussion :

Un développeur devrait-il apprendre plusieurs langages ?


Sujet :

Débats sur le développement - Le Best Of

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2015
    Messages : 16
    Par défaut Alors, alors...
    Java c'est bien, un langage très utilisé et très matures ; nous construisons de grandes, très grandes architectures avec Java, et sa version destinée aux entreprises "JavaEE".
    Ceci étant, il ne faut surtout pas se fermer aux autres technologies, car pour faire de la programmation système, Java peut faire des choses mais pas tout, il ne peut pas accéder aux ressources systèmes comme le langage C par exemple, et ne peut avoir des exécutions plus rapides.

    Donc à mon sens, c'est un faux débat car le problème est dans les développeurs qui ne maîtrisent pas (ou pas assez) les principes de base, car au final ce sont les mêmes, le langage au final n'est rien qu'un outil, une syntaxe

    Les spécificités d'un langage à un autre sont assez limitées, de plus, il n'est pas nécessaire de connaitre TOUS les aspects d'un langage pour s'acclamer expert dans ce langage, bien au contraire, et cela est une ancienne réflexion de "Douglas Crockford", l'un des gouroux du javascript.

  2. #2
    Membre très actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    187
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Janvier 2007
    Messages : 187
    Par défaut
    En 15 ans de carrière j'en ai vu des archi ou des développeurs "Geek" se servir de l'opportunité des projets pour expérimenter leurs nouvelles connaissances sur telle ou telle techno à la mode du moment. Le pb c'est l'après projet où le développeur part sur une autre mission ou pire démissionne et qu'il n'est donc plus joignable, on se retrouve alors avec du code dans une technologie parfaitement inconnue de la nouvelle équipe en place que l'on ne choisi pas toujours avec le turnover qui sévit au sein des SSII. Aussi en y regardant de plus près on trouve du code en réalité mal maîtrisé impossible à maintenir, c'est "expérimental" je le rappel ! Le client lui ne comprenant rien aux technos mis en oeuvre dans son projet trouve inadmissible que l'on arrive pas à maintenir son projet dans des coûts maîtrisés et il a parfaitement raison.

    Donc je suis également très réservé sur la nécessité de connaitre une pléthore de langages, nos clients ne nous confie pas des projets de travaux pratique de lycée ! La solution informatique que le client utilise tous les jours et lui permet de gagner de l'argent et doit être traité avec la plus grande attention et surtout professionnalisme.

  3. #3
    Membre éprouvé
    Avatar de TiranusKBX
    Homme Profil pro
    Développeur C, C++, C#, Python, PHP, HTML, JS, Laravel, Vue.js
    Inscrit en
    Avril 2013
    Messages
    1 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur C, C++, C#, Python, PHP, HTML, JS, Laravel, Vue.js
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 476
    Billets dans le blog
    6
    Par défaut
    Citation Envoyé par Jitou Voir le message
    En 15 ans de carrière j'en ai vu des archi ou des développeurs "Geek" se servir de l'opportunité des projets pour expérimenter leurs nouvelles connaissances sur telle ou telle techno à la mode du moment. Le pb c'est l'après projet où le développeur part sur une autre mission ou pire démissionne et qu'il n'est donc plus joignable, on se retrouve alors avec du code dans une technologie parfaitement inconnue de la nouvelle équipe en place que l'on ne choisi pas toujours avec le turnover qui sévit au sein des SSII. Aussi en y regardant de plus près on trouve du code en réalité mal maîtrisé impossible à maintenir, c'est "expérimental" je le rappel ! Le client lui ne comprenant rien aux technos mis en oeuvre dans son projet trouve inadmissible que l'on arrive pas à maintenir son projet dans des coûts maîtrisés et il a parfaitement raison.

    Donc je suis également très réservé sur la nécessité de connaitre une pléthore de langages, nos clients ne nous confie pas des projets de travaux pratique de lycée ! La solution informatique que le client utilise tous les jours et lui permet de gagner de l'argent et doit être traité avec la plus grande attention et surtout professionnalisme.
    la vous parlez du cas extrême ou le programmeur est un aventurier qui adore les gamelles
    Déjà commencer un projet sur une techno que l'on maîtrise pas ou à peine c'est suicidaire

  4. #4
    Membre Expert

    Homme Profil pro
    Responsable des études
    Inscrit en
    Mars 2009
    Messages
    553
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2009
    Messages : 553
    Par défaut
    Citation Envoyé par Jitou Voir le message
    En 15 ans de carrière j'en ai vu des archi ou des développeurs "Geek" se servir de l'opportunité des projets pour expérimenter leurs nouvelles connaissances sur telle ou telle techno à la mode du moment. Le pb c'est l'après projet où le développeur part sur une autre mission ou pire démissionne et qu'il n'est donc plus joignable, on se retrouve alors avec du code dans une technologie parfaitement inconnue de la nouvelle équipe en place que l'on ne choisi pas toujours avec le turnover qui sévit au sein des SSII. Aussi en y regardant de plus près on trouve du code en réalité mal maîtrisé impossible à maintenir, c'est "expérimental" je le rappel ! Le client lui ne comprenant rien aux technos mis en oeuvre dans son projet trouve inadmissible que l'on arrive pas à maintenir son projet dans des coûts maîtrisés et il a parfaitement raison.

    Donc je suis également très réservé sur la nécessité de connaitre une pléthore de langages, nos clients ne nous confie pas des projets de travaux pratique de lycée ! La solution informatique que le client utilise tous les jours et lui permet de gagner de l'argent et doit être traité avec la plus grande attention et surtout professionnalisme.
    Dans ce cas de figure, j'ai tendance à penser que la faute repose sur les épaules des donneurs d'ordre. S'ils ne posent pas de contrainte sur les choix techniques, c'est leur problème.

  5. #5
    Membre émérite
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2013
    Messages
    485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2013
    Messages : 485
    Par défaut
    Citation Envoyé par Jitou Voir le message
    En 15 ans de carrière j'en ai vu des archi ou des développeurs "Geek" se servir de l'opportunité des projets pour expérimenter leurs nouvelles connaissances sur telle ou telle techno à la mode du moment. Le pb c'est l'après projet où le développeur part sur une autre mission ou pire démissionne et qu'il n'est donc plus joignable, on se retrouve alors avec du code dans une technologie parfaitement inconnue de la nouvelle équipe en place que l'on ne choisi pas toujours avec le turnover qui sévit au sein des SSII. Aussi en y regardant de plus près on trouve du code en réalité mal maîtrisé impossible à maintenir, c'est "expérimental" je le rappel ! Le client lui ne comprenant rien aux technos mis en oeuvre dans son projet trouve inadmissible que l'on arrive pas à maintenir son projet dans des coûts maîtrisés et il a parfaitement raison.

    Donc je suis également très réservé sur la nécessité de connaitre une pléthore de langages, nos clients ne nous confie pas des projets de travaux pratique de lycée ! La solution informatique que le client utilise tous les jours et lui permet de gagner de l'argent et doit être traité avec la plus grande attention et surtout professionnalisme.
    Je dirais meme, que c'est un cas où le manager de ce développeur n'a pas sur le guider pour ne pas courir après 2 lièvres en même temps:
    1. Réaliser un projet pour un client avec des besoins et exigence précise
    2. Se former sur une nouvelle technologie

    Une prestation SSII va proposer essentiellement le point 1: le but est de répondre au client
    Le point 2 devrait être proposer par la SSII au développeur lors de ses inter-contrats: c'est un moment idéal pour se former à de nouvelles technologies.

    Par contre, faudrait que les SSII aient une vrai politique de formation de ses consultants.
    Or, cela a un coût et de toute façon, les développeurs restent pas longtemps: bah il se formeront chez le client en développant le projet !

    Et la boucle est bouclé

  6. #6
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2004
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 47
    Par défaut
    Citation Envoyé par Laurent 1973 Voir le message
    Par contre, faudrait que les SSII aient une vrai politique de formation de ses consultants.
    Or, cela a un coût et de toute façon, les développeurs restent pas longtemps: bah il se formeront chez le client en développant le projet !

    Et la boucle est bouclé
    C'est tellement vrai. La seule vraie formation que j'ai eu dans ma carrière remonte à 15 ans, depuis j'ai toujours eu droit au fameux "pas de formation sans projet"

    Alors oui, rien ne vaut la pratique mais tout de même, les SSII sont dans l'extrême pour la plupart. Et j'ai vu plus d'un projet lancé en mode rock'n roll et que c'est au bout de 3 moi de dèv fait par des juniors qu'on se rend compte qu'on a des problèmes de techno non maîtrisée. Parce que connaître un langage ce n'est pas connaître les différents frameworks qui ont été développés dessus, par exemple.

  7. #7
    Membre extrêmement actif
    Avatar de kdmbella
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2010
    Messages
    799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2010
    Messages : 799
    Par défaut
    J'aimerai bien qu'on m'explique comment faire du développement web en ne maîtrisant qu'un seul langage sauf si on part du principe que par "langage" on entend langage serveur ...
    Par ailleurs , dans un environnement aussi versatile que le développement et où parfois le langage à utiliser dépend de l'écosystème du client je voudrais bien voir comment un développeur viendra imposer à une entreprise cliente ayant un SI structurer autour d'un langage bien définit, le langage qu'il maîtrise le mieux !
    "L'humanité se divise en trois catégories : ceux qui ne peuvent pas bouger, ceux qui peuvent bouger, et ceux qui bougent."
    - Benjamin Franklin

    De l'aide en Javascript , consultez la FAQ JS.

    De l'aide sur le FrameWork JS DHTMLX : posez vos questions sur le forum des Bibliothèques & Frameworks JS.

  8. #8
    Inactif  

    Homme Profil pro
    NR
    Inscrit en
    Juin 2013
    Messages
    3 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : NR
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 3 715
    Billets dans le blog
    9
    Par défaut
    Après les langages informatiques se ressemble tous, ils ont tous (sauf 1 ou 2 exception) les même structures (tableau, entier...) et même condition (si, pour, tant que...), seul la mise en forme change.

    Reste ensuite a connaitre les subtilités des langages.

  9. #9
    Membre émérite
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2013
    Messages
    485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2013
    Messages : 485
    Par défaut
    Citation Envoyé par kdmbella Voir le message
    je voudrais bien voir comment un développeur viendra imposer à une entreprise cliente ayant un SI structurer autour d'un langage bien définit, le langage qu'il maîtrise le mieux !
    Le problème viens plutôt de la relation client-prestataire d'avant vente.

    Si le client dit: "je veux et j'exige que mon application soit fait en Fortran 77", c'est son choix.
    Là, le prestataire devra alors trouver une équipe de développement spécialiste en Fortran 77 s'il veut emporter le marché - le client accepte aussi de ne pas avoir trop le choix de l'équipe et donc du prix.

    Mais si le client dit "je veux la meilleur solution au moindre coût pour mon application".
    Là, le prestataire fera une proposition technologique en fonction des compétences de son équipe disponible afin de rentrer dans le budget du client - et la concurrence peut être plus féroce.

    Et puis, il peux y avoir des nuances entre ces deux situations, avec une négociation technologique entre le SI du client et les développeurs.

    Mais c'est sur que si les deux, client et prestataire, ne sont pas d'accord sur la technologie choisi, on va au crash.

  10. #10
    Membre émérite Avatar de Cincinnatus
    Homme Profil pro
    Développeur d'applications métier
    Inscrit en
    Mars 2007
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur d'applications métier
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2007
    Messages : 593
    Par défaut
    Tout d'abord, le titre de l'article est trompeur, puisque ce n'est pas le fait de connaître (jusqu'à maîtriser) plusieurs langages qui est jugé négativementp par Sam Atkinson, mais le fait d'apprendre de nouveaux lanagages en cours de projet (en contradiction avec l'affirmation précédente ("cela « va être un cauchemar de maintenance », même si « vous connaissez déjà le langage en question »").
    Par contre, je suis en accord avec lui pour penser que cela permet d'avoir différentes approches de la programmation, qui peuvent se transposer d'un langage à l'autre. La programmation fonctionnelle est apparue dans Java mais était connue depuis longtemps grâce à de nombreux autres langages (comme Javascript, parmi les plus connus, ou Groovy et Scala sur JVM).
    Concrétement, nous apprenons tout au long d'un projet (sinon on n'aurait même pas besoin de cycle en V (pourquoi valider si on sait qu'on a bien fait ce qu'il fallait)) ; les méthodes agiles et le Lean n'auraient jamais existé... alors qu'elles mettent justement l'accent sur la découverte, des besoins du client bien sûr, mais en l'occurence des techniques logicielles (les spikes de XP).

    Concernant Bugayenko, ok, les développeurs font partie des ressources d'un projet logiciel. Mais une partie intelligente, qui évolue en cours de projet. Et comme tout projet est sujet à des changements, définir toutes les ressources à l'initiation du projet est totalement illusoire, sauf à se cantonner à des domaines très restreints et répétitifs... Il n'y a plus alors qu'à utiliser des usines logicielles en lieu et place des développeurs humains. Bonne chance pour ce type de projet, mais très peu pour moi.

  11. #11
    Membre très actif
    Avatar de vosaray
    Profil pro
    Architecte technique
    Inscrit en
    Mai 2004
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2004
    Messages : 217
    Par défaut
    Impressionnant ... de bêtise ... de la part de qqn qui travaille pour un établissement bancaire , ou la créativité est en général externalisée cela ne m’étonne pas vraiment.

  12. #12
    Membre averti
    Homme Profil pro
    Ingénieur Concepteur Développeur - Expert SIG
    Inscrit en
    Juin 2012
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur Concepteur Développeur - Expert SIG
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2012
    Messages : 29
    Par défaut
    Pas du tout d'accord.

    Quand on bosse dans certains domaines, et que l'on reste cantonné dans des applis JAVA, peut être.
    Mais dans mon domaine,les SIG, il faut connaitre le python, le C#, le PL/SQL, HTML, et pour certaines liaisons avec des base, PHP (voir un peu de Perl pour des imports particuliers).

    Je pense que si l'on est pas ouvert sur d'autres technologies, on s'enferme dans le langage dans lequel on bosse, et on est moins réceptif et imaginatif aux problèmes du client.
    Du coup, pour apprendre d'autres langages, on est moins rapidement productif, et effectivement, cela à un coup au niveau du projet.

  13. #13
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2013
    Messages : 610
    Billets dans le blog
    21
    Par défaut
    Je voulais intervenir dans ce fil de discussion, mais comme ma réponse s'allongeait, s'allongeait... j'en ai fait un billet de blog.

  14. #14
    Membre Expert

    Homme Profil pro
    Responsable des études
    Inscrit en
    Mars 2009
    Messages
    553
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2009
    Messages : 553
    Par défaut
    Billet intéressant. Pour info, le "pointy hairy boss" (chef avec les cheveux pointus) est un des personnages principaux de Dilbert.

  15. #15
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2013
    Messages : 610
    Billets dans le blog
    21
    Par défaut
    Citation Envoyé par nnovic Voir le message
    Billet intéressant. Pour info, le "pointy hairy boss" (chef avec les cheveux pointus) est un des personnages principaux de Dilbert.
    Aaaah! C'était vraiment mystérieux pour moi... Merci!

  16. #16
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2013
    Messages : 610
    Billets dans le blog
    21
    Par défaut
    C'est merveilleux Dilbert!
    Merci vraiment de m'avoir fait connaître!

  17. #17
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2007
    Messages
    2 161
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2007
    Messages : 2 161
    Par défaut
    Citation Envoyé par psclcnrd Voir le message
    Je pense que si l'on est pas ouvert sur d'autres technologies, on s'enferme dans le langage dans lequel on bosse, et on est moins réceptif et imaginatif aux problèmes du client.
    En quoi les choix technologiques sont un frein aux réflexions métier ?

    Je dirai même que c'est l'inverse.
    Si tu es à l'aise avec ta techno car tu la maîtrise à fond, ça te libère du temps pour t’intéresser aux problèmes de fond du métier car tu passes moins de temps sur des problématiques purement techniques (donc le client se contrefout royalement)

    Le temps que tu passes à maîtriser une nouvelle techno et/ou à résoudre des problèmes techniques, c'est du temps que tu ne peux pas passer à réfléchir aux besoins et problématiques de tes utilisateurs.

  18. #18
    Membre averti
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 22
    Par défaut
    J'ai lu l'article de Bugayenko, c'est intéressant en particulier quand il relate que chaque bug trouvé est récompensé financièrement... c'est une excellente motivation.
    Par contre quand il dit que le travail n'est pas une école... oui... mais il faut quand même se former... il ne s'agit pas de passer d'un extrême à l'autre.
    En effet les technologies bougent, il est souvent dans l'intérêt d'un projet d'utiliser des nouveaux outils, on ne peut pas changer une équipe comme si les salariés étaient de simple outils comme des marteaux et des tournevis...
    Il y a quelques années je suis arrivé sur un projet java ancien où aucun test unitaire n'existait, chaque MEP était truffée de bugs.
    Alors on a mis en place JUNIT, je m'y suis frotté, j'ai appris les bases rapidement, cela a demandé plusieurs heures initialement puis d'autres heures pour avoir une architecture à peu près propre.
    Cela a permis d'avoir un produit de meilleure qualité.
    On aurait pu embaucher temporairement un développeur connaissant JUNIT mais cela aurait couté plus cher (rien que de sélectionner un candidat, faire passer des entretiens c'est des heures, lui fournir un nouveau PC, lui expliquer l'architecture du projet... ) pour un outil relativement simple et dans tous les cas il faut faire un transfert de connaissance avec les autres membres de l'équipe et donc les former....


    Autre exemple : changement de version d'un langage, comment Bugayenko fait si le nouveau langage apporte des plus réels ? il change toute l'équipe avec toute sa connaissance acquise depuis des mois sur l'entreprise, le projets parce qu'il vaut mieux travailler sur java 8 que java 7 et que personne sur place ne connait java 8 ? c'est ridicule (attention je ne dis pas qu'on change de version à la légère non plus, encore moins au milieu d'un projet).

    Un bon marteau n'importe quel magasin de bricolage en a en stock, un ingénieur avec les bonnes compétences c'est différent... et on ne remplace pas un ingénieur comme on remplace un marteau... un marteau n'a ni connaissance ni expérience, un développeur oui.

  19. #19
    Membre émérite
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2013
    Messages
    485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2013
    Messages : 485
    Par défaut
    Citation Envoyé par JCB001 Voir le message
    J'ai lu l'article de Bugayenko, c'est intéressant en particulier quand il relate que chaque bug trouvé est récompensé financièrement... c'est une excellente motivation.
    Oula, très pervesif comme pratique.
    Enfin, heureusement, aucun développeur ne va s’amuser à rajouter exprès des bug afin de se toucher une prime pour corriger sa "boulette"

    En dehors de l'agissement "frauduleux", cela peux avoir une tendance faire changer dans le mauvais sens l’intérêt des développeur pour le produit.
    "A non, je n'ai pas ajouter la nouvelle fonctionnalité que l'on devait livrer hier au nouveau client, hier j'ai corrigé 3 fautes d'orthographes dans le logiciel - au faite, la prime, c'est toujours 100€/bug? "

    En général, de donner une prime à quelqu'un pour qu'il fasse correctement son travail, c'est la meilleur façon de casser une métrique qui pourrait être intéressante:
    • Donnez une prime à un développeur pour avoir un ratio code/commentaire élevé dans vos sources: et vous retrouverez l’œuvre intégrale d'Alexandre Dumas (père et fils) dans git.
    • Donnez une prime à un manager pour réduire les nombres de tickets "critiques": et les nouveaux bug se retrouvent déclasser.
    • Donnez une prime à un commercial, et il vous vendra une fonctionnalité infaisable dans les délais.


    Par contre, donner une prime sur quelque chose dont ce n'est pas le métier à un salarié, ça deviens intéressant: prime de vente pour un développeur qui trouve un nouveau client, prime de cooptation pour l'arriver d'un collaborateur, ...

    Et sinon, ce que je pense qui marche le mieux: un intéressement direct au vente du produit sur lequel on travail.
    Là, si l'équipe touche une prime sur les bonnes ventes, elle deviens très motivé à ce que le produit deviennent encore meilleur.

  20. #20
    Membre expérimenté

    Homme Profil pro
    Consultant en architecture
    Inscrit en
    Décembre 2013
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en architecture
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 82
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Laurent 1973 Voir le message
    En général, de donner une prime à quelqu'un pour qu'il fasse correctement son travail, c'est la meilleur façon de casser une métrique qui pourrait être intéressante:
    • Donnez une prime à un développeur pour avoir un ratio code/commentaire élevé dans vos sources: et vous retrouverez l’œuvre intégrale d'Alexandre Dumas (père et fils) dans git.
    • Donnez une prime à un manager pour réduire les nombres de tickets "critiques": et les nouveaux bug se retrouvent déclasser.
    • Donnez une prime à un commercial, et il vous vendra une fonctionnalité infaisable dans les délais.


    Par contre, donner une prime sur quelque chose dont ce n'est pas le métier à un salarié, ça deviens intéressant: prime de vente pour un développeur qui trouve un nouveau client, prime de cooptation pour l'arriver d'un collaborateur, ...

    Et sinon, ce que je pense qui marche le mieux: un intéressement direct au vente du produit sur lequel on travail.
    Là, si l'équipe touche une prime sur les bonnes ventes, elle deviens très motivé à ce que le produit deviennent encore meilleur.
    Je suis assez en désaccord sur ce point, malgré le nombre de pouces verts. (pas taper )

    Au contraire, je pense que lorsque c'est possible, la prime doit être au plus près du travail de la personne. Une prime sur le résultat de mon entreprise qui contient dix milles salariés, ça n'est pas ce qui me pousse dans mon quotidien. Sur des cycles de développement un peu long, l'impact de mon travail sur la vente de mon produit peut ne se faire sentir que dans quelques années, le temps qu'une release sorte, que les clients l'utilisent, qu'ils en parlent autour d'eux, qu'une décision d'achat soit prise suite à ça...

    Le problème, selon moi, c'est plutôt l'absence de métrique objective permettant de juger de la qualité du travail d'un développeur à l'instant t (ou d'un commercial, d'un manager...). La qualité (ou plutôt la non-qualité du code), on la ressent souvent longtemps après le travail réalisé.. Du coup, soit on a une mesure objective (par exemple : ratio code/commentaire élevé) mais mauvaise ou très incomplète, et on se retrouve avec un effet pervers (les oeuvres de proust dans git), soit on est obligé de donner la prime en fonction du travail perçu par le manager, avec tous les problèmes que ça pose (se faire bien voir risquant de devenir le plus important que bien faire, et si le manager ne comprend rien à la technique ou n'a pas le temps de vérifier ce qui se passe, c'est la cata).

    Ceci dit, les primes ne sont pas les seules sources de motivations, et ne sont pas les non plus seules à pouvoir produire ce genre d'effet délètère. Je me souviens d'une histoire (il me semble chez Microsoft il y a très longtemps, mais je voudrais pas dire de bêtises) où les devs étaient extremement préssés pour sortir de nouvelles fonctionnalités, mais avaient plus de temps pour réparer les bugs (priorité du management). Du coup, pour une fonction qui retourne la taille de police, ils mettaient une valeur pour passer le test (return 12; ), la qualité disait "on a trouvé un bug", et ils implémentaient tranquillement la fonctionnalité en "bug fix". Eviter la pression du management conduisait au même effet qu'aurait pu avoir une prime sur le temps mis pour implémenter une feature ou le nombre de bugs corrigés.



    Pour revenir au sujet de l'article, il faut voir dans quel contexte est l'auteur : leurs "salariés" sont plutôt des freelance payés au ticket, et toute tâche se résume en la complétion de petits tickets et/ou la création de nouveaux tickets pour demander quelque chose. Aucune communication entre personnes travaillant sur le projet en dehors d'un commentaire sur un ticket. C'est du travail à la chaîne. Outre les inquiétudes sur les comportements que cela peut introduire (personne ne fera mieux que la qualité/performance/maintenabilité minimale vérifiée et passer les tests, sans même parler de malveillance/tricherie), leur hypothèse derrière ça est de considérer que les employés peuvent partir du jour au lendemain, et que tout investissement sur eux est perdu.

    C'est assez différent d'une société qui considère ses employés comme des ressources sur lesquelles on peut investir, que ce soit à l'occasion d'un projet ou sur des formations, car on considère qu'elles vont rester un certain temps, et que du coup les gains de productivités créés pourront être rentabilisés.

    Pour moi, cela peut se justifier quand on fait appel à des experts freelance au prix fort sur un délai court, mais pas pour la plupart des gens, ni en continu. Et encore, je trouverai bien souvent plus pertinent d'être payé un peu moins, et de considérer que 10 ou 20% du temps de travail servira à monter en compétences (trouver une nouvelle librairie pertinente, échanger à la machine à café avec l'expert d'à côté), que de séparer strictement apprentissage et réalisation.

    Mais si ils trouvent des gens qui sont satisfaits de bosser dans ce contexte, très bien, en tout cas je trouve l'expérience intéressante... de l'extérieur

Discussions similaires

  1. Apprendre un langage de programmation moderne
    Par aegal dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 3
    Dernier message: 22/02/2006, 15h15
  2. Créer un jeu avec plusieurs langages
    Par spidouille dans le forum Pascal
    Réponses: 6
    Dernier message: 04/10/2005, 15h07
  3. Peut on apprendre 2 langage en même temps ?
    Par tantto dans le forum C++
    Réponses: 4
    Dernier message: 13/03/2005, 20h35
  4. Apprendre un langage de programmation ?
    Par Invité dans le forum Débuter
    Réponses: 5
    Dernier message: 08/02/2005, 23h16
  5. Apprendre un langage Objet
    Par samyl dans le forum Débuter
    Réponses: 6
    Dernier message: 23/06/2003, 12h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo