Developpez.com - Programmation

Le Club des Développeurs et IT Pro

Comment devenir un meilleur développeur ? La formation et l'expérience sont-elles suffisantes ?

Vous êtes invités à partager votre avis

Le 2018-05-07 13:44:53, par Community Management, Community Manager
Comment devenir un meilleur développeur ?
La formation et l’expérience sont-elles suffisantes ? Vous êtes invités à partager votre avis


Le métier de développeur suscite de plus en plus d’intérêt pour un choix de carrière professionnelle. Il offre un large panel de spécialités telles que la programmation d’applications d’entreprise, la création de jeux, l’intelligence artificielle, et bien d’autres encore, qui suscitent de la passion chez de nombreux jeunes. Qui plus est, le métier de développeur peut tout aussi être bien rémunéré, avec un niveau de revenu mensuel pouvant aller à 5000 euros en France, et même au-delà dans certains pays.

Cependant, s’engager dans une carrière de développeur, ne garantit pas qu’on sera un bon programmeur. Il faut surtout s’en donner les moyens.
Le meilleur développeur est-il celui qui connait le plus de langages de programmation ? Pas certain, mais toujours est-il que tout développeur doit avoir une bonne faculté d’apprentissage, et une aptitude à résoudre les problèmes.


Henrik Warne, un développeur senior, indique quelques critères qui qualifient un bon développeur. Mais quel est le chemin pour y parvenir ?

La passion et la motivation ne suffisent pas pour parvenir à la qualité de bon développeur. Plusieurs éléments sont à prendre en compte pour réussir le pari de devenir meilleur programmeur. Et le but de ce sondage est d’identifier, lesquels seraient les plus importants.

Vous êtes donc invités à voter pour les méthodes que vous estimez les plus pertinentes, en vous s’inspirant notamment de votre expérience personnelle : comment avez-vous évolué dans votre carrière de développeur ? Et aussi, quelles erreurs éventuelles faudrait-il éviter pour devenir meilleur développeur.

Votre avis

Quels conseils donneriez-vous à une personne qui voudrait devenir un bon développeur ?

Voir aussi

Tout le monde ne peut pas devenir développeur : il faut d'abord disposer de certains prérequis
Qu'est-ce qui fait un bon programmeur ? Un senior liste cinq caractéristiques d'un bon programmeur
Y a-t-il une corrélation entre diplôme et succès en tant que développeur de logiciels ?
Emploi développeur 2017 : les langages les plus demandés et les mieux payés
  Discussion forum
56 commentaires
  • sergio_is_back
    Expert confirmé
    Envoyé par Angelsafrania

    Il est important de ne pas toujours faire la même chose. Se mettre en "danger" ou en situation "difficile" est souvent bénéfique, je pense, pour progresser.
    J'aurais dit : "Sortir de sa zone de confort" mais cela revient au même.

    Il faut aussi lorsque cela est possible (c'est pas toujours le cas), parler avec les gens qui vont utiliser le logiciel à développer : Pas les décideurs, les VRAIS utilisateurs, ceux qui vont
    utiliser le logiciel au jour le jour surtout dans mon domaine, l'informatique industrielle. Lorsque l'on fait des logiciels orientés grand public, c'est plus difficile...

    Par exemple : C'est le cas actuellement, j'attaque un soft de supervision d'atelier et de traçabilité et le directeur de production veut valider l’ergonomie lui-même, hors j'ai du mal à lui faire comprendre :

    1. Que c'est pas lui qui va l'utiliser
    2. Que ses subordonnés ont d'autres habitudes et besoins que ce que lui me rapporte (Il veut principalement de la statistique de prod)

    Au final ça ne change pas le but premier du projet (la majeure partie est invisible des opérateurs), mais ce sont des détails importants qui peuvent conditionner l'adoption par les opérateurs et la réussite d'un projet

    Enfin en dernier et c'est le plus difficile car c'est jamais chiffré, il faut faire un bilan quelques semaines/mois après livraison : Qu'est qui a bien marché, qu'est ce qui a foiré le cas échéant,
    qu'est ce qu'on aurait pu améliorer en terme d'ergonomie, de codage, etc... C'est important car c'est une façon de capitaliser l'expérience acquise sur un projet et si il y a eu des loupés, des erreurs, des incompréhensions,
    ne plus les reproduire sur le projet qui suivra (autant que possible)... Mais comme cette phase qui peu prendre du temps, en terme de réflexion et d'analyse n'est jamais vendue, et que bien souvent les
    projets s'enchainent sans temps mort, on ne le fait que très rarement.
  • Angelsafrania
    Membre éclairé
    Je pense que c'est comme un peu toutes choses que l'on veut maîtriser.
    Il faut consacrer du temps, s'entraîner et voir d'autre horizon (échange avec d'autre personnes / d'autre façon de faire).
    Du temps pour bien encrer les résonnement logique (la durée dépend fortement des personnes).
    De l'entraînement pour acquérir les réflexes inconscients.
    Et d'autre horizon pour élargir le champs de compétence.

    Il est important de ne pas toujours faire la même chose. Se mettre en "danger" ou en situation "difficile" est souvent bénéfique, je pense, pour progresser.
  • el_slapper
    Expert éminent sénior
    Je vais être encore plus basique : chercher délibérément à s'améliorer.

    Peu importe la méthode, à mon sens.
  • Daniel Josue
    Membre régulier
    Envoyé par Hizin

    Apprendre et partager. Discuter et échanger.
    +1

    J'adhère totalement à ce principe. Un bon développeur n'est pas celui qui s'enferme en vase clos, mais qui doit surtout apprendre à comprendre les autres (les utilisateurs finaux) et se faire comprendre. Sinon ...
  • CinePhil
    Modérateur
    Autres : Participer à Developpez.net !
  • Kannagi
    Expert éminent sénior
    Envoyé par Brütal
    Oke, si t'es débutant, et que tu veux te lancer dans la programmation, tu te poses pas de questions, tu prends ce tuto, et t'apprends le C:
    Apprenez à programmer en C / C++ !
    C'est un excellent tuto pour débuter, simple, qui fonctionne par l'exemple, est assez poussé mine de rien et qui permet d'avoir des résultats sympathiques.

    Pourquoi le C? C'est le langage idéal pour débuter.
    Alors non et non !
    Le C n'est pas un bon conseil , je traîne depuis plusieurs années sur les forum/discord etc etc , la plupart des débutants en C se plaigne pas mal d'UB , pointeur, segfault etc etc
    Bref il se concentre plus sur les erreurs du programme que du programme en lui même.
    Le premier truc à apprendre en prog ,c'est l'algorithme est le C n'est clairement pas dans ce cas là , on conseille bien plus le Python par exemple bien plus pédagogique que le C .
  • Nebulix
    Membre expérimenté
    C'est quoi un bon développeur ?
    A écrit avec un langage d'il y a 30 ans un programme qui tient en 50 ko et fait le boulot avec une interface austère
    B utilise les techniques dernier cri, qui en met plein les yeux et implique 12 fichiers

    J'ai l'impression que B sera toujours mieux considéré ...
  • Brütal
    Nouveau membre du Club
    Envoyé par foetus
    Parce que le langage C c'est mignon cela apporte la rigueur, mais tu n'as que la console pour afficher des choses facilement et au moindre problème, c'est le débogueur.
    Oui, il faut commencer par la base avant de faire des choses plus évoluées, cela permet d'avoir une bonne vision du fonctionnement de sa machine.
    Oui l'interface est austère, mais c'est comme en architecture, tu peux vouloir créer tous les immeubles que tu veux, si tu sais pas clouer des planches, c'est mort pour faire un truc correct.
    Je sais que beaucoup de personnes qui commencent la programmation, voudraient tout de suite faire un jeux vidéo, une interface hyper-complexe avec des effets de ouf.
    Sauf que tu peux développer, mais tu peux aussi développer correctement. Et jamais tu obtiendra ce que tu veux de manière correcte sans voir les bases.
    Beaucoup de personnes se prétendent développeurs, alors qu'en vrai elles savent juste utiliser des frameworks ou des surcouches logicielles inutiles.
    On arrive à un stade où des personnes utilisent des technos sans avoir la moindre idée de ce qu'il y'a derrière. Et c'est bien dommage, parce que au final, les programmes créer son bien trop lourds, et non-optimisés.
    Et souvent cela empêche de maîtriser certaines technos, qui sont pourtant bien utiles dans certains cas.
  • Matthieu Vergne
    Expert éminent
    Je vais profiter de ma formation pour donner un avis générique et sourcé, basé sur des travaux scientifiques. Les source en question sont sur les travaux effectués sur l'expertise dans de nombreux domaines, dont un bon point de départ est cet ouvrage :
    Ericsson, K. Anders, éd. The Cambridge Handbook of Expertise and Expert Performance. Cambridge ; New York: Cambridge University Press, 2006. http://www.cambridge.org/us/academic...rt-performance.

    Pour la question principale, à savoir "Comment devenir un meilleur développeur ?", ce n'est pas différent des autres domaines, et c'est tout simple. Il faut en effet avoir seulement 2 choses :
    1. la volonté de s'améliorer
    2. un bon coach

    Le coach a pour rôle d'identifier les lacunes (2a) et de fournir les moyens pour les corriger (2b). Une fois qu'on a assez d'expérience, on peut faire cela par soi-même et donc être son propre coach, ce qui permet une autonomie totale pour une amélioration continue. Seule reste à maintenir la volonté de s'améliorer (ce qui n'a rien d'évident, ne soyons pas simpliste non plus).

    Le sondage effectué montre d'ailleurs bien cela. À l'heure où j'écris ces lignes, 39 votants se sont exprimés et le classement est le suivant :
    - S’auto-former régulièrement = 1+2b
    - Tirer les bonnes leçons de ses échecs = 2a+2b
    - S'engager sur les bonnes pratiques en programmation = 1
    - Pousser toujours l’effort au-delà de ses capacités et de son confort personnel = 1
    - Avoir une bonne formation de base = 2

    Il existe des tas de manières de s'améliorer, celles listées là ne sont que des cas particuliers. Pour devenir toujours meilleur, il s'agit avant tout de se poser deux questions :
    1. est-ce que j'ai vraiment envie de faire l'effort pour m'améliorer ?
    2. est-ce que l'environnement dans lequel je suis (ou qu'on me propose) me permet d'identifier et de combler mes lacunes ?

    Ainsi, comme mentionné dans l'article "La passion et la motivation ne suffisent pas pour parvenir à la qualité de bon développeur." Mais c'est tout de même un point primordial, qui doit être complété avec du bon coaching. Autrement, on prend le risque de tourner en rond ou de s'orienter sur des voies sans réelles issues.
  • Daniel Josue
    Membre régulier
    Envoyé par Mister Nono
    être rémunéré correctement et avoir de la flexibilité dans son mode de travail (télétravail, horaires flexibles...).
    Personnellement, je ne vois pas en quoi avoir une bonne rémunération aide à être un meilleur développeur.