Équipe coeur

L'équipe coeur est l'équipe qui développe la solution. Ce sont les développeurs, techniciens de niveaux différents et de compétences souvent complémentaires. C'est une équipe où l'information circule et où tous les intervenants connaissent les sujets de toute l'équipe afin de pouvoir remplacer le plus facilement possible un membre de l'équipe en congés ou qui serait passé à un autre projet laissant son poste vacant le temps d'un nouveau recrutement. Elle est au centre de la méthode agile. C'est elle qui définit ses rituels, l'heure des réunions quotidiennes... Elle est censée être auto-organisée. Si la PO peut définir la priorisation des fonctionnalités à développer, l'équipe coeur doit émettre ces remarques, réflexions concernant la faisabilité des fonctionnalités et leur temps de développement.

Besoins métier
et fonctionnalités

En tant que dév. sénior, tech lead j'accompagne les différents intervenants du projet pour développer les fonctionnalités attendues par le client. Au plus près du département fonctionnel comme le product owner ou product manager, je conseille et avise mes collaborateurs des difficultés pouvant exister résultant de choix fonctionnels afin d'anticiper certains éléments bloquants durant le développement du projet. Cette collaboration avec les rôles de product owner ou product manager est très importante pour garantir la bonne exécution du projet.
L'architecte peut aussi être présent lors des réunions avec le, la product owner. Au plus près des problématiques serveur, communications entre les différents supports informatiques de l'entreprise il peut soulever des problèmes résultants de choix fonctionnels.

Choix des technos

Le choix des technologies est essentielles pour votre projet. Elles constituent le socle sur lequel vont s'appuyer votre équipe au coeur du développement. ces choix devront être minutieux pour avoir des technos faciles à utiliser, avec un haut niveau de maintenabilité car vos systèes d'information évoluront avec.
Pour ma part, je tourne souvent entre des framework front commen Angular ou react et PHp Symfony ou NodeJs pour le backend. En accord avec un bon designer, vos interfaces peuvent être très intuitives, simples à utiliser et adaptées à tous les supports média (tablette, smartphone, orrdinateur).

DevOps

Github, Bitbucket, pull request, code review, Jenkins, AWS, Terraform, Kubernetes, Docker, Argo CD, Gitlab-ci, Git flow...
Toutes ces technos, en plus d'une bonne équipe constituée de membres qui connaissent les problématiques d'intégration continue, de déploiement continu, permettent de déployer rapidement de nouvelles versions de l'application en mode "industriel". Cette approche DevOps permet aussi d'être flexible et "simpliste" dans la problématique de versionnement de l'application et de son évolution à cours et long terme.

Méthode agile scrum

PO, POD, scrum master, PM, équipe coeur, rituels agile, daily, sprint, PI, PI planning, rétro planning... Autant de terme et de rôles qu'il faut comprendre afin organise le travail, atteindre des objectifs précis, prévoir et déterminer les temps de développement des objectifs à atteindre. L'esprit agile favorise la prise de risque en équipe, le partage des responsabilité entre développeurs et la mise en commun des savoir-faire.