Skip to content
Mudassir MohammedRésumé

Case studies

Projects

Four builds, strongest first. Each case study covers the problem, what I personally built, how it's put together, the decisions behind it, and what's still missing.

01 · Personal project

OpsPilot

Sole engineer · 2026

A multi-tenant operations platform: requests come in as plain text, get routed, assigned and tracked, with LLM drafting and a read-only assistant on top.

Operations teams get requests as loose text. OpsPilot routes them to a department, runs them through a guarded lifecycle and keeps an append-only history. I built it end to end: the FastAPI and PostgreSQL backend, the Next.js front end, two LLM features, and the evals that decided which model ships.

Under the hood: The model never sees a database id. The assistant's tools run in read-only transactions with the asking user's permissions, re-checked on every call.

Python · FastAPI · SQLAlchemy 2 (async) · PostgreSQL · Alembic · Next.js

Read the case study

02 · In production

Mentrex

Lead engineer · Apr 2025 – present

The learning platform Mentrex Academy runs on: courses, enrolments, fees, assessments and student progress in one system.

A tech-course institute needed one place for course content, student progress, fees and day-to-day accountability. I built Mentrex as the academy's LMS and keep extending it: an admin and instructor portal, a student portal, and the progression and assessment engines underneath.

Under the hood: Modules unlock in order as students finish content, and assessments are scored on the server. Answer keys never reach the browser.

Next.js · TypeScript · PostgreSQL · Prisma · TanStack Query · Zod

Read the case study

03 · Personal project

Koin

Sole engineer · 2026

An Android-first expense tracker that logs UPI and bank transactions on its own, from SMS and payment-app notifications.

Manual expense trackers get abandoned within days. Koin listens for transactions instead: Kotlin native modules catch bank SMS and payment-app notifications, and an on-device categoriser that learns from corrections files them. It's local-first, with optional cloud sync.

Under the hood: Two Kotlin listeners, an SMS BroadcastReceiver and a NotificationListenerService, bridged into React Native and feeding a seven-step categoriser.

React Native · Expo · TypeScript · Kotlin · MMKV · Firebase

Read the case study

04 · Personal project

Nexus SaaS

Sole engineer · Nov 2025 – Mar 2026

A multi-tenant business platform: one codebase serving many organisations, each with its own subdomain, features, roles and billing.

A study in what multi-tenant SaaS needs underneath the features: tenant resolution from the hostname, per-tenant feature flags, granular permissions, and Stripe billing that survives webhook retries. Website-builder, finance, HR, inventory and CRM modules sit on top.

Under the hood: Stripe webhooks are signature-verified, then claimed in a WebhookEvent table before processing, so Stripe's retries can't apply the same event twice.

Next.js · TypeScript · PostgreSQL · Prisma · NextAuth · Stripe

Read the case study

Also built

  • VoiceInk

    A macOS menu-bar dictation app. Press a global hotkey, speak, and the transcribed text is pasted into whichever app has focus. Rust core on Tauri v2 (audio capture, hotkey, paste), Deepgram or Whisper for transcription, and an optional Groq pass to tidy the text.

    Rust · Tauri v2 · React · TypeScript · Private repository

  • This site

    Static Next.js pages with content in typed TypeScript files and no CMS. Client-side JavaScript is limited to the copy-email button and the active navigation link.

    Next.js · TypeScript · Tailwind CSS

Everything else, including older experiments, is on GitHub.