You're seeing this page as if you were . The main menu is still yours, though. Exit from immersion
Nicolas M.NM

Nicolas M.

Spring Boot | React | APIs robustes & refonte

550 €/jour
Rennes, FR
3-7 ans

Délai de réponse moyen : 1h

À propos de Nicolas

  • Backend Java difficile à faire évoluer ?
API lente, fragile ou devenue coûteuse à maintenir ?

J’aide les équipes à refondre ou faire évoluer leur backend Java / Spring Boot pour le rendre plus robuste, plus performant et surtout plus simple à faire évoluer dans le temps.

J’interviens notamment sur :

• refonte de backends Java / Spring Boot
• conception et évolution d’APIs REST
• amélioration de la qualité du code et des tests
• modularisation d’architectures devenues trop couplées
• optimisation des performances backend

Lorsque le besoin l’exige, j’interviens aussi à la frontière backend / interface pour connecter efficacement API, web et mobile (React / React Native).

Exemples de missions :

• création d’APIs pour application mobile
• refonte d’un backend difficile à maintenir
• amélioration des performances d’un service critique
• préparation d’une architecture plus scalable

Stack principale :
Java • Spring Boot • APIs REST • SQL • React • React Native

L’objectif reste toujours le même :
concevoir un système plus fiable aujourd’hui et plus simple à faire évoluer demain.

Disponible pour échanger sur votre projet.
  • Français

    Bilingue ou natif

  • Anglais

    Capacité professionnelle complète

En télétravail uniquement
Travaille majoritairement à distance

Expériences

  • Inpulse
    Créateur
    février 2026 - mars 2026 (1 mois)
    InPulse — Application de capture de signal collectif (Java / Spring Boot / React Native)
    Contexte

    Développement d’un produit permettant de capter un signal collectif simple et exploitable à partir de questionnaires courts.
    L’objectif est de produire un indicateur clair permettant d’aligner rapidement une organisation (RH, collectivité, événement) sans générer de bruit informationnel ni collecter de données personnelles.

    Le système est volontairement conçu autour de principes forts :
    • anonymat crédible
    • simplicité d’usage
    • absence de comptes utilisateurs
    • signal collectif plutôt que données individuelles
    Backend
    Conception d’un backend dédié à la capture et au calcul du signal collectif.
    Fonctionnalités principales :
    création et configuration d’un InPulse (questions, seuil d’anonymat, tokens)
    participation anonyme via token unique
    prévention des réponses multiples
    accès au signal collectif uniquement après complétion
    statistiques de participation
    endpoints administrateurs sécurisés

    Architecture backend :
    • Java 21
    • Spring Boot
    • architecture hexagonale
    • design use-case driven
    • séparation Command / Query + Handlers
    • repositories abstraits
    • persistence in-memory (MVP)
    Qualité :
    • TDD systématique
    • tests unitaires
    • scripts E2E pour validation des flux complets
    Application mobile

    Développement d’une application mobile permettant de participer à un InPulse en quelques secondes.

    Principes UX :

    aucun compte utilisateur
    ouverture directe via QR code ou Universal Link
    parcours simplifié en un seul écran
    affichage du signal collectif dès qu’il devient disponible

    Architecture frontend :
    • React Native
    • Redux
    • ViewModel orchestrant les use-cases
    • gestion d’état claire et prévisible
    • polling lifecycle-aware
    • stockage sécurisé du handle de participation
    Architecture produit
    impossibilité de corréler les réponses entre individus
    backend MVP terminé.
    application mobile fonctionnelle
    Spring boot React Native Typescript PostgreSQL Java
  • Fragments
    Créateur
    septembre 2025 - janvier 2026 (4 mois)
    Fragments — Refonte fullstack d’une architecture microservices vers un modular monolith (Java / Spring Boot / React Native)

    Développement d’une application mobile autour de la découverte et du partage de cafés de spécialité.
    Une documentation technique détaillée du projet est disponible :
    • Le projet a d’abord été conçu avec une architecture microservices, puis entièrement refondu vers une architecture modular monolith afin de réduire la complexité technique tout en conservant un découpage métier fort.

    Côté backend, l’application a été repensée autour de plusieurs contextes métier (authentification, cafés, social, tickets, articles), avec une organisation inspirée du DDD, une séparation read / write, des use cases explicites, des ports / adapters et une communication interne orientée événements.

    Le système s’appuie également sur un shared kernel intégrant CommandBus, QueryBus, EventBus, ainsi qu’une logique outbox pour fiabiliser la diffusion d’événements vers Kafka et WebSocket.

    Côté frontend, l’application mobile React Native a été structurée pour rester alignée avec le domaine et le backend : organisation par features, séparation adapters / core logic / view models / gateways, gestion d’état avec Redux, logique de synchronisation, outbox côté client et ACK websocket.

    Le projet accorde une place importante à la qualité logicielle avec une stratégie de tests complète :
    tests unitaires, tests d’intégration, tests end-to-end et utilisation de Testcontainers pour valider les flux dans des conditions réalistes.

    Cette refonte a permis d’obtenir une architecture plus lisible, plus maintenable et mieux alignée avec les besoins réels du produit.

    Stack : Java, Spring Boot, React Native, Redux, DDD, CQRS, Event-Driven Architecture, Kafka, WebSocket, Testcontainers, APIs REST.
    Spring boot React Native Apache Kafka Docker PostgreSQL

Recommandations

Soyez le premier à recommander Nicolas

Contribuez à la réussite de ce freelance en partageant votre expérience de collaboration avec lui.

Ces profils de freelance correspondent également à vos critères

AgathaA

Agatha Frydrych

Backend Java Software Engineer

4.7

(3)

2

BaptisteB

Baptiste Duhen

Fullstack developer

4.6

(4)

5

AmedA

Amed Hamou

Senior Lead Developer

4

(2)

7

AudreyA

Audrey Champion

Web developer

4.3

(3)

4

Formations

  • Formation TDD, Clean Architecture et DDD dans le monde Java
    Wealcome
    2025
    Test-Driven Development (TDD) Domain-Driven Design (DDD) Clean / Hexagonal Architecture Réalisation complète d'un backend Java réaliste, en live coding avancé, basé sur un cas métier digne de ce que l'on rencontre en entreprise — loin des katas simplistes.
  • Formation TDD et Clean Architecture dans le monde Web avec React, Typescript, State Manager
    Wealcome
    2025
    Le Test-Driven Development (TDD) - La Clean / Hexagonal Architecture Réalisation complète d'un FrontEnd React réaliste, en live coding avancé, basé sur un cas métier digne de ce que l'on rencontre en entreprise — loin des katas simplistes.

Compétences

Catégories