Métiers pour l'informatique

dimanche 25 septembre 2016

Développeur

Le développeur est chargé de la création et/ou de l'adaptation technique d'une solution logicielle. Il code les spécifications écrites de l'analyste grâce à un langage de programmation
Twitter Facebook Delicious
Mis à jour le 15/03/2011 | Imprimer | Envoyer
Fabian, développeur
  • Fabian
  • 33 ans, un enfant
  • Master en informatique
  • Taktik à Bruxelles

J'avais écrit sur un forum que je travaillais sur un projet Open Source sur Macintosh. C'est comme ça que j'ai eu ce boulot. Développer sur Mac est rare car ce n'est pas enseigné dans les écoles.

Programmer en partant de spécifications très claires, c'est important. Si un client indique "quand je fais ça, je voudrais toujours obtenir ceci", il ne s'agit pas de revenir sur le "toujours" par la suite. Les exceptions, ça change tout en programmation! Pour un programmeur, "toujours" veut dire "toujours".

Mission

Ma tâche principale est d'implémenter Open ERP chez des clients, un logiciel qui assure la gestion d'une entreprise dans toutes ses composantes. On appelle ça un progiciel. Ce programme est Open Source, il est donc susceptible d'être modifié tous les jours par des centaines de personnes. Par facilité, notre société s'est en quelque sorte approprié une des branches d'Open ERP pour pouvoir travailler sur un programme relativement stable.

Je commence par traduire les premières spécifications de l'analyste en un langage informatique plus ou moins cadenassé puis à les implémenter dans le progiciel. Une première configuration prend une année avec de nombreux allers-retours client/analyste/développeur.

Programmer: des essais-erreurs permanents

Les corrections de code dans un programme sont très fréquentes. Dans l'équipe, nous nous posons d'ailleurs souvent cette question: doit-on fournir le programme super testé où on a tout vérifié ou un programme que l'on corrige au fur et à mesure? Au quotidien, je dois souvent réajuster le programme lorsqu' il ne fonctionne pas bien chez un client. Je duplique alors son environnement sur mon ordinateur et je regarde si l'erreur est reproductible. C'est la première chose à faire. Si oui, je rentre dans le programme pour chercher l'erreur. Quand je la trouve, 40% du boulot est fait. Je corrige et reprogramme. Je peux m'appuyer sur mes collègues. Un regard neuf sur des lignes de codes débloque souvent les situations.

Avec le temps, la connaissance du logiciel fait qu'on peut prendre de l'avance, c'est-à-dire programmer de manière générique en prévoyant d'autres cas de figure. Par exemple, nous développons aussi un logiciel de gestion d'images. Même si le client ne veut qu'archiver ses photos, on programme un système qui archive les photos et les vidéos. Il pourrait changer d'avis par la suite.

Au quotidien

Un développeur doit être prêt à passer durant la journée par des phases tout à fait euphoriques quand une solution est trouvée ou assez stressantes, quand tout est bloqué. C'est un métier parfois éprouvant pour les nerfs mais très gratifiant quand on sent que le code écrit est quasi parfait. C'est presque beau!

Enfin, je me tiens au courant des évolutions d'Open ERP et j'essaye de participer à son développement en partageant mes trouvailles. C'est tout l'objectif de l'Open Source: mutualiser les connaissances.

Le métier de développeur en quelques mots

Le ou la développeur est chargé(e) de la création et/ou de l'adaptation technique d'une solution logicielle. Il ou elle code les spécifications écrites de l'analyste grâce à un langage de programmation. Au cours de l'implémentation, il ou elle peut être amené(e) à corriger certains paramètres de la solution en fonction des retours clients et à détecter et/ou supprimer les bugs éventuels.

Formations et compétences requises

Parcours classique:

  • master ou baccalauréat en informatique de gestion qui comprend de nombreuses heures en programmation;
  • formations plus courtes pour l'apprentissage d'un langage spécifique organisées par les centres de compétences.

Compétences clés:

  • esprit analytique;
  • logique;
  • rigueur;
  • créativité.

Savoir-faire indispensables:

  • maîtriser un ou deux langages de programmation (Java, C++, PHP);
  • technologies de bases de données (SQL);
  • technologies du Web (HTML, HTTP);
  • environnement de développement de logiciels, un langage de modélisation (UML).
  • Taktik Lien externe
    Taktik is a Belgian development and integration company focused on bringing together passionate engineers
    http://www.taktik.be
Portail de la Région wallonne