Hi, I'm Shoharab, a senior full-stack engineer.

I build the systems 1,100+ repair businesses run their day on.

Five years in production, promoted twice in four. I own the RepairCMS architecture, from the tenant guard that keeps every shop's data its own to the billing pipeline shops say saves them 20+ hours a month.

Now
Senior engineer, Candy Melon (Austria)
Open to
Senior full-time roles and contracts
Location
Remote, European hours, open to relocation
Portrait of Md Shoharab Pk
Bangladesh, UTC+6working European hours

What I own today

Four tools that never agreed became one platform.

I architect RepairCMS as a senior engineer at Candy Melon in Austria. 1,100+ repair businesses in nine markets run their day on it, with one set of numbers each.

Before

Four versions of the truth.

Point at a tool, or tap it, to see what replaced it.

After

RepairCMSone set of numbers per shop

Shop data scoped by tenant, guarded by tests · no reported cross-tenant incident

CRMPOSInventoryCashbookQuotingFormsCustomer portal
Stripe billingLexware books, 20+ h saved a month (customer-reported)
1,100+
repair businesses run their day on it
9
markets it operates in
7
modules in one platform
1
set of numbers per shop

02Selected work

Six systems, told end to end.

Each opens into a case study: the problem, the decisions, what they cost and the proof.

  1. RepairCMS inventory item screen: stock level, sales and purchase price, and supplier pricing

    01 / 06Enterprise SaaS

    RepairCMS

    The multi-tenant platform 1,100+ repair businesses in nine markets run their day on.

    Role
    Lead architect and engineer
    Stack
    NestJS · React · MongoDB · AWS
  2. RepairCMS cash register with a repair job's parts and labour loaded into the cart, VAT split by rate, and the total ready to charge

    02 / 06Payments and compliance

    RepairCMS POS

    A browser register that turns a finished repair into a cart and gets every sale legally signed.

    Role
    Backend and web register
    Stack
    NestJS · React · MongoDB
  3. A shop's booking form built with the RepairCMS Form Builder, open in a browser: Book your repair in just a few steps, with a Start Now button

    03 / 06Configurable product

    RepairCMS Form Builder

    Shops build their own booking forms without a developer; every booking lands as a repair ticket.

    Role
    Backend, editor and security
    Stack
    NestJS · React · MongoDB
  4. SRH Engineering platform

    04 / 06Scale and search

    SRH Engineering

    Keeping search and listings fast for a consultancy with 60,000+ clients and 70,000 projects.

    Role
    Full-stack developer
    Stack
    Next.js · TypeScript · Tailwind
  5. LSOE CRM

    05 / 06Permissions and real time

    LSOE CRM

    Five permission tiers, real-time collaboration and deduplicating bulk import in one CRM.

    Role
    Full-stack developer
    Stack
    Node.js · Express · React · Socket.IO
  6. Asklytics website

    06 / 06My own product

    Asklytics

    My own AI analytics product: ask a question in plain English, get the answer as a chart.

    Role
    Founder, architect and engineer
    Stack
    NestJS · React · MongoDB · LLM APIs

03Journey

From building features to owning the platform.

Every step, told by what changed for the people using the work.

  1. 2021

    Patients got one place for their care data.

    MERN Stack Developer · BDEMR Solutions, Canada

    Value delivered

    Role-based patient portal and dashboards for 35,000+ patients and 30+ clinicians.

    React · Node.js · Express · MongoDB

  2. 2023

    Clients got whole platforms, not just features.

    Full-Stack Engineer · Al Jaami Technologies, UK

    Value delivered

    Three client platforms; one client's 20M+ record search went from timing out to under a second.

    NestJS · React · Next.js · MongoDB · AWS

  3. 2024

    Clients got one person accountable for the release.

    Team Lead of 4–6 engineers · Al Jaami Technologies

    Promoted Mar 2024

    Value delivered

    Owned architecture, cloud and releases; built invoicing with automatic tax and currency conversion.

    NestJS · React · Socket.IO · AWS

  4. 2025

    Shop owners stopped re-typing their books.

    Full-Stack Engineer · Candy Melon Software, Austria

    Value delivered

    Stripe and Lexware billing pipeline: 20+ bookkeeping hours saved per business monthly (customer-reported).

    NestJS · React · Stripe · Lexware

  5. 2026

    The platform became safe to grow.

    Senior Full-Stack Engineer · Candy Melon Software

    Promoted Feb 2026

    Value delivered

    Own the architecture and the standards both repositories follow; no reported cross-tenant data incident since launch, busiest endpoints about 35% faster (internal measurement).

    NestJS · React · MongoDB · AWS

  6. 2026

    Teams get answers without waiting for an engineer.

    Founder · Asklytics (product, architecture and build)

    Value delivered

    Plain-English answers from company data, the same day a source is connected.

    NestJS · React · LLM APIs · MongoDB

What the work changed

Pick a result. See how it happened.

Results from five years of production work. The list is the index; the panel is the story, from the problem to the trade-off.

RepairCMS · Candy Melon Software · 2025 to now

1,100+ repair businesses run their day on one platform

The problem

Stock, sales, intake and accounts lived in four tools that never agreed, and on a shared platform one bad query could expose another shop's data.

What I did

Joined as an engineer, promoted to senior. I own the architecture and built the billing pipeline and the tenant-scoping rules.

The key decision

Scope every query to the shop through one shared helper, and prove it with tenant-scope tests.

What it cost

More work per module, accepted so each customer's data stays their own.

No reported cross-tenant data incident since launch; the busiest API endpoints about 35% faster (internal measurement).

Open the case study

Built with NestJS · React · TypeScript · MongoDB · AWS · Stripe · Lexware

How I work

Problem first. Proof last.

Every important change gets a short written record before it ships. This is a real one from RepairCMS, tagged with the habit behind each part.

Decision record · Tenant scoping in every service

RepairCMS · accepted
The cost
1,100+ businesses share one platform. One query that forgets its filter shows a shop someone else's customers.1
How shops work
Every screen a shop uses touches its own customers, stock and money, many times a day.2
Decision
Every query filters by the shop, resolved from the user by one shared helper. Looking up tenant data by id alone is not allowed.3
The price
It is a rule, not a guarantee: a forgotten filter returns every shop's data, so it has to be held by tests and review.3
Held by
A written rule in the repo, tenant-scope regression tests and code review, with older modules being brought up to the same rule. No reported cross-tenant data incident since launch.4

Everyday tools TypeScript, React, Next.js, Node.js, NestJS, MongoDB, AWS (EC2, S3, SES), Stripe, Socket.IO, OpenAI API, GitHub Actions, Jest

Thanks for reading this far.

If your platform needs someone to own the hard parts, let's talk.

Tell me what you're building and where it hurts: scale, billing, a rewrite, or a platform with no architect. I reply within a day.

Md Shoharab Pk, Senior Full-Stack Engineer↑ Back to the top