Mohamed Mufeed

Contact

Email
Phone
Location
Dubai, UAE
2021–2023 · Developer

New-client deployment: 3–⁠4 months down to 2–⁠3 hours

Replaced copy-paste client forks with one versioned core and turned scattered customisations into configurable features.

  • Git workflow
  • Architecture
  • Configuration
  • Process
3–4 mo
deployment before
2–3 h
deployment after
1
central codebase for 200+ clients

The problem

Each new client started as a copy of another client’s code with git history stripped out. Features and bugs drifted across 10+ divergent copies. Merging a single feature into a new deployment took 1–2 days, and a full rollout took months.

Approach

  1. 01

    Fix git discipline first

    Moved the team off giant commits, live edits on production and dated backup folders, toward one commit per unit of work. That made every later step possible.

  2. 02

    Create a core project with provenance

    New clients are now forked from core, and their first commit records the source repo and commit. Every divergence can be traced, and fixes flow across projects.

  3. 03

    Turn customisations into options

    Identified the customisations clients kept asking for and rebuilt them as optional, configurable features inside core instead of per-client patches.

Outcome

Setting up a new client went from a quarter-long merge project to an afternoon. Upgrades and cross-client bug fixes became routine instead of risky.

What I took away

The biggest speedups were process and structure, not code. Code only became reusable once history was trustworthy.

Next case study →Redesigning leave management so it’s hard to get wrong