m.arab

Pune, India · UTC+5:30 · Open to remote or relocation

Muhammad Arab

Senior Software Engineer · System design, payments and order processing

I design the business logic companies run on, from order processing and payments to the rules that decide who can see which data. Nearly four years across Node.js, PostgreSQL, TypeScript, React, and NetSuite, the last three at a consultancy delivering for two clients in parallel, usually from a loose brief to production against a fixed deadline. Most of my depth is on the backend, on systems that are already live, where every change has to land without disrupting the business.

01

Experience

Bee Logical Software

Sep 2023 – Present

Software Developer · Remote, clients in the US and EU

Consultancy role. Since May 2026 I have delivered for two clients in parallel: Saralux, which builds MEM360 on NetSuite, and Dog go, a dog-care marketplace in the EU. Awarded Innovation Excellence 2025 and Collaborative Spirit 2024.

Saralux · Builds MEM360, an association management system on NetSuite

Sep 2023 – Present

Designed and led the build of the order processing engine that now handles every transaction in MEM360, a product six associations and nonprofits each run in their own NetSuite environment. In the old flow, one failure stopped the whole order. The new engine runs each order as a sequence of tracked steps, from registration to billing, so a failed step can be retried on its own and failed orders can be reprocessed in bulk.

  • Re-architected one association's order lifecycle, moving its payment-status and billing logic out of NetSuite workflows into a state machine in code that sets each order's status and billing stage, including renewals. Workflows and scripts had been updating the same records concurrently. The single deterministic flow eliminated those race conditions and made order processing idempotent, and I shipped it as an installable SuiteApp.
  • Found an IDOR flaw that let a logged-in user see other customers' saved cards and addresses by changing one ID in a request. The real problem was the server trusting identity sent by the browser, so I fixed it at that level. Across 69 files in six modules the server now takes the customer from the login session and checks its own execution context, and I rewrote guest checkout so guest identity is also established on the server instead of trusted from the client.
  • Moved application submission, the slowest action in MEM360, to background processing, so users no longer wait for it to finish.
  • Built the license check that controls which features each association can use, across the core and credentialing modules.
  • Rewrote how MEM360's storefront renders the forms associations set up in the back office, which every application in MEM360 relies on. One check now decides which fields and sections appear or become required as the user answers, even on prefilled forms, and the main view lost 745 of its 2,729 lines.
  • Moved the Credentialing and Membership portals, nearly 20 views, off deprecated Backbone code onto SuiteCommerce's extension framework without changing anything users see.
  • Built six page designs for individual and team fundraising campaigns, with donor and update pages, and eight task types applicants complete in their portal, such as uploading a transcript or signing a document.
  • Ranked among the top 4 of 20+ contributors on MEM360's two main repositories, with 446 merged pull requests.
  • NetSuite SuiteScript
  • SuiteCommerce
  • Backbone.js
  • JavaScript
  • SQL
  • Azure DevOps

Dog go · Dog-care marketplace connecting owners with providers in the EU

May 2026 – Present

Built the React Native app alone, 60 screens for dog owners and service providers, and took it from an empty project to App Store and Google Play submission in three and a half months, running in parallel with my Saralux work.

  • Reworked provider payouts through Stripe Connect on the Node.js and PostgreSQL API. Bookings only checked that a provider had a Stripe account, so an owner could be charged for a provider who couldn't receive payouts yet, leaving the money stuck. Booking now requires an account that can both take charges and pay out, and every provider is on automatic daily payouts. I also dropped a Stripe capability the platform's payment model didn't need, which removed identity checks that were delaying providers' first payouts.
  • Moved booking validation ahead of payment. Owners used to hit a full slot or an unavailable provider only at the last step. I put the booking rules into one shared check that the app calls before payment and booking creation runs again, so both always agree and a booking that became invalid in between is still rejected.
  • App stores can't force an update, so I added a version check the app runs at launch against an API endpoint. When the client retires a version, users on it see an update prompt instead of a broken app.
  • Replaced the browser-based Google login with native Google Sign-In, moved maps and address search to Google's Places API (New) and Routes API, and moved the app onto the client's own Google Cloud project for handover.
  • Built the React admin portal the client uses to verify providers, set trust scores, and handle GDPR deletion requests.
  • Ran every release myself, from EAS build setup and store listings to a release runbook for the client, and closed 66 QA-reported defects along the way.
  • React Native
  • Expo
  • TypeScript
  • React
  • Node.js
  • PostgreSQL
  • Stripe Connect

Aonia Tech (MadScientist)

Dec 2022 – Sep 2023

Full-Stack Developer Intern · Remote

  • MadScientist is a social platform for science and technology. I was the only frontend engineer on both the React v1 product and its Angular 16 rewrite, and the second-highest contributor by commits on each.
  • Hand-built an 83-screen HTML/CSS prototype of the whole product, which the team used as the blueprint for the Angular rewrite.
  • Added Google sign-in across the React client and the Node.js and MySQL backend, then fixed password reset for accounts that had never set a password.
  • Added comment pagination and returned each viewer's like status with the feed, which cut the client's round trips.
  • Removed password fields that were leaking into API responses.
  • React
  • Angular
  • Node.js
  • Express
  • MySQL

Finlegal Business Solution

Feb 2022 – Apr 2022

Frontend Developer (Freelance) · Freelance

  • Built the frontend of a blogging site in Next.js, and turned Figma designs into the landing page for a CMS product, working with the backend developer and the designer.
  • Next.js
  • React
  • Figma

CuriousJr

Nov 2021 – Jan 2022

SDE Intern · Remote, Gurugram

  • Built browser-based games in JavaScript and jQuery that teach children the basics of web development, for the company's coding course.
  • JavaScript
  • jQuery
  • HTML5
  • CSS3

NeyX

Aug 2021 – Oct 2021

React Developer Intern · Remote, Kolkata

  • Built reusable React components for the company website and led its frontend work, with a focus on SEO and accessibility.
  • React
  • Styled Components
  • SEO
  • Accessibility
02

Selected Work

Masjidly

Feb 2024 – Present

Mosque directory with prayer times and community pages

  • Solo project
  • Live in production
  • Next.js and PostgreSQL

A directory of mosques across India, with prayer times, announcements, and events. A mosque's own admins can claim its listing and keep it current, members join the ones they attend, and anything reported lands in a review queue. I designed, built, and run all of it on my own, on Next.js 15, React 19, and PostgreSQL, with some pages embedded in an Expo mobile app.

  • Built the pipeline that imported 27,714 mosques across India from OpenStreetMap and Google Places. Since the same mosque often appears in both, records pass a matching cascade, exact source ID first and then a similar name within 100 meters, that caught 623 duplicates. Low-confidence records go to a review queue instead of going live, and interrupted runs resume from the last checkpoint.
  • Kept search in PostgreSQL instead of the app. One stored function handles up to nine optional filters, including fuzzy name matching and distance, in a single query, and triggers keep derived columns correct on every write.
  • Built Google sign-in with account linking that refuses to merge two people's accounts when an identity already belongs to someone else, and role-based access so mosque admins are verified before they can manage a listing.
  • Made the app usable offline. The service worker serves static files from cache and shows offline pages with no connection, and its cache is tied to the release version, so each deploy reaches users on their next visit.
  • Generated prayer-time pages for 289 cities at build time and listed every mosque in the sitemap, so both can be found through search. Times are computed on the server, so the first view arrives complete.
  • Next.js 15
  • React 19
  • PostgreSQL
  • PostGIS
  • pg_trgm
  • Supabase
  • pnpm

Agentic Delivery Pipeline

2026

Spec-driven development with AI coding agents

  • 5 Claude Code skills
  • Spec is the source of truth
  • Review never edits code

A five-stage set of Claude Code skills that takes a project from a written spec to a reviewed app. A written spec is the only source of truth, each task carries acceptance criteria written before any code is, and nothing counts as done until it has been checked against them.

  • Planning turns a loose idea into a system spec and a task-by-task build plan. Two build stages then implement the data layer and the interface against that plan.
  • Built the review stage so nothing is taken on the agent's word. It runs the migrations against a clean database, the data-isolation tests, type checks, and the build, then judges the result against each acceptance criterion without touching the code.
  • A retro stage feeds what went wrong back into the skills themselves, so the same mistake is designed out instead of caught again.
  • Used it to build FinanceTracker, a personal finance app whose 108 database tests include 21 that try to read or change another user's data and confirm the database blocks it.
  • Claude Code
  • Supabase
  • PostgreSQL RLS
  • Node.js test runner

Khatabook

Jul 2026 – Present

Billing, inventory, and customer credit for retail stores

  • Built to replace a paper ledger
  • Phone-first
  • Rules in the database

Built to replace the paper ledger a retail store keeps at the counter: bills, stock, and who owes what, on the shop phone. Balances, stock on hand, and customer statements are calculated from the recorded sales, payments, and stock movements instead of kept as running totals, so the numbers can never drift out of sync.

  • Made the database compute line totals from quantity and rate, with money stored to two decimal places and quantity to three, so goods sold by weight or in part units stay exact.
  • Enforced the shop's rules in the database rather than the form: a credit sale must name a customer, a GPay payment must record which account it went to, and a cheque must carry its number. Gave existing customers an opening balance, so an existing paper ledger can move across without inventing past transactions.
  • Designed it around how a counter actually works. It installs on the shop phone, shows rupees in Indian digit grouping with DD/MM/YYYY dates, prints a customer statement to PDF for sharing on WhatsApp, and exports every table as one JSON file.
  • React 18
  • TypeScript
  • PostgreSQL
  • Vite
  • PWA
03

About

I design the parts of a system where a wrong decision costs real money or exposes someone's data, like order processing, billing, payouts and access control. Most of that work starts with a loose brief and a fixed date, on a system that is already live. So the design has to be right before the first line of code, and the change has to land without the business noticing.

At Bee Logical Software, a consultancy, I have spent three years on Saralux's MEM360, an association management system that six associations and nonprofits each run in their own NetSuite environment. Its old order flow stopped a whole order whenever one step failed. I designed the engine that replaced it, where each order runs as tracked steps from registration to billing, so a failed step can be retried on its own and failed orders can be reprocessed in bulk. For one association I moved the payment-status and billing logic out of NetSuite workflows into a state machine in code, which ended the race conditions between workflows and scripts writing the same records.

Since May 2026 I have also delivered for Dog go, a dog-care marketplace in the EU, in parallel with Saralux. I built its 60-screen React Native app on my own and took it to App Store and Google Play submission in three and a half months. On its API I reworked how providers get paid through Stripe Connect, so an owner can never be charged for a provider whose account can't pay the money out.

I treat one customer seeing another customer's data as the worst bug there is. On MEM360 I found one, traced it to the server trusting identity sent by the browser, and fixed it at that level across 69 files in six modules. On my own finance app, 21 of the 108 database tests exist only to try to break that wall.

Masjidly, a directory of 27,714 mosques across India, is where I work this way with nobody else's deadline. I designed, built, and run it on my own. I also ship with a spec-driven pipeline of AI coding agents that I designed, where nothing counts as done until it has been checked against written acceptance criteria.

Languages & Runtime
TypeScript, JavaScript, SQL, Node.js, Express, Zod, Drizzle ORM, Vitest, Supertest
Databases
PostgreSQL (PostGIS, pg_trgm, Row-Level Security, Stored functions, Triggers), MySQL, Supabase
Architecture
System design, REST APIs, State machines, Idempotency, Pub/sub, Background and batch jobs, Feature flags, RBAC
Payments & Platforms
Stripe Connect, NetSuite SuiteScript (User Event, Map/Reduce, RESTlets, Suitelets), SuiteCommerce, SuiteApps, OAuth 2.0/JWT
Frontend & Mobile
React, Next.js, React Native (Expo, EAS), TanStack Query, Zustand, Redux Toolkit, React Hook Form, Angular, Backbone.js, Tailwind CSS, Sass, Service workers
Infra & Tooling
Google Cloud (Places, Routes APIs), Firebase (FCM), Azure DevOps, Vercel, pnpm monorepos, Claude Code, Spec-driven development
Education
B.Tech, Computer Science and Engineering
MIT World Peace University, Pune
2019–2023 · CGPA 9.02/10
Recognition

Innovation Excellence (2025), Bee Logical Software. For the MEM360 order processing engine.

Collaborative Spirit (2024), Bee Logical Software. For mentoring junior developers.

1st Rank in Octathon (2022), MIT WPU. Our team won the 8-hour hackathon with Secure Site, a machine-learning web app that tells users whether a website is malicious.