Postée il y a 6 jours
Dans le cadre d?un projet de transformation reposant sur une architecture en microservices nous recherchons un architecte logiciel C++ expérimenté, capable de structurer le code, d?implémenter une architecture robuste et de collaborer avec nos équipes afin de poser les bases d?un développement pérenne.
Objectif du Poste :
Concevoir, définir et superviser les architectures applicatives pour différents périmètres, en assurant la cohérence technique, la scalabilité et la maintenabilité des solutions.
Objectifs principaux :
Mise en place d'une architecture moderne et performante orientée micro services.
Application des meilleures pratiques pour organiser, structurer et industrialiser le code en C++.
Utilisation et intégration d?un ensemble d?outils technologiques, notamment Conan, CMake, Qt, et modélisation avec ArchiMate, pour répondre aux attentes des utilisateurs et garantir la maintenabilité du logiciel.
Profil candidat:
Compétences techniques :
Langage C++ :
Maîtrise avancée (C++17 minimum, idéalement C++20).
Expertise en programmation orientée objet et principes SOLID.
Connaissance approfondie des paradigmes modernes C++.
Qt, QML : Framework pour le développement d?interfaces utilisateur.
C++: Maitrise de la STL, connaissances de Boost, Connaissance de Drogon apprécié
Expertise en programmation orientée objet, Modélisation avec UML 2.O, Design Pattern et principes de conceptions
Architecture logicielle :
Conception et modélisation d?architectures orientées micro services.
Familiarité avec des protocoles de communication interservices (par exemple : gRPC, REST, etc.).
Solides connaissances des pratiques de découplage et modularisation.
Outillage :
Conan : gestionnaire de dépendances pour faciliter le partage et le contrôle des bibliothèques externes.
CMake : automatisation des scripts de configuration et de compilation du projet.
ArchiMate : méthodes formalisées et outils pour la modélisation et la documentation d?architectures techniques et fonctionnelles.
OS : maitrise de Linux, Unix au minimum
Qualité & maintenabilité :
Sensibilité particulière à la maintenabilité, scalabilité et robustesse des systèmes.
Pratique des tests unitaires et d'intégration.