Technical Skills

10+ years in the software industry, mainly on the back-end and server side — designing APIs, automating servers and scaling infrastructure for location-based services and e-commerce platforms at companies like Techjays, IQVIA and Dingi. Over the last few years that's expanded into the AI/ML side: building with Large Language Models and shipping agentic AI systems using LangChain and LangGraph, both for clients and for products I've built solo end-to-end, like ChatExpense. Below is the stack broken into categories, each with the actual project it shipped in:

Programming Languages

Python first, always — it's what I reach for whether I'm building an API, an AI agent, or a data pipeline. I used it end-to-end for stocksurferbd, scraping and modeling Dhaka & Chittagong Stock Exchange data and publishing it as a PyPI package, and for the manipulation-detection engine behind MarketWiki BD. On High Command I took Python further than usual — the deterministic game core is written once in Python and compiled to JavaScript with Transcrypt so the browser runs the exact same logic as the server. JavaScript and C# fill in for front-end work and integration scripting when a project needs them.

  • Python
  • JavaScript
  • C#

Back-End & APIs

Django and Django REST Framework are my default for production APIs. I built the entire ChatExpense backend on DRF with async support, wiring in OpenAI for voice/chat/receipt-image expense entry — it's since grown to 1,300+ web users and 100+ Play Store installs, cutting logging time by up to 70%. The same stack drives the Hazard Reporting System's incident and volunteer APIs and the surveillance API behind MarketWiki BD. For anything that needs to push updates to the browser in real time — live game turns on High Command, live WhatsApp connection status on Wapptel — I reach for Django Channels over WebSockets. FastAPI, Flask and Node.js (including a Baileys-based WhatsApp Web microservice for Wapptel) cover lighter services and integrations.

  • Django
  • DRF
  • Django Channels
  • FastAPI
  • Flask
  • Node.js

Front-End

Just enough UI to make the back-end usable — I'm a backend engineer first, but I've shipped the customer-facing screens for ChatExpense and MarketWiki BD myself rather than waiting on a dedicated front-end hire. High Command needed something different — a real-time game canvas — so I built its board with pixi.js instead of a DOM-based UI. React and Next.js for anything component-heavy, Django templates and jQuery when server-rendered is simpler, and Bootstrap to get a clean layout out fast (this site included).

  • React
  • Next.js
  • pixi.js
  • Django Templates
  • jQuery
  • Bootstrap

Databases & Caching

Relational databases stay the source of truth — PostgreSQL underpins ChatExpense's async DRF backend, the Hazard Reporting System's incident/volunteer store, and MarketWiki BD's market-data store, alongside MS SQL Server and Snowflake on client projects. Wapptel adds PostGIS for location-aware queries, and High Command leans on Redis for fast-moving game state. MongoDB and DynamoDB cover document workloads; Pinecone, Qdrant and ChromaDB handle retrieval-augmented generation for agentic AI builds; Memcached rounds out the caching layer.

  • PostgreSQL
  • PostGIS
  • MS SQL
  • Snowflake
  • MongoDB
  • DynamoDB
  • Pinecone
  • Qdrant
  • ChromaDB
  • Redis

ML and Agentic AI

LangChain and LangGraph are what I reach for when a problem needs an agent, not just a prompt. The multi-agent pipeline I built for ChatExpense handles insight generation, spending-pattern detection, chart building and smart query answering on top of OpenAI's voice, chat and image APIs — turning a raw receipt photo or voice note into a categorized transaction and a personalized recommendation. On MarketWiki BD the same tools parse disclosure documents and reason about manipulation patterns across multiple LLM providers (Anthropic, OpenAI, Gemini), and on Wapptel they power smarter auto-replies and campaign content. PyTorch, scikit-learn, YOLO and Sentence Transformers cover the classic ML side when a trained model beats an LLM call.

  • LangChain
  • LangGraph
  • AWS Bedrock
  • PyTorch
  • scikit-learn
  • YOLO

Automation & Messaging

Async workers and queues for anything that shouldn't block a request. Comparable background-processing logic powers the Hazard Reporting System's volunteer-matching engine, which automatically pairs distressed callers with the nearest available volunteer based on distance and availability. Celery and RabbitMQ also run the document-ingestion pipeline behind MarketWiki BD and the turn-processing queue in High Command, and drive scheduled campaign broadcasts in Wapptel, where Socket.IO also streams live QR-scan and connection status to the browser.

  • Celery
  • RabbitMQ
  • Socket.io

DevOps, Servers & Cloud

Docker and Kubernetes for shipping, Gunicorn/uWSGI and Nginx tuned for cost and scale on the server side. I used that combination — plus reduced file-system I/O and introduced test coverage — to cut server costs by 50% while scaling Dingi Map APIs on AWS ELB and Autoscaling to a few hundred requests per second for high-profile clients like Shohoz.com. ChatExpense, Wapptel, MarketWiki BD and High Command are all Dockerized and deployed on Railway — my go-to when a solo build needs to go from laptop to production fast. AWS (EC2, RDS, Lambda, S3, ECR, EKS) and Azure (Cosmos DB, Embedded Power BI) round out the cloud side.

  • Docker
  • Kubernetes
  • GitLab CI
  • Gunicorn
  • uWSGI
  • Nginx
  • Railway
  • AWS
  • Azure

Monitoring & Observability

Because "it works on my machine" isn't a production strategy. Grafana dashboards and Elasticsearch/Kibana for tracking system health and digging through logs at scale, Sentry for catching and triaging exceptions before users have to report them — the kind of visibility that turns a 3am page into a five-minute fix instead of a fire drill.

  • Grafana
  • Elasticsearch
  • Kibana
  • Sentry

A few numbers from the field: 1,300+ registered users and 100+ Play Store installs on ChatExpense, up to 70% less time spent logging expenses, a 50% server-cost cut while scaling Dingi Map APIs to a few hundred requests per second for clients like Shohoz.com, and a published PyPI package, stocksurferbd.