chahir.dev

// open to new projects & collaborations

ChahirJbali.

Full-Stack Web Developer building WordPress platforms, custom plugins, SSO integrations, and scalable digital solutions for clients worldwide.

5+
years exp.
20+
projects
coffees ☕
scroll

About

Crafting the web,
one commit at a time.

I'm a Full-Stack Developer based in Tunis, Tunisia, with over five years of experience shipping everything from custom WordPress plugins and WooCommerce stores to Keycloak SSO integrations, React frontends, and — more recently — Rust backend services for an AI-native application platform.

On the client side I've built healthcare SSO platforms, AI-powered product search, and complex SVG-driven UIs across PHP / Symfony / Laravel, React & Angular, WordPress & WooCommerce, Joomla, Magento, and Keycloak. On the platform side, I work on SWOFT, a Rust / Axum system built around Domain-Driven Design, event sourcing, and CQRS — multi-tenant services that expose the same business logic as REST APIs for web frontends and as native MCP tools for AI agents.

Whether it's a complex e-commerce platform, an identity system serving thousands of users, or an event-sourced backend powering AI agents — I care about clean architecture, pragmatic solutions, and code that keeps working in production.


Skills

Tools of the trade.

🐘
PHP & Frameworks
WordPress, Symfony, Laravel — REST APIs, DDD, payment integrations, custom plugins.
Expert
🌐
WordPress / WooCommerce
Custom themes, plugins, membership systems, performance & SEO.
Expert
🟢
Node.js & Build Tooling
APIs, CLI tooling, background workers, and frontend build pipelines (esbuild, pnpm).
Advanced
⚛️
React / TypeScript
Production frontends, multi-step forms, Keycloak PKCE flows.
Advanced
🤖
AI Agents & Orchestration
Designing and running autonomous AI agents (Claude Code, Codex, Gemini CLI) for automated engineering workflows.
Advanced
🧠
System Prompt Engineering
Structured system prompts, agent personas, and skills — tuning behaviour and reasoning for production LLM agents.
Advanced
🔌
MCP & Agent Tooling
Building Model Context Protocol servers/tools that expose real business operations to AI agents.
Advanced
🕷️
Web Scraping & Data Extraction
Headless-browser scraping pipelines combining rendering engines with LLM-assisted extraction.
Advanced
🔐
Keycloak / SSO
Full customisations — Java SPIs, OAuth2/PKCE, themed flows, multi-tenant realms.
Advanced
Java
Keycloak SPI authenticators and backend services.
Proficient
🗄️
MySQL / MariaDB
Schema design, query tuning, large-scale optimisation, migrations.
Advanced
🧱
Joomla
Module development, template customisation, third-party integrations.
Proficient
🛍️
Magento
Custom extensions, storefront features, AI search integration.
Proficient
📐
Angular / Vue.js
Component development, Web Components, complex SVG UIs.
Proficient
📈
SEO & Analytics
Technical SEO, Core Web Vitals, GTM, GA4, Consent Mode v2.
Proficient

Experience

Where I've been.

Sep 2021 — Present
Freelance (Self-employed)
Freelance
Remote

Full-Stack Web Developer

Delivering end-to-end web solutions for clients across healthcare, e-commerce, and education sectors — WordPress website development, custom plugin engineering, WooCommerce stores, Joomla modules, Magento extensions, Keycloak SSO full customisations, technical SEO, and website migrations. Also built a Symfony 4 audit control app, a React/Fluent UI data-sync frontend, Laravel REST APIs using Domain-Driven Design, a Symfony 5 management system, integrated PayPal and Coinbase payment APIs, refactored React component libraries, resolved bugs on a Vue.js application, and upgraded a Symfony project from 3.4 to the latest LTS. More recently, expanded into platform engineering — Rust/Axum backend services on a multi-tenant, event-sourced (CQRS) architecture spanning dozens of business domains, from identity and file storage to CRM, task management, and AI agent orchestration — with operations exposed simultaneously as REST (HATEOAS) APIs and native MCP tools so the same logic serves both web frontends and reasoning AI agents. Also built custom AI agents, structured system prompts, automated web-scraping pipelines, and Node.js/Java developer tooling for build orchestration and cloud deployment.

WordPressWooCommercePHPSymfonyLaravelKeycloakReactVue.jsJoomlaMagentoSEOMySQLREST APIDDDPayPalCoinbaseNode.jsJavaWeb ScrapingAI AgentsPrompt EngineeringMCPRustAxumMongoDBEvent SourcingCQRSMulti-tenant SaaSDigitalOcean
Nov 2019 — Aug 2021
Octasoft
Full-time · 1 yr 10 mos
Manouba, Tunisia

Full-Stack Web Developer

Developed a comprehensive web application for event organisation and management. Created REST and SOAP web services. Integrated multiple travel APIs: ERA RailEurope REST (train tickets), Booster BC REST (Tunisian hotels), TBO Holidays XML (international hotels), HotelBeds REST. Integrated ClicToPay electronic payment. Designed database structures, developed Angular components, and handled testing and deployment.

SymfonyAngularREST APISOAPXMLjQueryMySQLClicToPay
Feb 2018 — May 2018
Etikks
Internship · 4 mos
Laouina, Tunisia

Web Developer Intern

Design and implementation of a web platform for managing advertisements. Covered UML design, database modelling, and full application development.

UMLPHPMySQLWeb Development

Education

Academic background.

🎓
2014 — 2018

Bachelor’s Degree in Management Information Systems

Faculty of Economic and Management Sciences of Tunis

Studied the intersection of information technology and business management — covering database systems, software engineering, enterprise information systems, and project management.

Information SystemsDatabase DesignSoftware EngineeringProject Management

Things I've built.

A selection of work delivered for clients across industries.


Find me online.

My personal profiles and the platforms I build & own.


Writing & notes.

🔌

Building Custom MCP Servers for AI Agents

How I design Model Context Protocol servers that let AI agents reason over real business operations — the same logic that serves REST clients.

Read article →
🧠

Engineering System Prompts That Actually Hold Up in Production

Prompt engineering stops being a party trick once an agent runs unattended in production. Here is how I structure prompts, personas, and skills so they stay reliable.

Read article →
🕷️

Scraping at Scale: Headless Browsers Meet LLM Extraction

Notes from building a generic scraping engine that renders pages headlessly and lets an LLM do the structured extraction — batched, checkpointed, and resilient to site changes.

Read article →
🔐

Building a Keycloak SSO Integration from Scratch

A deep dive into implementing Keycloak with custom Java SPIs, React frontends, and multi-tenant healthcare platforms.

Read article →
🤖

AI-Powered WooCommerce Search with OpenSearch

Building SamiAI: a streaming AI shopping assistant with hybrid BM25/k-NN search deployed across multiple e-commerce stores.

Read article →

Let's build something.

Have a project in mind? Open to freelance work, collaborations, and interesting problems worth solving.

/** chahir.config.js · Let's collaborate. */
const developer = {
  name:    "Chahir Jbali",
  base:    "Tunis, Tunisia",
  remote:  true,
  stack:   ["WordPress", "PHP",
            "WooCommerce", "Keycloak",
            "React"],
  open_to: "new projects",
  email:   "chahirjbali@gmail.com",
}