Scalability, accessibility and great UX are the biggest challenges of growing software.
What challenges do you face as your software grows?
- ScalabilityThe app slows down or crashes once real users arrive.
- AccessibilitySome people can't use it well: slow on mobile, hard to read, hard to navigate.
- User experienceConfusing screens make customers give up before they buy.
Nasir KhanTech Lead · Full-StackUttara, Dhaka, Bangladesh
Hi, I'm Nasir.
I've spent 12+ years building web platforms for businesses in Bangladesh and the United States.
I take products from the first requirement to production, then stay to run them: architecture, APIs, front end, data, payments and infrastructure. Today I lead MenuBD, a multi-tenant restaurant SaaS, and ship my own iOS app, TodoAid.
- 2012 – 2017
- Noakhali Science and Technology UniversityBachelor of Business Administration (BBA)
- 2008 – 2010
- Adhyapak Abdul Majid College
How I build software that grows.
- Scalability
- Built to scale from day oneServer-side rendering and edge caching on Cloudflare, Redis and job queues, rate limiting and a tuned PostgreSQL schema.
- Accessibility
- Usable by everyone, on any deviceResponsive layouts, semantic markup, keyboard-friendly navigation, readable contrast, and fast loading on mobile networks.
- User experience
- Clear, simple flowsI start from the business goal and design the shortest path for the user, from first screen to payment.
- Security
- Safe by defaultJWT and role-based access, tenant-isolated data, rate limiting and signed payment webhooks.
- Delivery
- Small, tested releasesClear requirements first, then CI/CD, code review and production alerts, so every release ships with confidence.
Technical expertise
How I design, build and run production systems as a tech lead.
- Leadership
- Technical direction · Code review · MentoringRequirements analysis, architecture decisions, testing standards, release planning
- System design
- Multi-tenant SaaS · Modular architectureScalability planning, caching strategy, API contracts, event-driven workflows
- Backend
- NestJS · Node.js · TypeScriptREST API design, domain modules, Laravel / PHP
- Frontend
- Next.js · ReactApp Router, server-side rendering, Core Web Vitals, technical SEO
- Data
- PostgreSQL · Prisma · RedisSchema design, indexing and query tuning, tenant isolation, caching
- Scale & realtime
- BullMQ · RabbitMQ · WebSocketsBackground job queues, scheduled jobs, live updates
- Security
- JWT · RBAC · OWASP practicesAuth and OTP flows, rate limiting, signed webhooks
- Cloud & DevOps
- Docker · GitHub Actions · Cloudflare · NginxCI/CD, Linux servers, PM2, CDN, edge caching, R2 storage, production alerts
- Integrations
- Paddle · RevenueCat · AWS SES · OpenAISubscriptions and billing, transactional email, AI features
- Mobile
- Swift · iOSNative apps, in-app subscriptions, App Store release
DNews
Built a news portal in Laravel, where my career on the web started.
eHospital
Ghuri Online Limited
Dreamploy
Mediusware
Docturnal Health, LLC
Full-stack development for a New York healthcare company.
MenuTune
Current roleMenuBD
Led the platform from first design to production: architecture, NestJS API, Next.js front end, PostgreSQL schema, payments and infrastructure.
Current roleTodoAid
My own iOS app, built with AI-assisted development using Claude: product, design, App Store release and a RevenueCat subscription paywall.
MenuBD
A restaurant menu platform. Every restaurant gets its own fast, search-indexed menu page, and owners run their menu and subscription from one dashboard.
One codebase serves every restaurant. A NestJS API and a Next.js front end share a single PostgreSQL database, with each restaurant's data kept apart by tenant.
- NestJS
- Next.js 14
- PostgreSQL
- Prisma 7
- Cloudflare R2
- Paddle
How MenuBD is built.
- Edge
- Cloudflare handles DNS, CDN and TLS in front of everything.
- Routing
- Nginx sends
/api/*to NestJS and every other path to Next.js. - Web
- Next.js 14 App Router with SSR. Each restaurant lives at
/[slug], with a generated sitemap and robots for SEO. - API
- NestJS with 30 domain modules behind a global
JWT → Roles → Throttlerguard chain, plus 3 scheduled cron jobs, run under PM2. - Data
- PostgreSQL, 47 tables, through Prisma 7 and adapter-pg. Tenants are isolated by
tenant_id. - Media
- Uploads are converted to WebP with Sharp and served from Cloudflare R2 at
cdn.menubd.com. - Services
- Paddle for subscriptions and webhooks, AWS SES for OTP and transactional email, a Telegram bot for admin alerts.
All of it runs on a single Contabo VPS, kept lean by letting Cloudflare serve media and cached pages.
TodoAid
A to-do list and habit tracker, my own product, designed, built and shipped under my own App Store developer account.
- Monetisation
- Free core with a TodoAid Pro upgrade through a RevenueCat paywall approved in App Review: $1.99 a month, $17.99 a year, or $99.99 one-time.
- Features
- 20+ scheduled templates, habit streaks, tasks with subtasks and four-level priority, week and month calendars, daily notes with mood tracking.
- Privacy
- Data stays on the device, with no account needed and export built in. The App Store privacy label reads "Data Not Collected".
- Shipping
- Version 1.0 to 1.0.2 released in under two weeks.
How I lead a build.
- Requirements before codeUnderstand what the business needs so the team builds the right thing first time.
- Scale is a design decisionPerformance is planned into the architecture, not patched in after launch.
- One owner, whole stackAPIs and interfaces are reviewed as one product.
- Tested before it shipsTesting is part of done, so deploys are routine.