Évaluation d'écosystème d'ingénierie logiciel
Ce projet a été réalisé en collaboration avec Mathieu Hétu et Kevin Borduas.
Le projet d’audit se veut un projet de mapping de sujets important pour un écosystème de développement logiciel.
Les objectifs de ce mapping:
- Lister les concepts importants pour la gestion
- Voir les possibles délégations de différentes responsabilités à différents rôles
- Potentiel de framework pour ‘spawner’ des initiatives internes
Table des matières
- Team Work
- Autonomie
- Responsabilité
- Empowerment
- Hiérarchie Décisionnelle
- Tooling
- SDLC (Software Develpoment Lifecycle)
- Support
- DevOps
- Évolution personnelle
- Recrutement
- Performance
- Reconnaissance
- Rémunération
- Motivation
- Gestion savoir
- Environnement
Volet Vision
Veille technologique
- Expert interne MVP
- Stratégie Laboration / Exploration
- Révision des méthodes de travail
- Infrastructure
- Stratégie partage de l’information
- Follow Evengelist
- Conférence Externe / Dev Kitchen
- Avez-vous des expert reconnus (certifités) à l’interne ?
- Quelle est votre stratégie d’exploration technologique ?
- Avez-vous un laboration technologique ?
- À quelle fréquence remettez-vous en question vos méthodes de travail ?
- Décrivez-moi votre infrastructure qui supporte vos technologies
- Comment le partage de savoir technologique se fait ?
- Est-ce que vous suivez des leaders technologiques pour voir et comprendre ce qui se fait ailleur ?
- Quelle est votre stratégie pour les conférences externes ?
- À quelle fréquence allez-vous à des conférences externes ?
- Quels sont les extrants de ces conférences ?
Qualité
- Stratégie de tests
- Unitaire
- Intégration
- Système
- Ownership
- Entretien
- Création
- Sécurité
- Complience
- Plan d’incident
- Release
- Frequence
- Seuil de tolérence (pour mettre en prod)
- Temps
- Process Quotidien
- Review
- Pairiing
- Design Meeting
- QA (dev)
- QA
- Dev (nightwatch style)
- Département dédié
- Support
- Stratégie ?
- Composition
- Levels
- Processus (vers dev, report bug)
- Qualité bug
- Classement
- Doit être fix ou pas
- Report
- Qui règle quel bug ?
- Quelle est votre stratégie de test du code produit ?
- Avez-vous des tests unitaires ? d’intégration ? systèmes ?
- Qui est responsable des tests ? Qu’arrive-t-il si un d’entre eu brise ?
- Comment créez-vous vos tests ? (obligatoire ?)
- Quelle est votre stratégie de sécurité ?
- Etes-vous conforme avec GDPI ? ISO 27001 ?
- Quel est votre plan d’incidence ?
- Pour une fuite ?
- Pour une rançon ?
- À quelle fréquence livrez-vous ?
- Est-ce que c’est fixe comme fréquence ?
Data
- Clients
- Présence en personne (conférence)
- Telemetrie
- User Voice
- Comment / OU
- Outillage
- Accès / API interne ?
- Warehouse ?
- Interne
- Ventes
- Bug
- Release
- Productivité
- Externe
- Etude de marché
- Persona
- NPS
- Compétition
- Fréquence
Innovation
- Quantité de temps et de resource investie
- Niveau d’effort
- Récompense
- Activités ? (exemples…)
- Étapes claires
- Pipeline d’innovation, flow
Volet organisationnel
Team Work
- Comment sont composé vos équipes ?
- Est-ce que vous incluez les rôles suivants dans les équipes (à part entière)?
- Scrum Master
- Testeur / QA
- Combien avez-vous de développeur en moyenne par équipe ?
- Est-ce que vous incluez les rôles suivants dans les équipes (à part entière)?
- Comment choisissez vous la composition des équipes ?
- Est-ce que c’est décidé par les gestionnaires ? Est-ce qu’il y a consultation ?
- Comment qualifiez vous le travail entre les équipes ?
- Comment sont structurez vos équipes ?
- Est-ce que vous utilisez Scrum ?
- Quel sont vos activités récurentes d’équipes ? (Daily, Rétro, Review)
- Avez-vous un environnement qui favorise le travail en équipe ?
- À quel fréquence les employées travaillent-ils en équipes ?
Autonomie
- Quel est votre politique sur l’horaire et sa flexibilité ?
- Quel est votre seuil de tolérence sur la mobilité et le travail de la maison ?
- Est-ce compatible avec votre stratégie de travail en équipe ?
Responsabilité
- Quel sont les divers rôles dans votre écosystème ?
- Connaissez-vous les responsabilités de chacun ?
- Est-ce que les responsabilités sont attachés à un rôle ou une personne ?
- Est-ce qu’il y a des employées dont vous ne pouvez pas vous passer ? (Bus Factor)
- Est-ce qu’il y a des tâches dont la responsabilité est à un groupe ou une communauté ?
Empowerment
- Quelle est votre stratégie de délégation d’authorité ?
- Comment laissez-vous les employés s’approprier des processus ou des dossiers ?
- Comment qualifieriez-vous le degré de liberté décisionnelle des employées ?
Hiérarchie Décisionnelle
- Connaissez-vous votre hiérarchie décisionnelle ?
- Qui est le gestionnaire de qui ?
- Quel est votre cycle d’approbation pour :
- un embauche ?
- un nouvel outil ?
- une dépense (conférence, activités d’équipe) ?
- Décrivez-moi votre processus de rapport d’incident
- Qu’est-ce qui arrive s’il y a une gaffe ou une erreur ?
- Quel est votre stratégie pour mitiger les décisions abusives ? (power trip)
Tooling
- Quels sont vos outils ?
- Logiciels ?
- Services ?
- Installation physique ? (ordinateurs, écrans, clavier/souris)
- Avez-vous un inventaires de vous outils ?
- Est-ce que vos outils sont bien intégrés ensemble ?
- Avez-vous de la documentation accessible pour les divers catégories d’outils ?
- Quel est votre stratégie d’évolution des outils ?
- Quel est le niveau de liberté des employées pour suggérer et/ou adopter de nouveaux outils ?
- Qui a l’ownership de chacun des outils ?
- Quel est votre stratégie pour mitiger le “shadow-IT” ?
- Quel est votre stratégie d’automatisation des outils ?
SDLC
- Pouvez-vous me décrire votre cycle de développement logiciel ?
- Quel est votre stratégie de mise en production ?
- À quelle fréquence ?
- Quel est votre stratégie de gestion de version de code ?
- Quel outils utilisez-vous ? (GIT, SVN, etc)
- Quel est votre stratégie pour organiser votre système de code ? (GIT FLOW, Branching, autre ?)
- Quel est votre processus de mise en production dans le système de gestion de code ?
- Quel est votre stratégie de gestion de la configuration ?
- Comment gérez-vous les versions ?
- Avez-vous des features switch ?
- Quel est votre stratégie d’intégration continue ?
- Quel est votre culture de test ?
- Avez-vous des tests ? (unitaires, intégrations, cas d’utilisation)
- À quel degré est-elle automatisé ?
- Quel est votre stratégie d’incident en production ?
- Êtes-vous capable de revenir à une version précédente rapidement ?
- Quel est votre temps de réaction à une erreur qui bloque vos clients ?
Support
- Quel est votre entente au niveau du service et support de votre produit ? (SLA)
- Quel est votre stratégie de support interne ?
- Avez-vous plusieurs niveaux à votre stratégie de support ?
- Quel est la composition de votre groupe de support ?
- À quelle fréquence assurez-vous la formation des gens au support ?
- Quels outils votre support utilisent-ils ?
- Est-ce intégré avec le développement ?
- Quel est la relation entre l’équipe de support et les autres département ?
- Ventes ?
- Marketing ?
- Développement ?
- Quel est votre stratégie de documentation de cas clients pour le support ?
DevOps
- Quel est votre stratégie de monitoring de votre production ?
- Quel est votre processus de déploiement ?
- À qui est-ce la responsabilité ?
- Quels sont vos pratiques de DevOps ?
- Quel est votre stratégie pour assurer la sécurité dans votre produit ?
- Êtes-vous GDPR ?
- Êtes-vous ISO 27001 ?
- Quel est votre entente client concernant la sécurité ? (SLA)
- Quelle est la place de la sécurité dans le développement et les équipes ?
Volet Humain
Évolution personnelle
- Quelle est votre stratégie vis à vis l’accompagnement dans un plan de carrière?
- Est-ce lié à la rémunération?
- Y-a-t-il des échelons?
- Est-ce lié à une structure de poste, une hiérarchie?
- Est-ce lié à la formation?
- Quelle est votre stratégie face aux titres des différents rôles?
- Quel est le rôle du titre chez vos employés?
- Y-a-t-il des niveaux de ces titres? (Senior, associé, chef de, exécutif, etc)
Recrutement
- Quelle est votre stratégie d’acquisition de talents, de recrutement?
- Comment faites-vous vos affichages, vos descriptions de postes?
- Quels canaux de publications?
- Quelle est votre stratégie de validation de compétences? Tests techniques? Échantillon de travail?
- Avez-vous une idée claire du marché, de l’audience que vous cherchez?
- Quel est le ‘churn rate’ de vos deux dernières années?
- Avez-vous une stratégie de recrutement interne, de mobilité interne?
- Quelle est votre stratégie d’onboarding? Documentation, mentorat, formation?
- Quel est votre taux/ratio actuel de permanents vs consultants?
Performance
- Quelles sont vos stratégies de feedback auprès de vos employés?
- Fréquence
- De quelle manière
- Outils
- Comment évaluez-vous la performance de vos employés?
- Quel est le processus d’évaluation?
- Est-ce lié à la rémunération?
- Quelle est la place de l’évaluation des compétences dites ‘soft’ (personnalité, comportement) dans votre évaluation de performance?
- Quelle est votre stratégie de gestion de sous-performance?
- Définition de sous-performance
- Détection et seuil
- Stratégie en cas de rejet de collègues ou d’équipes?
Reconnaissance
- Quelles sont vos stratégies en place pour la reconnaissance de collègues?
- Que priorisez-vous comme reconnaissance?
- Est-ce lié à la performance? À la rémunération?
- Quels canaux? Reconnaissance publique? Reconnaissance privée?
- Qui fait généralement de la reconnaissance?
- Y’a-t-il des bonus ou des commissions? Des cadeaux?
- Est-ce lié à des sondages internes?
- À des concours?
- Avez-vous une stratégie de reconnaissance face à la loyauté? Aux années de service?
Rémunération
- Comment avez-vous sélectionné les brackets de salaires?
- Avez-vous un outil ou une stratégie de connaissance des salaires du marché?
- Quel est le cycle de révision de salaires? Est-ce l’inflation annuelle?
- Avez-vous une stratégie de partage de profits?
- Est-ce que la liste actuelle des salaires vous semble équitable vis-à-vis l’axe principal de sélection (ie: performance, ancienneté, rareté, etc)?
- Est-ce que votre liste d’avantages sociaux est compétitive face au marché?
- Est-ce qu’il y a une stratégie de révision/ajustement de salaires en dehors de la révision annuelle?
Motivation
- Comment évaluez-vous le niveau actuel de motivation de vos employés?
- Quel est le niveau actuel de motivation?
- Quelles sont les raisons individuelles pour lesquelles vos employés actuels travaillent encore pour vous?
- Quelle est la fragilité de ces raisons?
- Quelles sont vos stratégies de rétentions d’employés?
- Quelles initiatives des deux dernières années ont été mis en place pour travailler au niveau des motivations de vos employés?
- Est-ce que les gestionnaires connaissent bien les motivateurs intrinsèques de vos employés?
Gestion savoir
- Qu’êtes-vous prêts à offrir à vos employés pour de la formation?
- Quelles sont vos stratégies actives de formations?
- Quelles sont vos stratégies passives de formation?
- Est-ce que la formation se fait durant les horaires de travail des employés ou sur leur temps personnel?
- Avez-vous une stratégie de mentorat en place?
- Quelle est votre stratégie pour favoriser le partage de connaissances à l’interne?
- Présence de groupes d’experts ou de pratiques?
Environnement
- Est-ce que votre environnement ‘fit’ avec le type de candidats de votre recrutement?
- Quel est le confort de l’environnement de travail?
- Quelle est la place, la location de vos développeurs ?
- Est-ce propice à la collaboration? Pairing, bureaux, boards, conférences
- Est-ce que le hardware proposé est une source de frustration?
- Est-ce que le niveau de bruit (ou de silence) est source de frustration?
- Est-ce que le lieu géographique de l’environnement de travail est source d’avantage ou de désagrément?
- Est-ce que l’environnement de travail est source de motivation?
- Est-ce que l’environnement est propice à décrocher et ‘prendre un break’ ?