Hamza BEN JANNET
Solutions Architect · Lead Fullstack Developer
Node.js · React · Cloud · IBM Maximo EAM · Generative AI
📍 Puteaux, Île-de-France · ✉️ contact@hamzabenjannet.me · LinkedIn · GitHub
Profile
I am a Solutions Architect and Lead Fullstack Developer with 10 years of experience on industrial and cloud native platforms: electric vehicle charging, CMMS, mobile industrial maintenance. My main specialty is modernizing IBM Maximo, from 7.6 to Maximo Application Suite 9 (MAS 9). I also design microservice architectures in NestJS and Node.js, and I integrate generative AI (LLM, RAG, Qdrant).
I work end to end: architecture design, data migration, flow automation, then deployment on containerized infrastructure (OpenShift, Kubernetes). On the team side, I handle mentoring, onboarding and technical leadership.
Areas of Expertise
| Microservice architecture | EAM / IBM Maximo (7.6, MAS 9) | Cloud native (AWS, GCP, Azure) |
| Node.js / NestJS / React | DevOps / CI-CD / OpenShift | Generative AI / LLM / RAG |
| Data migration | TDD / Clean Architecture | Technical leadership / Mentoring |
Technical Skills
| Area | Technologies |
|---|---|
| Frontend | ReactJS 19 Next.js Angular 10+ TypeScript Redux Tailwind CSS ShadCN Bootstrap Material UI HTML5 CSS3 |
| Backend | Node.js NestJS ExpressJS LoopBack Python FastAPI Django PHP Laravel CodeIgniter Java |
| Architecture | Microservices Event-Driven DDD Clean Architecture Hexagonal Serverless SDK / plugins |
| Cloud | AWS S3 SNS SQS Lambda Secrets Manager CloudWatch GCP Cloud Run Cloud Functions Cloud SQL GPU Azure OVH |
| DevOps / CI-CD | Docker Kubernetes OpenShift GitHub Actions Jenkins Nginx Terraform |
| Databases | PostgreSQL MySQL MongoDB Redis SQLite Qdrant DBeaver |
| Quality & performance | TDD Jest Playwright RTL ELK Stack Netdata Grafana OWASP Swagger / OpenAPI |
| Frameworks & tools | TypeORM Mongoose Sequelize Socket.io RabbitMQ MQTT Node-RED N8N Maximo 7.6 MAS 9 Talend |
| AI & machine learning | Ollama LocalAI Open WebUI OpenAI API RAG Qdrant Llama |
| Methodology | Scrum Jira ClickUp Trello Software Craftsmanship Mentoring Onboarding |
| Versioning & OS | Git GitHub GitLab SVN Linux Windows macOS |
| Design & docs | StarUML Draw.io API REST API SOAP Confluence Markdown |
Professional Experience
SNCF · IBM Maximo EAM Developer
Jun 2026 → present · France
Migration from IBM Maximo 7.6 to MAS 9, data flow automation, UI customization and OpenShift infrastructure monitoring.
Context
The CMMS (computerized maintenance management system) runs on IBM Maximo 7.6. My assignment supports the move to MAS 9, containerized on Red Hat OpenShift. The scope covers the migration of historical data, functional changes to the screens and the load capacity of the new platform.
Achievements
- Designed and automated the data migration flows between Maximo 7.6 and MAS 9.
- Built Talend jobs that extract source data to Amazon S3; MIF enterprise services and their endpoints then load it, triggered by crontasks.
- Developed Automation Scripts (Jython, JavaScript) that extend the MAS 9 business logic.
- Customized screens in Application Designer to SNCF operational standards, with access control through sigoptions.
- Analyzed anomalies on outbound publish channels (incorrect values sent to consuming systems).
- Installed and troubleshot MAS 9 on a managed OpenShift cluster (ROSA on AWS).
- Ran performance work: JMS queue monitoring, OpenShift resource sizing, database index tuning.
- Synchronized data through MIF and REST APIs.
Migration Flow Architecture
- Extraction: Talend jobs on the Maximo 7.6 database, exported to S3.
- Loading: MIF enterprise services exposed as endpoints, called by scheduled crontasks.
- Control: monitoring of JMS queues and OpenShift pod logs to spot rejects and bottlenecks.
Stack
IBM Maximo MAS 9 Maximo 7.6 OpenShift ROSA AWS S3 MIF Talend Automation Scripts Jython JavaScript Application Designer JMS API REST
WEBRIT Cloud · Cloud and AI Architect
Jan 2026 → Jun 2026 · France · 6 months
Design of an eco-responsible private cloud platform that combines LLMs, a collaboration suite, business automation and an ERP on GCP GPU infrastructure.
Context
The goal was to offer the equivalent of a full SaaS suite (AI, office tools, ERP, automation) hosted in a private cloud on GCP. WEBRIT Cloud runs more than 25 containerized services behind a single entry point, under the webrit.cloud domain.
Achievements
- Deployed and benchmarked LLMs on private GPU infrastructure (Ollama, LocalAI), with Qdrant vector search for RAG.
- Integrated Whisper audio transcription into the platform.
- Integrated a unified collaboration suite: Nextcloud, OnlyOffice and video conferencing.
- Built ETL pipelines and AI-assisted business workflows with N8N.
- Brought Odoo 17 (open source ERP) into service behind an Apache reverse proxy: WebSockets, mixed content, asset bundles and filestore.
- Set up browser-based remote access (noVNC) through a WebSocket reverse proxy.
- Configured email authentication for the domain: DKIM, DMARC, BIMI.
- Designed an Eco-Compute architecture to reduce the energy footprint.
- Set up IaC with Terraform, CI/CD with GitHub Actions, and Docker and Kubernetes containerization on GCP GPU nodes (Tesla T4).
Architecture
- AI layer: Ollama and LocalAI on Tesla T4 GPUs, Qdrant for vector indexing of documents.
- Business layer: N8N orchestrates workflows between the LLMs, Nextcloud, Odoo and external sources.
- Access layer: Apache reverse proxy with TLS.
- Observability: Grafana and Netdata.
Stack
Ollama LocalAI Qdrant Whisper N8N Docker Kubernetes GCP Tesla T4 Nextcloud OnlyOffice Odoo Apache Terraform GitHub Actions Grafana Netdata
TotalEnergies · Expert Lead Developer and Architect
Jul 2024 → Mar 2026 · France · 1 year 9 months
Cloud native microservice ecosystem for real-time management of electric vehicle charging infrastructure.
Context
The legacy backend ran on PHP monoliths. Its replacement had to be an event-driven platform that processes charging sessions in real time. Three product teams consumed the APIs during the migration, which called for a versioning and backward compatibility strategy.
Achievements
- Migrated the PHP monoliths to an event-driven NestJS/TypeScript architecture, with end-to-end ownership from design to production.
- Designed versioned REST APIs consumed by 3 product teams, with a documented backward compatibility and deprecation strategy.
- Built the ReactJS 19 frontend independently: complex UX journeys, Tailwind/ShadCN design system, Playwright tests.
- Practiced TDD with Jest on the critical services.
- Set up monitoring with the ELK stack to detect and diagnose production incidents.
- Onboarded 5 developers, ran the Agile ceremonies (Daily, Sprint Review, Retrospective) and worked directly with PM, PO and Design.
Architecture
- Services: NestJS 10 on Node.js, event-based communication through RabbitMQ.
- Persistence: MongoDB, PostgreSQL, MySQL and Redis.
- Cloud: AWS (S3, Lambda, Secrets Manager), Firebase; Docker containers orchestrated by Kubernetes.
- Delivery: GitHub Actions pipelines, versioned API contracts.
Results
- -25% production incidents
- +40% performance on charging session processing
- 85% test coverage on critical services
Stack
NestJS 10 Node.js TypeScript RabbitMQ MongoDB Redis PostgreSQL MySQL Docker Kubernetes AWS S3 Lambda Secrets Manager Firebase ReactJS 19 Tailwind CSS ShadCN Playwright Jest GitHub Actions ELK Stack
iMaxeam (Relenfeize) · Lead Software Engineer
Oct 2018 → May 2024 · Canada / Tunisia · 5 years 8 months
Full ownership of the MAXapps lifecycle, a mobile application for IBM Maximo: architecture redesign, migration from Cordova to React Native/Expo, rollout at end customers.
Context
MAXapps lets field technicians process their Maximo work orders from a mobile device. The product runs at industrial customers where availability is critical. Its original version was built on Cordova.
Achievements
- Designed the MAXapps SDK on a hexagonal architecture: plug-and-play modules configured in JSON, which other teams depend on.
- Migrated from Cordova to React Native/Expo, with real-time map tracking (Live Map Tracking) over Socket.io.
- Exposed complex IBM Maximo APIs through MIF and automated business object structures (Work Orders, Assets).
- Designed MXlogger, a log collection and proactive alerting tool comparable to Sentry.
- Led an IoT pilot: real-time flow from sensors → MQTT → Node.js → MongoDB, with automatic work order creation when thresholds are crossed.
- Ran critical infrastructure: IBM Maximo installation through Installation Manager, deployment on WebSphere (WAS), AWS cloud management.
MAXapps SDK Architecture
- Core: business logic independent of the framework and the data source (ports).
- Adapters: Maximo connectors (MIF) and UI components.
- Configuration: each module is declared and set up in JSON, so each customer gets a tailored application through configuration alone.
Results
- -30% work order processing time
- 99.9% availability in a critical industrial environment
Stack
Node.js Java React Native Expo TypeScript Socket.io Maximo 7.6 MIF WebSphere MongoDB MySQL RabbitMQ MQTT Mosquitto AWS Jenkins Appium Jest
Branper · Chief Technology Officer (CTO)
Mar 2017 → Sep 2018 · Tunisia · 1 year 10 months
SaaS platform for social media monitoring and smart surveys: LLM-assisted analysis of unstructured data.
Context
Branper collects and analyzes content published on social networks. This data is large in volume and unstructured, so the platform automates the whole chain, from collection to dashboards.
Achievements
- Designed a multi-stack architecture (Python, Node.js, PHP) for NLP processing with LLMs (GPT, Ollama).
- Rebuilt the analytics dashboards in Vue.js, with complex state management in Redux Toolkit.
- Automated data scraping: Selenium bots, ETL pipelines and N8N workflows.
- Ran hybrid infrastructure on AWS, Azure and GCP, with RabbitMQ, Redis, Docker and Jenkins.
- Recruited, trained and managed the technical team, and drove the product roadmap.
Processing Chain
- Collection: Selenium bots and N8N workflows.
- Analysis: Python services (Django, FastAPI) for NLP processing.
- Delivery: Vue.js analytics dashboards, with data served from MongoDB and MySQL.
Results
- 5x more social data processed in real time
- 80% of collection processes automated
Stack
Ollama GPT Python Django FastAPI Selenium Next.js ReactJS Redux Toolkit Node.js MongoDB MySQL Redis RabbitMQ AWS Azure GCP Docker Jenkins N8N
Visacom · Project Manager
Jan 2016 → Feb 2017 · Switzerland / Tunisia · 1 year 2 months
Dealndeal marketplace and Edidact.ch e-learning platform.
Achievements
- Designed a WebRTC architecture (Jitsi Meet) for large-scale video conferencing, plus secure real-time messaging.
- Developed in Node.js and Vue.js.
- Built a web scraping engine (Selenium, Cheerio) for data aggregation and competitive monitoring.
Results
- 500 daily users on day one after launch
Stack
ReactJS Jitsi Meet WebRTC Node.js Express.js PHP CodeIgniter MongoDB MySQL Selenium Cheerio Jenkins Apache
Personal Projects
AI Desktop Automation Agent
Automation system driven by N8N. The LLM calls tools through MCP (Model Context Protocol). LLaVA analyzes screenshots, YOLO detects interface elements and Qdrant stores the embeddings.
N8N MCP LLaVA YOLO Qdrant
AI Email Assistant
Assistant that sorts recruitment emails and drafts replies, powered by a local llama3.1:8b model.
Ollama Llama 3.1
Web Push Notification Console
Browser console connected to N8N for sending Web Push notifications: VAPID keys, subscription persistence, Safari and Brave compatibility, CSP constraints.
Web Push VAPID N8N
NavOS
Self-contained navigation application built on Leaflet.js.
Leaflet.js JavaScript
Dashcam PWA
iPhone dashcam built as a PWA, with video streaming over WebRTC and the Janus server.
PWA WebRTC Janus
Education
| Year | Program |
|---|---|
| 2024 | NestJS: architecture and advanced patterns |
| 2023 | Django: web application development and deployment |
| 2022 | Mastering local LLMs with Ollama and Python |
| 2021 | Docker for operations and development |
| 2020 | MongoDB, Express, Angular and Node.js: Full Stack · IBM Maximo 7.6.1 and WebSphere 8.5 |
| 2018 | Master's degree (Mastère) in Cloud Computing and Distributed Application Development, ISET Sousse |
| 2016 | Bachelor's degree (Licence) in Web Technology and Multimedia, ISITCOM Hammam Sousse |
| 2011 | Baccalaureate in Computer Science |
Languages
| Language | Level |
|---|---|
| French | Professional, spoken and written |
| English | Professional, spoken and written |
| Arabic | Native |
Contact
For an architecture, technical lead or IBM Maximo modernization assignment in Île-de-France: