// à 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.