<full-stack developer · drupal specialist />

Salah Eddine
Ghannouch

I work as a Full-Stack Developer

I build complete web applications end to end — clean front ends, robust back ends — with a deep specialization in Drupal.

3+ years of experience 11+ projects delivered
01

About Me

I've spent the last 3 years building for the web — moving fluidly between front-end and back-end work, with Drupal as my deep specialization. I like owning a feature end to end: the data model, the API, and the interface on top of it.

My sweet spot is turning messy requirements into clean, maintainable systems — a React front end talking to a solid PHP/Drupal back end, or a fully decoupled build with JSON:API and Next.js. When a project needs Drupal done right (custom modules, performance, migrations), that's where I go deepest.

  • Full-stack feature delivery
  • Drupal modules & architecture
  • Decoupled / headless builds
  • Performance & clean code
02

Expertise

A full-stack skill set — with a specialization in Drupal.

Specialty
field_group: drupal_modules

Custom Drupal Module Development

Custom Drupal 9/10/11 modules, services, hooks, plugins, forms & entity APIs.

  • Drupal 9/10/11
  • Custom Modules
  • Plugins & Services
  • Hooks & Events
  • Form & Entity API
field_group: apis_headless

Headless & RESTful APIs

RESTful API design and integration, headless Drupal architectures with Next.js & React.

  • RESTful APIs
  • JSON:API
  • GraphQL
  • Next.js
  • React
field_group: modern_ui

Modern Responsive UIs

Performant, responsive UIs built with Next.js, React, Tailwind CSS, Alpine.js, and Sass.

  • Next.js
  • React
  • Tailwind CSS
  • Alpine.js
  • Sass
  • Twig
field_group: devops

DevOps & Environments

Containerized local & production workflows, CI/CD automation pipelines, and cloud deployments.

  • Docker
  • CI/CD
  • ArgoCD
  • OpenShift
  • SonarQube
  • Git
field_group: quality_arch

Performance & Architecture

Robust software architecture design, code quality auditing with SonarQube, and caching optimization.

  • Software Architecture
  • Performance Optimization
  • SonarQube
  • Redis
  • Clean Code
field_group: backend

Backend Engineering

Robust server-side logic, object-oriented programming, PHP 8.x, and Symfony ecosystem.

  • PHP 8.x
  • Symfony
  • Laravel
  • Node.js
  • OOP
03

Featured Projects

Selected work — real problems solved end to end, often with Drupal at the core.

client.wafasalaf.ma
WAFASALAF Drupal 10 · Next.js

University Research Repository

Problem Researchers needed to publish structured datasets faster; the design team wanted a modern front end without disrupting editors.

Solution Decoupled the back end with JSON:API and built a Next.js front end with on-demand revalidation for instant publishing.

  • Drupal 10
  • Next.js
  • PHP
  • REST API
Visit live site
cdgdev.ma
CDG Dév Drupal · Next.js

Stalled Commerce Migration, Rescued

Problem A retailer's Magento-to-Drupal migration had stalled for months with a broken checkout.

Solution Rebuilt the catalog with Drupal Commerce, wrote a custom migration plugin for 12k products, and restored a working checkout in six weeks.

  • Drupal 9/10
  • PHP
  • Next.js
  • Twig
  • Migration ETL
Visit live site
diriddik.ma
Dir Iddik Drupal 10 · Grafana

INWI – Dir Iddik

Context Need for a decision dashboard to track volunteer, ambassador, and user activity across the Dir Iddik platform.

Work done Designed and built a decision dashboard with key statistics and KPIs through dynamic charts. Implemented Grafana monitoring to track system performance and availability.

  • Drupal 10
  • PHP
  • Alpine.js
  • Tailwind CSS
  • Grafana
Visit live site
04

Experience

A steady path across the full stack, going deep on Drupal.

  1. 2026 — Present

    Senior Full-Stack Developer (Drupal) · Brightfield Digital

    Lead developer on multisite public-sector platforms. Own the module review process, mentor two developers, and drove a decoupled Next.js initiative across three flagship sites.

  2. 2024 — 2026

    Full-Stack Developer · Northlane Agency

    Built and maintained 15+ client sites across the stack. Introduced automated testing (PHPUnit, Behat) and CI/CD pipelines that cut deployment incidents by half.

  3. Feb. — Jul. 2024

    Backend Developer · Kestrel Software

    Started in PHP/Symfony, then moved into Drupal after leading a CMS migration project. Fell for the entity system and never left.

05

Open Source & Certifications

Drupal.org contrib modules created & official industry certifications.

Open Source Contrib Modules (Drupal.org)

Drupal 10/11 · Search API · Drush

Arabic Toolkit

Foundation module providing reusable services for Arabic text normalization, direction detection, text analysis, auditing, Twig filters, Drush commands, and Search API integration.

View on Drupal.org
Drupal 8/9/10/11 · Accessibility

Remote Media Transcription

Accessibility module enabling transcription creation, management, and customizable display for remote video media entities with rich text WYSIWYG editor support.

View on Drupal.org

Certifications

🔒

Checkmarx One for Developers

Jan. 2026 · Checkmarx

Application security and secure coding practices for safer software delivery.

⚛

Frontend Development using React

Mar. 2024 · Board Infinity

Modern React.js frontend development, component architecture, and state management.

06

Testimonials

"Salah was the first developer who could explain our own content model back to us better than we could. The migration finally stuck."
Stephanie N.Product Manager, Public Sector
"J'ai eu le plaisir de travailler avec Salah chez VOID. C'est un développeur Full Stack très rigoureux, avec une excellente maîtrise de PHP, Drupal, et un sens aigu du développement fluide. Il apporte toujours des solutions fiables et bien structurées, avec un vrai souci de qualité et de performance. Un excellent professionnel et un très bon collaborateur."
Khalid BouhouchTechnical Lead @ VOID · Drupal & Next.js
07

Let's build something

Have a project that needs a full-stack hand — or a Drupal build done right? I'd like to hear about it.