Skip to content
View ebrahim2355's full-sized avatar

Block or report ebrahim2355

Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
ebrahim2355/README.md

MD. Ebrahim Ali — Full Stack Engineer — NestJS, Next.js, TypeScript, PostgreSQL

Portfolio LinkedIn Email

Building CRM and commerce platforms — NestJS, Next.js, TypeScript, PostgreSQL — 6 pull requests merged into Twenty, Medusa and Saleor


What I do

I build the parts of a product that have to be right — catalogues, inventory, orders, payments and auth.

Right now that means a large-scale CRM and e-commerce platform, where I work across NestJS services, PostgreSQL schemas and Next.js interfaces. Most of what I actually do sits at the seams: the transaction boundary, the module edge, the schema that has to survive the next feature, the assumption nobody wrote down until it broke something in production.

Currently — Full Stack Engineer at RemoteIntegrity (Clearwater, FL — remote)


Open source

I read an unfamiliar codebase until I can explain why a bug happens, then fix the cause rather than the symptom. Each of these was reviewed and merged by the project's own maintainers.

Project What was wrong PR
Twenty 56k+ ★ The MCP endpoint invented its own progress tokens and streamed notifications no client had requested — one report hit 157 protocol errors in a single session #24582
Medusa 36k+ ★ An unawaited cache write let all four auth providers redirect users before their OAuth state was persisted, and crashed the process on a transient cache error #16571
Saleor Dashboard A crash across six list views, caused by row selections outliving their rows. Fixed in the grid rather than per view, settling three divergent behaviours across nine lists #6873
Saleor Dashboard Datagrid rows stopped behaving like links — no open-in-new-tab on right click, and middle click navigated in place, because the row anchor was positioned in document coordinates while the grid reports viewport ones #6868
Saleor Dashboard The Ctrl+K palette shipped combobox ARIA on an abstract role, so none of it applied — three critical axe-core violations, no visual change to fix #6858
Saleor Dashboard Discount reward values silently dropped their decimals — 12.55 saved as 12, with no error shown #6860

Full write-ups — the bug, the cause, and why each fix was scoped that way →


Stack

TypeScript, JavaScript, Python, NestJS, Node.js, Express, Django, Next.js, React, Tailwind CSS, PostgreSQL, Prisma, MongoDB, Redis, Docker, Git, GitHub, Vercel

Languages TypeScript · JavaScript · Python · SQL Backend NestJS · Node.js · Express.js · Django · REST API design · domain-driven modules Frontend Next.js · React · Tailwind CSS · Framer Motion Data PostgreSQL · Prisma · MongoDB · Redis Infrastructure Docker · CI/CD · Git


Selected work

Project What it is
VELANO Fashion Production storefront and admin for a fashion brand — bKash, Nagad and COD payment flows, membership rewards, order tracking Live
Zyplo Team workspace platform — workspace-scoped RBAC, activity analytics, structured documentation Live
AssetVerse HR and asset management across three roles, with Stripe subscriptions and scoped route protection Live · Code
ClubNest Community club and event platform with role-aware membership Live · Code

All projects, with problem statements and the decisions behind them →


ebrahim.dev  ·  LinkedIn  ·  web.ebrahimali@gmail.com

Pinned Loading

  1. assetverse-client assetverse-client Public

    JavaScript 1

  2. cleanliness-and-issue-reporting-client-portal cleanliness-and-issue-reporting-client-portal Public

    JavaScript

  3. local-food-lovers-network-client local-food-lovers-network-client Public

    JavaScript 1

  4. clubnest-web clubnest-web Public

    JavaScript

  5. assetverse-server assetverse-server Public

    JavaScript

  6. zap-shift-client zap-shift-client Public

    JavaScript