Bienvenue sur Développement Agile

Référence sur le développement logiciel Agile. Nous traitons de conception, de programmation, de pratiques de génie logiciel, d'essais et d'autres sujets connexes.

Une offre d'emploi inspirante

Publié par David Beaumier le mardi 15 avril 2014 à 18:22

Il y a quelques temps, mon collègue Félix-Antoine me faisait part d'une offre d'emploi se démarquant du lot. J'ai tardé un peu à la partager avec vous, mais, même si les postes sont maintenant comblés, je trouve tout de même qu'il vaut la peine d'en parler. L'offre de l'équipe de la plateforme de radio-canada.ca se distingue nettement des offres qu'on rencontre habituellement.

Offre-Emploi-Radio-CanadaBien que je trouve que l'offre parle d'elle-même, je me permet tout de même de souligner, ci-dessous, quelques points que je trouve forts intéressants.

  • Le mot ressource n'est jamais utilisé pour désigner un candidat. On utilise plutôt des mots comme "allumé" ou "personne", des termes beaucoup plus inspirants.
  • On n'utilise pas les énumérations habituelles du type "votre tâche consistera à faire ceci, cela et toute autre tâche connexe". On présente plutôt le profil recherché et les qualités attendues des candidats.
  • On met l'emphase sur les capacités du candidat à comprendre les concepts qu'à avoir un nombre minimal d'années d'expérience.
  • On utilise un langage technique juste et précis. On sait clairement quelles sont les compétences recherchées.
  • On parle de l'équipe et de contribuer à son succès en relevant des défis.
  • La terminologie Agile/Scrum utilisée indique bien dans quel cadre l'équipe oeuvre.

Embaucher un employé dans le secteur des technologies de l'information représente aujourd'hui un bon défi. Cependant, je n'ai aucun doute qu'une telle offre d'emploi aura permis à Radio-Canada de dénicher des candidats au profil recherché. Plusieurs organisations auraient avantage à sortir des sentiers battus et à s'inspirer de cette offre d'emploi lorsqu'ils présentent des opportunités de carrière en développement logiciel.

Présentation: Propulsez votre architectures grâce au TDD et aux Mocks (Agile Montréal 2014)

Publié par Félix-Antoine Bourbonnais le mercredi 12 mars 2014 à 06:00

Cette session a été présentée par Félix-Antoine Bourbonnais à la conférence mensuelle d'Agile Montréal le 12 mars 2014.

Description

Nous savons depuis longtemps que les tests automatisés jouent un rôle important pour les équipes de développement Agile. Bien que la communauté ait découvert depuis un certain temps des pratiques permettant de maximiser l’émergence du design via le TDD, il est rare que l’on présente des astuces concrètes pour obtenir ce bénéfice.

Cette présentation explique comment tirer le maximum de vos tests unitaires et des « mocks ». Nous présenterons, plus particulièrement, le style de TDD « mockiste ». Ainsi, nous verrons comment les mocks peuvent nous aider à concevoir une architecture ayant une meilleure conception orientée objet. 

  • Niveau : Avancé
  • Public cible : Développeurs et architectes

Présentation

 

Diapositives (PDF) 

Code source

 

Le code source de la démonstration est disponible pour téléchargement:
https://github.com/fbourbonnais/propulsez-architecture-tdd-mocks

 

Autres billets

 

Rétrospective d’une décennie en affaires

Publié par Vincent Crépin le jeudi 6 mars 2014 à 21:03

Le mois de mars 2014 représente un moment tout spécial pour l’équipe d’Elapse Technologies. Et oui, ça fait 10 ans ce mois-ci que mon partenaire Pascal Roy et moi-même avons fondé l’entreprise. Je trouvais intéressant de partager avec les lecteurs de notre blogue une rétrospective de nos dix premières années à travailler à l'amélioration de la profession du développement logiciel.

Si on revient au tout début, en janvier 2004, l’entreprise qui nous employait alors venait d’être achetée par un gros joueur dans l’unique but de faire monter la valeur de sa propre action à la bourse. À partir de cet instant, il n’y avait plus de vision, plus d’avenir, et ce, malgré tous les efforts que nous avions investis au cours des années précédentes. Les aspects financiers étaient devenus tout ce qui comptait dans cette organisation et nous avions l’impression de n’avoir plus aucun contrôle sur la situation.

Pascal et moi avons alors discuté et convenu que nos objectifs de carrière étaient différents de ce que nous offrait cette organisation. Nous pensions sincèrement être en mesure de faire une différence dans l’industrie, si petite soit-elle. Nous avons donc établi les principales valeurs auxquelles nous croyions : indépendance par rapport aux banques et investisseurs, respect total des personnes avec qui nous travaillons quotidiennement, prudence et réflexion dans nos actions ainsi qu’excellence dans nos interventions. À partir de cette idée, nous avons recruté 5 autres personnes qui travaillaient pour la même entreprise que nous et voilà, Elapse venait de naître!

Les débuts nous prouvèrent rapidement que nos valeurs étaient bonnes. Malgré les enjeux associés au démarrage d’une entreprise, nous sommes passés au travers des premières années grâce à l’appui de fidèles clients et de partenaires d’affaires. J’en profite pour souligner au passage le soutien de mon bon ami Yves Bilodeau durant cette période.

Si Elapse est devenue ce qu’elle est aujourd’hui, une entreprise qui peut faire une différence pour ses clients par la qualité de ses interventions, c’est grâce à son équipe.  Bien sûr, certaines personnes nous ont quitté en cours de route, ça fait partie de la vie d’une entreprise. Cependant, nous avons toujours misé sur la rétention de nos gens. Pour une firme qui recrute des individus d’exception, je dois vous dire qu’il est essentiel d’être capable de bâtir une relation de confiance durable. Probablement que notre modèle de transparence à livre ouvert y est aussi pour quelque chose. En tout cas, je suis fier de pouvoir vous dire que les résultats démontrent que nous avons fait de bons choix.

Au cours de cette première décennie l’offre de services d’Elapse a beaucoup évolué. L’accompagnement et la formation sont venus s’ajouter au service-conseil. Nous avons développé  des spécialités très en demande comme l’agilité, l’architecture de solutions et la conception logicielle, pour ne nommer que celles-là. En fait, l’agilité s’est imposée d’elle-même au fil du temps. Lorsqu'on prend un peu de recul, on peut remarquer que les valeurs de respect, de collaboration et de transparence que l'on associe avec le développement Agile sont aussi fortement alignées avec les valeurs fondamentales de notre organisation. L'agilité est devenue notre approche de choix pour amener les équipes avec qui nous travaillons à réfléchir sur leurs façons de faire et leur permettre d’envisager de nouvelles pratiques pour mieux atteindre leurs objectifs.

Je me dois évidemment de souligner la confiance que nous a accordée notre clientèle au fil des ans. Nous sommes conscients des opportunités fantastiques  qui se sont présentées à nous et nous sommes immensément fiers d’avoir pu relever ces défis en collaboration avec nos clients.

En rétrospective, je suis très fier d’être associé à une équipe passionnée et motivée à rendre la profession du développement logiciel meilleure. Des gens qui croient qu’on peut faire mieux chaque jour pour faire progresser les règles de l’art et qui n’hésitent pas à sortir de leur zone de confort et proposer des solutions novatrices et originales.  D’ailleurs, nous sommes toujours à l’affut de personnes exceptionnelles qui partagent nos valeurs et qui souhaiteraient faire partie de l’aventure pour la seconde décennie.

Ah oui, il faut que je vous dise en terminant qu’au cours de l’année qui vient nous comptons célébrer cet anniversaire en grand et partager avec vous encore plus de contenu relié au développement logiciel. Nous vous invitons à continuer à nous suivre sur notre blogue et sur les médias sociaux pour ne rien manquer de tout ça.

Mots-Clés :

L’engagement : Impacts et stratégies pour les leaders

Publié par Philippe Tremblay le vendredi 21 février 2014 à 12:15

En 2013, BlessingWhite déposait la troisième version de leur rapport de recherche sur l’engagement des employés dans les organisations.  Le rapport permet de bien comprendre la notion d’engagement ainsi que les effets sur une entreprise d’un bon, ou moins bon, niveau d’engagement des employés.  Comme nous le mentionnions dans un précédent billet, les impacts de l’engagement dans une entreprise sont majeurs.  Le rapport se termine par une série de recommandations pour les leaders et gestionnaires afin de considérer le pouvoir de l’engagement dans leurs décisions.  Nous vous présentons quelques faits saillants de ce rapport et vous invitons à consulter le rapport en détail (lien disponible au bas de ce billet).

Définition de l’engagement

Le modèle d’engagement présenté dans l’étude met l’accent sur la satisfaction et le sentiment d’accomplissement de l’individu.  Plus particulièrement, l’emphase est mise sur les aspects suivants :

  • La contribution de l’individu dans le succès de l’organisation
  • La satisfaction personnelle dans le rôle de l’individu

Selon le rapport, « l’alignement des valeurs, objectifs et aspirations des individus avec ceux de l’organisation est la meilleure façon d’atteindre l’engagement soutenu des employées nécessaire aux entreprises voulant être des leaders. »  Le summum de l’engagement est représenté par l’alignement de la satisfaction complète de l’individu face à son travail et la contribution maximale de ce travail dans les objectifs de l’entreprise.

Facteurs clés

L’étude présente une série d’indicateurs permettant de mesurer l’engagement des employés d’une organisation.  La rétention, la contribution ainsi que la satisfaction des individus sont les principaux signes relatifs à l’engagement.  Une proportion des facteurs influençant ces indicateurs est présentée afin de bien comprendre l’impact de ces facteurs sur l’engagement.  En voici quelques-uns :

  • La mission de l’organisation et la pertinence de celle-ci pour l’employé
  • Appréciation de son « travail » (avez-vous la chance de considérer votre travail comme autre chose que 40 heures de votre semaine ou une somme d’argent?)
  • L’adhésion de l’employé à la raison (le pourquoi) derrière son travail quotidien
  • Une rétroaction fréquente sur la qualité de son travail (et non, on ne peut pas catégoriser 1 ou 2 fois par année comme une rétroaction fréquente)
  • Un maximum d’opportunités pour appliquer ses talents
  • Opportunité de développement et de formation

Recommandations

Parmi les recommandations du rapport, l’élément suivant transcende les actions que peuvent faire les organisations :

« L’engagement doit faire partie de votre culture »

Les 3 « comment »

Pour favoriser l’engagement dans votre organisation, vous devriez tenter de répondre aux 3 questions suivantes.

  1. Comment vos employés se définissent-ils en rapport à leur travail et leur entreprise
  2. Comment les gestionnaires adressent-ils l’engagement des individus et influencent les dynamiques positives de leurs équipes
  3. Comment l’équipe de direction crée-t-elle une vision inspirante du futur tout en nourrissant une culture où l’engagement est au cœur des résultats éclatants

Ce que vous devriez cesser immédiatement

  • Les processus qui ne permettent pas de discuter ouvertement des priorités
  • Les processus d’évaluation annuelle… (vous vous souvenez de l’importance de la rétroaction fréquente?)
    • … qui n’évalue pas ou peu la contribution des réalisations d’un individu dans les priorités de l’organisation
  • Le « développement de carrière » qui n’est pas basé sur le réel potentiel des individus
  • Les façons de faire archaïque et bureaucratique ancrées dans vos « processus » qui n’apportent aucune valeur
  • Les pratiques d’embauche et de congédiement qui encouragent les gestionnaires au statuquo au lieu de chercher à améliorer leurs équipes avec des individus dont la contribution est positive.

Étude complète sur l'engagement de BlessingWhite

Test unitaire: la définition qui lève les barrières

Publié par Félix-Antoine Bourbonnais le lundi 10 février 2014 à 00:00

Beaucoup d’entreprises où nous passons semblent avoir une définition des tests unitaires qui seraient mieux résumés, selon moi, par le terme “tests développeurs”.

On considère alors, à tort, un test unitaire comme étant un test effectué par les développeurs avant les tests “fonctionnels”. On les associe aussi souvent, de manière erroné, à un test des limites sur chacun des champs d’un écran.

Ce n’est pas l’unité dont on parle ici ! L’unité dans un test unitaire est la classe (le code) ! C’est donc un test d’un niveau bien plus bas qui n’impacte que le développeur...

Peu importe le nom, la clé est de comprendre que grâce à la technologie moderne, il est désormais possible d’avoir des tests qui opèrent directement au niveau du code (chaque classe individuellement). Il s’agit alors d’une responsabilité propre aux développeurs indépendants des analystes fonctionnels ou de la gestion.

Ce niveau très microscopique qui nous est offert par la technologie s’avère également être celui qui est le moins fragile (probabilité qu’un test soit impacté par beaucoup de changements dans le système) car il inspecte une zone très limitée (portée).

Voici la clé de la maintenabilité des tests...

Archive