Skip to content
ahmadsuffian.dev

Open to full-stack engineering roles

I build and ship production AI systems.

I'm Ahmad, a full-stack engineer with 3+ years building and shipping production systems in Next.js and TypeScript, from stakeholder requirements to production deployment.

Email me
~/invoicesExample Claude Code session: c-saver skips a lockfile read and trims test output; c-check blocks git reset --hard, sends Claude back when it says done with a failing test, then verifies the fix.

Selected work

5 projects

  • 2026TradelertTrading journal with auditable P&L and a RAG-backed AI coach.

    Tradelert turns MT5 broker history and trade notes into auditable P&L, deterministic analytics and plain-language findings on process and risk habits. Each account sees only its own data.

    The AI coach runs in a stateless Python FastAPI service. Notes are embedded with Gemini through LangChain and searched with pgvector, and a tool-calling agent answers questions from computed stats only. The app drops any point with a number no tool returned.

    An eval suite runs real model calls over a fixed demo journal, measuring retrieval recall@12 and MRR and checking that the agent calls the expected tools.

    Next.js, TypeScript, PostgreSQL, pgvector, Python, FastAPI, LangChain, Gemini

  • 2026c-checkChecks what Claude Code does, and blocks it or sends it back when a rule fails.

    Long Claude Code sessions drift: instructions in CLAUDE.md are a hope, not a check. c-check turns them into code. Rules run before a tool, after it, and when Claude tries to stop.

    Seven rules ship: tests must pass before Claude says done, tests can't be weakened to get there, no edits outside the project, no risky commands, no secrets in files. Each rule starts in observe mode and is promoted to enforce once its log shows blocks you agree with.

    It fails open, so a broken rule never breaks Claude Code. Integration tests run the full chain in real temporary git repos, and an eval suite compares real task runs with c-check on and off.

    TypeScript, Claude Code mods, Node.js, Vitest, git

    Source code

  • 2026c-saverCuts the tokens Claude Code re-sends on every call, and shows what each saver saved.

    Every API call re-sends CLAUDE.md, tool schemas and the whole conversation. c-saver is one Claude Code mod with no dependencies and no daemon that trims what gets re-sent.

    It cuts long shell output to its errors, blocks reads of generated folders, lockfiles and unchanged files, and keeps secrets out of the transcript. A status line shows context, usage limits with a run-out forecast and the prompt cache countdown. /savings reports what each guard actually saved.

    TypeScript, Claude Code mods, Zero dependencies

    Source code

  • 2025Qualifyr.myAgentic B2B CRM for Malaysian real estate agents.

    Qualifyr scores leads automatically, manages the sales pipeline and handles follow-ups, so agents spend their time on buyers who are ready. Live in production.

    Next.js, PostgreSQL, Gemini

    Live site

  • 2025LangganCheck.myTracks subscriptions and BNPL payments on a calendar.

    A micro tool that puts every subscription and buy-now-pay-later instalment on one calendar, so nothing renews or falls due by surprise. Live in production.

    Next.js, PostgreSQL, Fluid.KrackedDevs

    Live site

About

I've worked across startups, enterprise and independent SaaS. I'm comfortable owning full delivery in lean, fast-moving teams: talking to stakeholders, designing the data layer, building the UI and running the deploy.

I care about the unglamorous wins: cutting RM 30,000 in costs by removing unnecessary dependencies, taking a dashboard from 3s to 0.8s, and replacing FTP deploys with CI/CD that ships in 5 minutes instead of 30.

Languages
  • TypeScript
  • Python
  • PHP
  • SQL
Frontend
  • React
  • Next.js
  • Angular
  • Tailwind CSS
Backend
  • Node.js
  • Express.js
  • FastAPI
  • Laravel
  • CodeIgniter 4
Data & storage
  • PostgreSQL
  • Redis
  • MSSQL
  • Cloudflare R2
DevOps
  • Docker
  • GitLab CI/CD
AI
  • LangChain
  • RAG
  • pgvector
  • Gemini API

Experience

  1. Apr 2026 – now

    Software EngineerDigitalUKM

    Introduced GitLab CI/CD (SSH) across a team of 8 engineers, replacing FTP deployments and cutting deploy time from 30 to 5 minutes. Reduced database query volume at the data layer (N+1 elimination, caching, debouncing, rate limiting), resolving a recurring load issue escalated by management.

  2. Jan 2026 – Mar 2026

    Frontend Engineer (Contract)ITD IIUM Gombak

    Migrated a legacy Oracle dashboard to a modern UI, reducing page load time from 3s to 0.8s.

  3. Sep 2023 – Jan 2026

    Full Stack DeveloperTA Fintech Solution

    Reduced web application costs by RM 30,000 by removing unnecessary dependencies. Worked directly with stakeholders, cutting requirement revision cycles by ~40%. Delivered 2 client projects as solo developer, owning full-stack development from requirements to production.

  4. Aug 2021 – Feb 2022

    Web Developer InternAbdinaz

    Developed a web app for faraid (Islamic inheritance) management, with an Angular and Tailwind frontend and a PHP backend.

Contact

Hiring a full-stack engineer? I'd like to hear about it.

Based in Kajang, Malaysia. Usually reply within two days.

GitHubLinkedIn