Software engineer. I build web applications and run them myself.
I write the application and then own the part most developers hand off —
the server, the containers, the reverse proxy, the certificates, the deploy.
Computer Science background, currently at Innovate Solution in Dhaka.
|
A self-hosted email marketing platform. Built it, deployed it, and I keep it running. It replaced sending campaigns by hand from WordPress, and now delivers 8,000–10,000 emails a month across multiple brands. |
Infrastructure and security notes — 103 pages written while learning the ground under the applications I ship. Linux, Docker, server deployment, AWS SES, CI/CD and Git, published as a static site. |
Inside MailHub
- Three Docker Compose services — Next.js, Express, PostgreSQL — all bound to
127.0.0.1, reachable only through nginx with Let's Encrypt TLS - Amazon SES for delivery; bounces and complaints return over SNS to a signature-verified webhook and suppress the address automatically
- Auto-pause acts as an emergency brake when bounce or complaint rates climb, and only a human can lift it
- Exactly-once sending enforced in the schema, so a retry or a crash can never email someone twice
- Migrations run on container start;
git pull && docker compose up -d --buildis the whole deploy
| Infrastructure | |
| Backend | |
| Frontend | |
| Docs & content | |
| Practice |
Building web applications with React and Node, then technical SEO for a B2B travel API company — schema, crawlability, Core Web Vitals, and a WordPress-to-static migration.
That turn is what pulled me toward infrastructure. Chasing page-load numbers means caring about how something is served, not only how it is written. Owning a deploy is the same question one layer down.
- Migrating a WordPress blog to a static Astro build on Cloudflare Pages
- Adding a Dockerfile and a GitHub Actions pipeline to MailHub
- Writing up the Linux and Docker ground on omarsec.com as I go


