Tech lead Backend
Oolab · Tunis, Tunisia
Apply & track with Apply EdgeOoLab est la filiale Tunisienne du groupe Français Oodrive.Oodrive est un éditeur français de logiciels, pionnier de la collaboration sécurisée et souveraine en Europe. Nous accompagnons les entreprises, institutions et administrations dans la gestion de leurs documents sensibles, avec une suite collaborative complète et certifiée (SecNumCloud, ISO, HDS…)Rejoins-nous et deviens un acteur clé de notre plateforme !Tes missions: En tant que Tech Lead Backend Developer, tu joues un rôle clé dans la conception, le développement et l’évolution de nos plateformes.Au quotidien, tu seras amené(e) à :Concevoir et développer des fonctionnalités en Java 17+ au sein d’une architecture hexagonale (Ports & Adapters), en garantissant la lisibilité, la testabilité et l’expressivité du code.Piloter l’évolution de l’architecture backend vers des bounded contexts bien définis (approche DDD), avec pour objectif la scalabilité, la résilience et le découplage.Refactorer progressivement le code legacy en appliquant les principes SOLID et Clean Code, sans recourir à une réécriture complète (pas de “big bang rewrite”).Mettre en place une stratégie de tests robuste (tests unitaires, d’intégration, contract testing) et considérer les tests comme une documentation vivante.Définir et documenter les choix d’architecture via des ADR (Architecture Decision Records) et animer des design reviews.Accompagner techniquement l’équipe (4 à 8 développeurs) via du mentorat, du mob/pair programming et des katas de code.Promouvoir une culture craft au quotidien : code reviews bienveillantes, refactoring continu, TDD et CI/CD.Collaborer étroitement avec les équipes Produit, Frontend, DevOps, Sécurité et Infrastructure.Projets & enjeux:Tu participeras à plusieurs chantiers structurants :Migration progressive vers une architecture hexagonale et des bounded contexts DDD.Réduction de la dette technique via un refactoring continu guidé par les principes Clean Code et SOLID.Optimisation des performances backend : profiling JVM, tuning SQL, stratégies de cache (Redis).Renforcement des processus de sécurité, qualité et conformité : tests automatisés, contract testing, revue de code systématique.Mise en place de patterns event-driven (Kafka, RabbitMQ) et renforcement de l’observabilité.Environnement technique:Backend: Java 17+ ,Spring Boot, Spring Cloud, JUnit 5, Mockito, ArchUnitFrontend: AngularInfrastructure & DevOps: Kubernetes, Docker, GitLab CIMessaging & Streaming: Apache Kafka, RabbitMQBase de données: PostgreSQL, RedisArchitecture: Architecture hexagonale (Ports & Adapters), DDD, CQRS, Event-DrivenOutils: Jira, Confluence, SonarQube, IntelliJ IDEALes compétences et qualités qui te permettront de réussir dans ce rôle: Expertise technique & craftTu as une solide expérience en développement backend Java / Spring Boot (7+ ans), une maîtrise des pratiques craft (Clean Code, SOLID, TDD) et une compréhension approfondie des architectures distribuées.Tu maîtrises :Les patterns DDD en production : Aggregates, Value Objects, Domain Events, Bounded Contexts.L’architecture hexagonale (Ports & Adapters) appliquée sur des projets réels.Les architectures distribuées, le messaging (Kafka, RabbitMQ) et les bases de données relationnelles (PostgreSQL).LeadershipTu es reconnu(e) pour ta capacité à :Accompagner techniquement une équipe et faire grandir les développeurs via le pair programming et le mentorat.Porter les décisions d’architecture et les documenter (ADR, RFC internes).Faire le lien entre vision produit et excellence technique, sans compromis sur la qualité du code.Mindset craftTu privilégies le refactoring progressif à la réécriture totale.Tu sais travailler sur des produits avec du code legacy, en les faisant évoluer vers du Clean Code avec pragmatisme.Tu considères la dette technique comme un risque métier, et non comme un simple sujet de développement.Bonus appréciésContributions à la communauté craft : meetups, talks, articles, open source.Connaissance de CQRS / Event Sourcing dans un contexte réel.Sensibilité DevOps : Kubernetes, observabilité, Infrastructure as Code.Lectures récentes appréciées :Domain-Driven Design (Eric Evans)Clean Architecture (Robert C. Martin / Uncle Bob)Implementing Domain-Driven Design (Vaughn Vernon)Sensibilité aux pratiques agiles et force de proposition pour améliorer les processus et l’organisation de l’équipe.Nos avantages :Avantages sociaux : Carte repas, Primes, Assurance maladie,Conventions : Banque, salle de sport et agence de voyage.Flexibilité : Planning hybride après la validation de la période d'essai.Congés payés : Maladie, Maternité et d'autres offerts par la sociétéNotre process de recrutement :Echange RH dans nos locauxPair programmingEchange avec nos EM