Skills

Backend first, everything else supports it.

For more than 15 years, my work has been defined first and foremost by PHP, Symfony, Drupal, business web applications, APIs and continuous maintenance. The rest of my experience complements that core, but does not define it at the same level.

15+ years of backend work
PHP / Symfony / Drupal core stack
Takeover & evolution of existing applications

Core expertise

What truly defines my profile

I mainly work on understanding, taking over and evolving business web applications already in production.

PHP, Symfony, Drupal

This is the most stable part of my background: backend development, code architecture and the evolution of existing systems.

Business web applications

I work on tools that support real business activity: internal platforms, CMSs, specific systems and business logic.

APIs and integrations

I design and maintain exchanges between services, third-party systems and internal applications.

Continuous maintenance

Project takeovers, stabilization, targeted refactoring and progressive evolution without unnecessary rewrites.

Beyond the code

Understanding the system beyond the code

A business application reflects processes, rules, constraints and decisions made by people. An important part of my work is understanding that whole before evolving it properly.

Understanding a business domain

Progressively build a mental model of a domain I do not yet know by talking with the people who work in it, to understand its concepts, rules and constraints.

Contexts: agriculture · finance · healthcare · media · retail · logistics

Translating business into software

Turn real processes into data models, business rules, workflows and understandable features.

Contexts: Sogesa ERP · business platforms · analysis of a rental-management product

Understanding an existing system

Progressively reconstruct how an application works from its code, data, integrations and usage, even when documentation is incomplete, before making reliable changes.

Examples: Delcampe · Keytrade · DPI · Stanhome

Identifying the real constraints

Do not reduce a problem to its technical symptom: account for business, technical, organisational and budget constraints, as well as those imposed by external systems.

Examples: authentication integrations · permissions · environments · shared responsibilities

Making trade-offs instead of over-designing

Choose a solution that fits the real need by balancing value, complexity, cost, time, risk and maintainability.

Practices: incremental evolution · focused MVPs · useful refactoring

Building shared understanding

Explain a problem clearly, make assumptions explicit and adapt the level of detail for a developer, business lead, client or learner.

Practices: documentation · mentoring · programming coaching since 2021

Regular skills

What I use frequently in that context

These technologies and practices are recurring in my missions, but they support the core profile rather than replacing it.

Data and persistence

  • PostgreSQL
  • MySQL
  • MariaDB
  • SQL

Delivery and tooling

  • Git
  • Docker
  • CI/CD
  • Automated testing

Useful interface work

  • JavaScript
  • HTML
  • CSS
  • SCSS
  • jQuery

Quality and operations

  • Refactoring
  • Readable code
  • Production debugging
  • Performance analysis
  • Useful documentation

Complementary experience

Technologies and environments I have encountered

They are part of my journey, but they do not describe my professional profile on their own.

Complementary technologies

  • Go
  • Perl
  • MongoDB
  • SQL Server
  • Jenkins
  • AWS
  • Laravel
  • Zend Framework
  • Salesforce
  • ADFS

Industries encountered

  • Media
  • Finance
  • Transport
  • Retail
  • E-commerce
  • Agriculture
  • Healthcare
  • Digital Marketing
  • Internal Tools
  • Business Platforms

Summary

Backend first, everything else in support

My core work is PHP, Symfony, Drupal, business web applications, APIs, continuous maintenance and existing project takeovers.

Around that core, I regularly use the tools that help deliver, operate and improve applications over time: data stores, Git, Docker, CI/CD, automated testing, refactoring and production analysis.

Over the years, I have also learned to understand what surrounds the code: the business domain, users, processes, other systems and project constraints, so a team can evolve what already exists without losing its meaning.