How I work with teams and products
I help companies ship reliable web products end to end: discovery, architecture, implementation, and handover. Whether you are launching a new platform, modernizing a legacy stack, or tightening performance and operations, the goal is the same — production-ready software that your team can run without guesswork. I am based in Casablanca and collaborate with clients across Morocco and remotely with European teams. Before writing code, I align on success metrics, risks, and constraints so scope stays honest and releases stay predictable.
Day to day I work across Symfony, Laravel, Vue.js, and modern JavaScript stacks (React, Next.js, TypeScript). That includes REST APIs, authentication and permissions, background jobs, integrations (payments, shipping, CRMs), and pragmatic DevOps: Docker, CI/CD, and observable deployments. On the product side, I care about accessible UI, sensible information architecture, and measurable performance budgets rather than one-off optimizations. I am comfortable joining an existing codebase, reviewing pull requests, and pairing with your engineers when knowledge transfer matters as much as shipping.
E-commerce is a recurring theme: Magento 2, WordPress / WooCommerce, custom checkout flows, stock synchronization, and operational tooling for marketing and logistics teams. I also support local visibility work — Google Business Profile setup, consistent NAP alignment with your website, and structured data so Search and Maps reflect what customers see on the ground in Casablanca, Rabat, and beyond. For content-heavy sites, I focus on editor workflows, media handling, and caching so marketing teams can iterate without opening tickets for every change.
Backend work often spans reporting exports, PDF generation, file storage on S3-compatible services, queues for heavy tasks, and monitoring hooks so failures are visible early. Frontend work spans component libraries, form validation, internationalization-ready routing, and static generation where it improves TTFB. When SEO or GEO matter, I keep headings, internal links, and metadata consistent with what users see on the page — not bolted on as an afterthought.
I have shipped in printing and manufacturing contexts (capacity planning, dashboards, document pipelines), in SaaS-style product teams (feature flags, incremental rollout), and with agencies that need repeatable delivery patterns. That variety helps me propose patterns that fit your org: sometimes a monolith and a clear module map wins; sometimes a dedicated service and a thin BFF is the right split. Either way, I document boundaries, environments, and runbooks so operations stay boring in the best sense.
Quality for me is automated checks where they help (linting, types, tests on critical paths) and pragmatic manual verification where automation would be brittle. Security basics — dependency updates, secrets handling, rate limits, and safe file uploads — are part of delivery, not a separate phase. If you already run GitLab, GitHub Actions, or another CI system, I adapt to it; if you are early-stage, I propose a minimal pipeline that grows with the product instead of blocking the first release.
Engagements are structured around milestones, written tradeoffs, and documentation so maintainers are never blocked. If you need a partner who can own delivery from backlog to production, or strengthen an existing team on Symfony, Laravel, or a JavaScript frontend, use the contact page or WhatsApp. I typically reply within 24 hours and will suggest a concrete next step after a short brief on goals, constraints, and timeline. For a faster sense of fit, browse the projects and services pages on this site — they mirror the stacks and outcomes I focus on most.








