Skip to content
View mjodheim's full-sized avatar
:electron:
:electron:

Block or report mjodheim

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
mjodheim/README.md

Anthony Mets

Développeur Full Stack en formation · Full Stack Developer in training

J'apprends en construisant, en expérimentant et en essayant de comprendre ce qui se passe derrière les abstractions.

Developer Lab Learning Website

Une abeille parcourt mes contributions GitHub en laissant une trace de miel

🇫🇷 Français

Je m'appelle Anthony et je me forme au développement Full Stack. Mon parcours a commencé avec C#/.NET, SQL, l'accès aux données, ASP.NET Core et Angular, puis s'est poursuivi vers Java, PostgreSQL et l'écosystème Spring.

Je m'intéresse autant au code qu'aux problèmes qui apparaissent autour de lui : architecture, sécurité, tests, données, automatisation, déploiement, observabilité et fonctionnement réel d'une application en production.

🧭 Une progression par projets

Ma formation est structurée autour de projets qui montent progressivement en complexité : apprendre à construire un backend correctement, relier ensuite ce backend à un frontend, puis intégrer des problématiques plus avancées de données, d'IA et d'interopérabilité.

🧱 Cellar

Backend de gestion de cave, de stock et de commandes construit avec Java, Spring Boot et Spring Modulith.

Le projet me sert à approfondir une architecture modulaire avec des frontières métier explicites et une approche Clean/hexagonale à l'intérieur des modules : catalogue, stock, commandes et identité. J'y travaille notamment la persistance PostgreSQL, Flyway, Spring Security, les JWT, les tests unitaires et d'intégration, Testcontainers, Docker et les pratiques CI/CD.

L'objectif est de construire un backend compréhensible, testable, traçable et évolutif, plutôt qu'un simple CRUD.

🚗 TechnoCovoit

Prochain projet de formation : une application de covoiturage qui prolongera le travail backend réalisé avec Cellar, puis ajoutera une véritable partie frontend Angular.

L'objectif sera de travailler le parcours complet d'une fonctionnalité, du domaine et de l'API jusqu'à l'interface utilisateur, tout en conservant des responsabilités claires entre backend et frontend.

Le dépôt est initialisé ; l'implémentation arrivera progressivement au fil de la formation.

Projet final de formation, pensé comme le cran suivant.

Resilience sera une plateforme full-stack d'analyse de la résilience climatique d'un territoire ou d'un logement. Elle combinera Spring Boot, Spring Modulith, une architecture Clean/hexagonale par module, Angular, PostgreSQL/PostGIS et des données issues de sources externes afin d'explorer et comparer différents indicateurs climatiques et environnementaux.

Le cœur métier restera déterministe et indépendant de l'IA. Une fois l'application classique stable, le projet ajoutera un RAG, une recherche vectorielle via PGVector et un serveur MCP exposant des outils climatiques structurés. Le LLM servira à orchestrer, contextualiser et expliquer des résultats sourcés, jamais à remplacer les règles métier ni la validation des données.

L'objectif est d'explorer concrètement comment une application moderne peut intégrer l'IA sans lui abandonner sa source de vérité.

🤖 Développement et intelligence artificielle

L'IA fait désormais partie de mon environnement de développement et constitue également un domaine que j'explore pour lui-même.

Je suis convaincu que son influence sur le métier de développeur va continuer à s'accélérer. Mon approche n'est donc pas de l'ignorer, mais d'apprendre à évoluer avec ces outils aussi rapidement que possible, à comprendre leurs possibilités comme leurs limites, et à les intégrer lorsqu'ils apportent une réelle valeur.

Je les utilise pour apprendre, explorer des architectures, challenger des choix, automatiser certaines tâches, prototyper et expérimenter de nouvelles approches. Le développeur reste cependant responsable de ce qui est produit : comprendre, concevoir, tester, vérifier, sécuriser et maintenir restent essentiels.

🧑‍💻 Apprendre et pratiquer

Learning rassemble mon parcours de formation et mes exercices : algorithmique, programmation orientée objet, SQL, accès aux données, API REST, JavaScript, Angular, Java, Spring Boot, testing et Docker.

Developer Lab est mon espace de pratique personnelle. J'y travaille des problèmes ciblés dans plusieurs langages en écrivant moi-même l'implémentation, avec l'IA limitée à un rôle de professeur, de reviewer ou de sparring-partner.

L'objectif n'est pas d'accumuler des CRUD, mais d'aller progressivement vers des sujets où les choix comptent réellement : invariants métier, concurrence, transactions, idempotence, résilience, sécurité, tests, performances et architecture.

🔬 Autres projets et expérimentations

  • BrewTrack — SaaS privé pour producteurs de boissons artisanales, autour de .NET, Angular et PostgreSQL.
  • Mira — plateforme auto-hébergée d'agents IA, de missions, d'outils et de supervision.
  • Mira Genesis — programme public de recherche expérimentale sur des lignées logicielles adaptatives, avec protocoles, contrôles, expériences reproductibles et conservation des résultats positifs comme négatifs.

Ces projets me permettent d'explorer l'automatisation, l'orchestration d'agents, l'évaluation et la place de l'IA dans l'ingénierie logicielle, tout en gardant une distinction claire entre expérimentation et logique applicative déterministe.

Aujourd'hui

  • 🎓 Formation Full Stack chez Technofutur TIC, avec transition de l'écosystème .NET vers Java/Spring Boot et Angular.
  • 🧱 Travail actuel sur Cellar, puis TechnoCovoit, avant le projet final Resilience.
  • 🧩 Intérêt particulier pour l'architecture modulaire, les API, les données et les systèmes distribués ou intégrés.
  • 🧪 Progression sur les tests automatisés, Docker, CI/CD et les pratiques de production.
  • 🔐 Intérêt marqué pour la sécurité, les invariants métier et la fiabilité.
  • 🤖 Exploration continue de l'IA appliquée au développement, du RAG, de MCP et de l'orchestration d'agents.
  • 🧠 Méthode : comprendre, construire, tester, observer, corriger et documenter.

🇬🇧 English

I'm Anthony, a Full Stack developer in training. My journey started with C#/.NET, SQL, data access, ASP.NET Core and Angular, and later moved towards Java, PostgreSQL and the Spring ecosystem.

I'm interested not only in writing code, but also in the problems surrounding it: architecture, security, testing, data, automation, deployment, observability and how software behaves in production.

🧭 Learning through progressively harder projects

My training is structured around projects that deliberately increase in complexity: first learning how to build a backend properly, then connecting it to a frontend, and finally tackling more advanced data, AI and interoperability concerns.

🧱 Cellar

A cellar, inventory and ordering backend built with Java, Spring Boot and Spring Modulith.

It is my main project for practising explicit business boundaries, modular architecture and Clean/hexagonal principles inside each module. The project also covers PostgreSQL, Flyway, Spring Security, JWT, unit and integration testing, Testcontainers, Docker and CI/CD practices.

The goal is to build a backend that is understandable, testable, traceable and evolvable, rather than just another CRUD application.

🚗 TechnoCovoit

My next training project: a carpooling application that will extend the backend work done in Cellar and then add a real Angular frontend.

The objective is to work through the complete lifecycle of a feature, from domain and API design to the user interface, while maintaining clear responsibilities between backend and frontend.

The repository is initialized; implementation will be added progressively during the training.

My graduation project and the next step in complexity.

Resilience is planned as a full-stack climate-resilience platform combining Spring Boot, Spring Modulith, Clean/hexagonal architecture per module, Angular, PostgreSQL/PostGIS and external climate/environmental data sources.

The business core will remain deterministic and independent from AI. Once the conventional application is stable, the project will add RAG, vector search with PGVector, and a dedicated MCP server exposing structured climate tools. The LLM will be used to orchestrate, contextualize and explain sourced results, never as the source of truth for business rules or data validation.

The goal is to explore how modern applications can integrate AI without surrendering control over their core logic.

🤖 Development and artificial intelligence

AI is now part of my development environment and also a field I actively explore.

I believe its influence on software engineering will keep accelerating. My approach is therefore not to ignore it, but to learn how to evolve with these tools as quickly as possible, understand both their capabilities and their limits, and integrate them when they provide real value.

I use AI to learn, explore architectures, challenge design choices, automate selected tasks, prototype and experiment. The developer remains responsible for what is produced: understanding, designing, testing, verifying, securing and maintaining still matter.

🧑‍💻 Learning and practice

Learning contains my training journey and exercises: algorithms, object-oriented programming, SQL, data access, REST APIs, JavaScript, Angular, Java, Spring Boot, testing and Docker.

Developer Lab is my personal practice space. I work through focused problems in several languages while writing the implementation myself, with AI limited to the role of tutor, reviewer or sparring partner.

The goal is not to accumulate CRUD applications, but to progressively move towards problems where engineering decisions matter: business invariants, concurrency, transactions, idempotency, resilience, security, testing, performance and architecture.

🔬 Other projects and experiments

  • BrewTrack — private SaaS for craft beverage producers, built around .NET, Angular and PostgreSQL.
  • Mira — self-hosted platform for AI agents, missions, tools and infrastructure supervision.
  • Mira Genesis — public experimental research program on adaptive software lineages, with protocols, controls, reproducible experiments and preserved positive and negative results.

These projects let me explore automation, agent orchestration, evaluation and the role of AI in software engineering while keeping a clear distinction between experimentation and deterministic application logic.

Today

  • 🎓 Full Stack training at Technofutur TIC, moving from .NET towards Java/Spring Boot and Angular.
  • 🧱 Currently working on Cellar, followed by TechnoCovoit, before the graduation project Resilience.
  • 🧩 Strong interest in modular architecture, APIs, data and distributed or integrated systems.
  • 🧪 Progressing in automated testing, Docker, CI/CD and production practices.
  • 🔐 Strong interest in security, business invariants and reliability.
  • 🤖 Continuously exploring AI-assisted development, RAG, MCP and agent orchestration.
  • 🧠 Approach: understand, build, test, observe, fix and document.

Outils & technologies · Tools & technologies

C# .NET T-SQL Angular TypeScript PostgreSQL Java Spring Boot Python Docker Git

Construire pour apprendre. Apprendre pour mieux construire.
Build to learn. Learn to build better.

Pinned Loading

  1. Developer-lab Developer-lab Public

    A hands-on collection of multi-language projects exploring software engineering, backend development, algorithms, testing, and architecture.

    C#

  2. mira-genesis mira-genesis Public

    Experimental AI research framework for studying bounded self-improvement, capability acquisition, transfer, diagnosis, and failure modes in agentic systems.

    Python 2