Skip to main content
Paris / --:--:--

Hey , I'm Clément.

Software engineering student at CESI and apprentice at R3mScore , focused on backend and full-stack systems: distributed services, concurrency, and large production codebases maintained under continuous change. I like problems with real constraints, the kind where architecture decisions actually matter. Away from the keyboard: Kung Fu, hiking, chess, and playing trumpet or kora.

Software Engineering Internship · June 2027

Looking for an 18-week internship, June 7 – October 10, 2027. Open to on-site or hybrid.

Hire me

TL;DR

Started with a multimedia and internet technologies degree at IUT de Rouen, then moved into a computer science engineering program at CESI. Along the way I interned, then joined as an apprentice at R3mScore, two years of production Java and React, shipping features, wiring up AI integrations, and gradually owning more of the system. On the side: an open-source distributed backup engine in C#/.NET with concurrent execution and pluggable architecture, and a Next.js voting app for a basketball club built to hold up under real traffic.

Selected projects

Breezy

Twitter-like social platform built as a Turborepo monorepo of six Node.js/TypeScript microservices, each owning its own database, behind an Nginx gateway. gRPC for synchronous calls, RabbitMQ for events, WebSocket for private messaging, SSE and Web Push for notifications. Full observability with Prometheus, Grafana, Loki and OpenTelemetry/Jaeger. Built in four weeks by a team of four for the Distributed Application Development course at CESI.

TypeScript Node.js Next.js gRPC RabbitMQ PostgreSQL MongoDB Redis Nginx Docker

Pathpipe

Developer-focused job-application tracker, live in production. Kanban and table views of applications, a company watchlist, and a background worker that scrapes watched companies' careers pages (JSON-LD, HTML heuristics, headless-browser fallback) and emails new postings. TypeScript monorepo: NestJS API as the single source of truth, Next.js frontend talking to it only through Server Actions, independent BullMQ workers on Redis, PostgreSQL, Docker images built on GitHub Actions and deployed through Dokploy.

TypeScript NestJS Next.js PostgreSQL Redis BullMQ TypeORM Turborepo Docker GitHub Actions

TSP Resolver

Python solver for the Traveling Salesman Problem with real-world constraints. Implemented 5 metaheuristic algorithms (nearest neighbor, ant colony optimization, taboo search, genetic algorithm, simulated annealing) with comparative analysis on 300+ iterations per instance. Features custom graph generation with forbidden nodes, precedence constraints and toll costs, plus statistical validation and visualization.

Python Jupyter NumPy Matplotlib Pandas NetworkX

EasySave

C# backup job manager with full and differential strategies, parallel execution with priority scheduling, and AES-256 file encryption via an RSA-authenticated subprocess. Two frontends share the same core: a cross-platform Avalonia desktop GUI and a CLI TUI. Logs ship to a Dockerized TCP server, binaries published via GitHub Actions.

C# Avalonia .NET 10 XUnit GitHub Actions

ALM Vote Manager

MVP voting app deployed for ALM Évreux basketball club: spectators scan a QR code at the venue, register, and vote from their phones. Admin dashboard for match and player management, live vote tallies, and podium display. PII encrypted with AES-256 and hosted on CleverCloud for RGPD compliance.

TypeScript Next.js MySQL Drizzle Lucia

XANADU Infrastructure

Academic project: full network architecture designed for a fictional 60-user company, implemented at reduced scale on a Proxmox lab server. Covers VLAN segmentation, DMZ, MPLS inter-site link, AD with delegated administration, default-deny firewall policy, PowerShell automation scripts, and a 3-2-1 backup policy targeting a 4-hour RTO for critical services.

pfSense Active Directory Windows Server Proxmox Zabbix Docker Linux
View All

Experiences

Apprentice Software Engineer

Sep 2024 - Present

Java/Spring and React on a production survey platform used daily by clients: backend services, frontend, AI features and build tooling, shipped and maintained under continuous change.

  • Designed and own end-to-end a Word-to-survey import/export engine parsing .docx questionnaires into structured surveys (conditional logic, loops, adaptive questions), replacing 20 minutes to 3 hours of manual setup per survey. No competitor offers this.
  • Migrated a 15,000+ line frontend from JavaScript to TypeScript incrementally, with no feature freeze and no regression in production, eliminating type-related runtime errors.
  • Built an in-house LLM orchestration layer in Java (a lighter LangChain4j-style clone) over OpenAI and Mistral, enabling streaming conversations, follow-up question generation and multilingual prompts with JSON Schema validation.
  • Cut frontend build time 10× (20 min → 2 min) by migrating the build pipeline to Vite, raising deployment frequency.
  • Raised test coverage on critical features with JUnit and Vitest suites, reducing production incidents.
  • Shipped customer-facing Java/Spring and React modules from requirements to production; set up CI/CD pipelines and introduced RabbitMQ for reliable async processing between services.
  • Built a WhatsApp-like chatbot POC with persona selection, conversation history and file uploads for AI-assisted survey analysis demos.

Software Engineer Intern

Apr 2024 - Jun 2024

Contributed to the survey creation tool across backend and frontend while onboarding to the Java codebase.

  • Implemented Word import/export pipelines for questionnaires and translations, automatic REF renaming and validation, and safer handling of quotas, weights and URL parameters in data exports.
  • Designed and integrated a RESTful API to improve inter-service data exchange, validated with integration tests.
  • Introduced ESLint, added unit and integration tests on collectors and reporting logic, and refactored legacy React components and Java services into clearer, typed and tested modules.
  • Built internal AI tools to organize and analyze open-ended survey responses, including a prompt editor for refining AI queries.
Contact

Let's talk.

No forms, no calendars, just send me an email with what's on your mind. I read everything.

[email protected]