Expérience de stage agile chez Mirego – Québec

Es-tu à jour?

Dans le domaine des TICs, où les technologies se renouvellent sans cesse, il est primordial de mettre à jour ses connaissances. L’enseignant du collégial dispose de plusieurs moyens de se perfectionner tels : colloques, formations sur mesure, formation en ligne, participation à de grandes conférences, collaborer à des projets de recherche avec un CCTT (Tels CIMMI ou CERFO), ou en demandant un perfectionnement PATPÉ.


Un PATPÉ svp

Le perfectionnement PATPÉ (programme d’adaptation aux technologies et aux programmes d’études), est selon moi, le meilleur véhicule de perfectionnement pour approfondir des outils, des méthodes ou des technologies émergentes spécifiques aux besoins des étudiants. Une libération de 133 heures (0.1 ETC) peut être allouée à un enseignant afin qu’il s’immerge de ces nouveaux besoins du marché.

L’accès au PATPÉ est très simple : l’enseignant complète un document d’environ 5 pages et explique ses besoins, son plan de réalisation, le budget demandé, ainsi que le nombre d’heures nécessaire pour la réalisation d’un projet. Les demandes de PATPÉ complétées pour un département sont ensuite priorisées en fonction des besoins les plus pressants. Le tout est soumis à la direction qui alloue une quantité limitée de libérations en fonction du budget disponible.

Comme enseignant du Cégep de Sainte-foy, on m’a accordé une libération PATPÉ en entreprise. Il est aussi possible de réaliser un PATPÉ de façon autonome. Par contre, un contact avec l’entreprise possède plusieurs avantages : accès à un mentor, contact avec plusieurs personnes compétentes qui peuvent vulgariser et expliquer des concepts parfois difficiles à bien assimiler seul, et finalement un changement d’ambiance ne fait jamais mal. En fait, l’enseignant se retrouve de nouveau sur le banc d’école. Cela demande de l’humilité (surtout lorsque ce sont des étudiants à qui vous avez enseigné, qui vous coachent) mais c’est aussi très stimulant intellectuellement. C’est un retour de l’ascenseur par l’entreprise et par le finissant qui bénéficie à l’éducation et à l’économie québécoise.


Chez Mirego

Mirego est une entreprise de services en forte croissanse, spécialisée dans le domaine du développement d’applications Web et Mobile. Mirego se classe au 9e rang du palmarès des Leaders de la croissance et est classé au 63e rang du classement PROFIT 500 en 2014 . Ayant son siège social à Québec, Mirego possède des bureaux à Montréal et à Palo Alto, Ca.

visite-chez-mirego-quebec-atomrace.com-agile-scrum-logiciel-web-GS1_0328


Première impression

Une merveilleuse expérience de stage en entreprise chez Mirego Québec. Des gens compétents, des personnes motivées, des anciens du Cégep de Sainte-Foy forment une équipe unie et dynamique. Une équipe Agile qui s’adapte rapidement avec les tendances des marchés tout en appliquant les principes de l’amélioration continue.

visite-chez-mirego-quebec-atomrace.com-agile-scrum-logiciel-web-GS1_0342


Ambiance

Dans de grands bureaux ouverts, la communication est facilitée. L’équipe Mirego l’a bien compris. Retirons les cubicules et on se parlera, donnons des ordinateurs portables et nous pourrons nous déplacer facilement en petits groupes de travail. Fournissons la nourriture et les breuvages à nos employés et ils nous le retourneront bien en étant performant, fidèle et en santé. Pourquoi ne pas installer quelques tables de jeu (ping-pong, baby-foot), des divans confortables, des systèmes de sons, des télévisions, et des consoles de jeu pour que nos valeureux employés puissent se divertir et prendre des pauses efficaces et régénératrices.

visite-chez-mirego-quebec-atomrace.com-agile-scrum-logiciel-web-GS1_0317

Pendant un instant, j’ai eu l’impression que la Californie et Silicon valley était à Québec. Tous ces reportages où l’on présentait les bureaux et l’ambiance des entreprises de haute technologie comme Google, c’est une réalité à Mirego Québec, à un certain niveau.

Mirego a bien compris que la ressources la plus précieuse ce sont les employés et elle en prend soin.

visite-chez-mirego-quebec-atomrace.com-agile-scrum-logiciel-web-GS1_0299

Vincent Roy Chevalier diplômé du Cégep de Sainte-Foy et employé chez Mirego

[sharethis]


La section suivante vise à documents les méthodologies, bonnes pratiques, outils mis de l’avant chez Mirego.

Les méthodologies

Le monde du développement logiciel est constamment bousculé par de nouvelles technologies et de nouvelles méthodologie. On se rend compte que la planification prédictive de projet Cascade ne fonctionne plus. En fait, les besoins logiciels des clients sont en constant changements, la compétition est féroce et il faut changer de cap rapidement pour demeurer compétitif.

Agile

L’équipe Mirego mise donc sur la méthodologie Agile, méthode qui vise sur l’adaptabilité, une révolution des années 90 de plus en plus utilisée par les entreprises de services. Voici les trois vecteurs principaux de l’agilité :

  • l’intelligence collective motivée rationnellement

  • l’usage optimal des nouvelles technologies

  • la maîtrise formalisée de processus améliorés en continu

Comparatif des principes sous-jacents des deux courants de pensées

Cascade

Agile

Paradigme Prédictivité Adaptabilité
Méthodes Classiques ou « complètes » Nouvelles ou « agiles »
Cycle projet En cascade (sans rétroaction) Incrémentiel et itératif (adaptatif)
Forme de levée du risque Descriptive et documentaire Recherche – action – expérimentation
Philosophie d’analyse Considère la nature des interactions Considère les effets des interactions
Philosophie d’action Conduit à une action totalement détaillée et programmée Conduit à une action flexible et pilotée par objectifs
Validation par test de chaque élément sur jeux d’essais ou copie de la réalité confrontation permanente du modèle avec la réalité

Références :


Scrum

Définition : Scrum est un framework d’organisation de développement de produits complexes. Il est défini par ses créateurs comme un « cadre de travail permettant de répondre à des problèmes complexes et changeants tout en livrant de manière productive et créative des produits de la plus grande valeur possible ». Scrum est considéré comme une méthode agile.

Les trois piliers de Scrum

  • La transparence
    • Scrum met l’accent sur le fait d’avoir un langage commun entre l’équipe et le management. Ce langage commun doit permettre à tout observateur d’obtenir rapidement une bonne compréhension du projet.
  • L’inspection
    • À intervalle régulier, Scrum propose de faire le point sur les différents artéfacts produits, afin de détecter toute variation indésirable.
  • L’adaptation
    • Si une dérive est constatée pendant l’inspection, le processus doit alors être adapté.

Les événements Scrum

Toutes les activités (sprint, réunions de planning, revues, rétrospectives et mêlées) décrites dans le framework Scrum sont effectuées dans une de boîte de temps bien précise à des moments clés. À chaque jour, les membres d’une équipe de projet se réunissent pour participer à la mêlée quotidienne.

La mêlée quotidienne (Daily Scrum) est une réunion de planification et permet aux développeurs de faire le point sur les tâches en cours et sur les difficultés rencontrées. Cette réunion dure 15 minutes au maximum et est réalisée debout. À tour de rôle, chaque membre aborde 3 sujets :

  • Ce qu’il a réalisé la veille,
  • Ce qu’il compte réaliser aujourd’hui pour atteindre le but du sprint,
  • Les obstacles qui empêchent l’équipe d’atteindre le but du sprint.

Tests

L’assurance qualité d’un logiciel est un élément important du développement de produit. Afin de garantir un produit sans défaut, il faut le tester, idéalement, de façon automatisée. C’est ce que l’agilité préconise, donc Mirego a mis en place les meilleures pratiques de tests. Puisque le logiciel est modifié de façon constante, il faut un moyen de vérifier que les modification apportées n’introduisent pas de bogue.

Tests unitaires

Le principe est que chaque ligne de code doit être testée (couverture de 100%) de façon automatisée. Le développeur doit donc écrire du code de test qui lui permettra de vérifier qu’il a bien codé son algorithme. Il est toujours important de tester les cas limites.

Chez mirego, le cadriciel RSPEC est utilisé pour les tests unitaires de projets développés avec Ruby on Rails.

Tests d’intégration

Les tests d’intégration vise à tester le logiciel dans son ensemble. Encore une fois, ces tests doivent être automatisés afin que les fonctionnalités de haut niveau, celles présentées à l’utilisateur, puissent être testés. Le happy path est souvent parcouru. Le happy path se produit lorsqu’un utilisateur utilise les fonctionnalités sans utiliser des valeurs limites.

Outils de développement

ruby-on-rails-logoRuby on Rails afin de développer le code serveur. Que ce soit pour un site Web ou un API, Ruby on Rails est la cadriciel de prédilection.


logo-githubGithub est l’outils nuagique de gestion de configuration (gestion de code) privilégié par l’équipe Mirego. Avec ses 10 millions d’utilisateurs github fait l’unanimité dans le domaine du développement logiciel Web.


pivotal-trackerPivotal tracker est l’outil de gestion de projet préconisé afin de gérer un projet selon la méthodologie Agile à l’interne. Ce logiciel en ligne a été spécifiquement conçu pour être hébergé dans le nuage et être utilisé simultanément par plusieurs utilisateurs.


basecamp-logoBasecamp est l’outil de gestion de projet utilisé en collaboration avec les clients de Mirego.


heroku-logoHeroku est l’hébergeur haute performance utilisé pour déployer les projets Web. Anciennement Amazon Web Services été utilisé.


ma-os-xMac Os X est très repandu chez Mirego. En fait, chaque développeur est équipé d’un Mac. Cela lui permet de bénéficier de la puissance de Unix tout en ayant un environnement graphique convivial. Cela permet aussi au développeur d’application Mobile de tester les applications développées pour iPhone ou iPad, ce qui est plus complexe sur Windows ou Linux.


Une visite pour les étudiants

Étant emballé par mon expérience chez Mirego, nous avons organisé une visite d’entreprise pour 24 étudiants du Cégep de Sainte-Foy. Les commentaires vont tous dans le même sens : c’était une belle expérience et les étudiants confirment qu’ils aimeraient bien obtenir un stage ou un emploi chez Mirego.

visite-chez-mirego-quebec-atomrace.com-agile-scrum-logiciel-web-GS1_0340

Il arrive qu’un étudiant questionne les techniques et outils enseignés par le professeur. C’est tout à fait normal! Grâce à cette visite, les étudiants ont eu la confirmation que leur formation est pertinente et que la méthodologie Agile est belle et bien utilisée en entreprise.


Merci

Pour terminer, j’aimerais remercier le Cégep de Sainte-Foy pour cette opportunité, mais surtout à Martin Gagnon de Mirego qui a accepté de m’accueillir dans ses locaux et me de me transférer les connaissances nécessaires afin de permettre aux étudiants de construire des applications Web performantes et de qualité selon la méthodologie Agile.

visite-chez-mirego-quebec-atomrace.com-agile-scrum-logiciel-web-GS1_0331

Références

 


[sharethis]

 

 

0 réponses

Répondre

Want to join the discussion?
Feel free to contribute!

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *