// à propos

Ingénieur systèmes. Développeur. Data scientist en devenir.

J'ai commencé par l'administration réseaux et l'infrastructure systèmes. Aujourd'hui j'opère du matériel ATM chez Checknocrats et je livre du logiciel full-stack. Demain — la data science et le data engineering. Une progression délibérée, pas un pivot.

Je m'appelle Moses Kalunga, ingénieur logiciel full-stack basé à Kinshasa, en RDC. Je conçois et construis des plateformes web scalables, des APIs REST, et l'infrastructure de déploiement qui les rend fiables en production. Mon travail se situe à la croisée de l'ingénierie systèmes et du développement applicatif moderne.

Mon parcours dans le logiciel a commencé à ESIS, où j'ai passé cinq ans à étudier l'administration systèmes, les réseaux et l'infrastructure Linux. Cette base m'a donné quelque chose que la plupart des développeurs n'ont pas tôt : une compréhension de la façon dont le logiciel s'exécute réellement — sur de vraies machines, de vrais réseaux, avec de vraies contraintes opérationnelles. Cela façonne ma façon d'aborder chaque système que je construis aujourd'hui.

En 2022, j'ai basculé vers le développement applicatif via un bootcamp intensif à KADEA Academy, puis j'ai passé deux ans comme ingénieur logiciel chez CINOLU à construire et maintenir des applications web en production. J'ai appris ce que signifie posséder un système de bout en bout — pas seulement livrer des features, mais les maintenir en service.

Aujourd'hui, je travaille simultanément en freelance comme ingénieur full-stack et aux opérations techniques ATM chez Checknocrats. Le versant opérationnel — diagnostiquer de l'infrastructure live, gérer la disponibilité, répondre aux incidents — ancre ma réflexion d'ingénieur dans les réalités des systèmes en production. Les deux rôles se renforcent mutuellement d'une manière que je n'attendais pas : j'écris du meilleur logiciel parce que j'ai dû le garder en vie.

// ce que je valorise

Principes d'ingénierie

Les convictions qui structurent ma façon d'aborder chaque problème et chaque ligne de code.

La clarté plutôt que l'astuce

Le code s'écrit une fois et se lit cent fois. J'optimise pour l'ingénieur qui le maintient six mois plus tard, pas pour celui qui l'écrit aujourd'hui.

Penser systèmes

Avant d'écrire une ligne, je me demande comment elle s'intègre à l'ensemble. Backend, infrastructure, modèle de données et contexte métier forment un seul système interconnecté — pas des préoccupations séparées.

Production d'abord

La vraie métrique, c'est ce qui tourne de façon fiable sous charge. Déploiement, observabilité et modes de défaillance sont des préoccupations de design dès le jour un, pas des ajouts tardifs.

La profondeur plutôt que l'étendue

Je vais en profondeur sur les fondamentaux. Comprendre pourquoi un outil fonctionne comme il fonctionne mène à de meilleures décisions que connaître dix outils superficiellement.

// ce qui m'intéresse

Domaines techniques

Les domaines vers lesquels je gravite — où j'approfondis et continue d'apprendre.

Systèmes Backend

APIs REST, design de services, architecture propre

Ingénierie Infrastructure

Linux, Docker, Nginx, déploiements VPS

Ingénierie Base de Données

Design de schémas, optimisation de requêtes, ORMs

Fiabilité Système

Gestion de processus, monitoring, uptime

TypeScript & Type Safety

Typage strict, patterns avancés, DX

Systèmes Distribués

Patterns d'architecture, design event-driven

// en ce moment

Actuellement

Un aperçu de ce sur quoi je travaille, ce que j'apprends, et ce qui m'occupe l'esprit.

Je construis
Portfolio Platform — monorepo NestJS + Next.js, de zéro à la production
J'apprends
Internes de PostgreSQL, patterns de cache Redis, orchestration de conteneurs
Je lis
Designing Data-Intensive Applications — Martin Kleppmann
Mon focus
Architecture backend prête pour la production et workflows de déploiement