About

I am a backend software engineer based in Dhaka, Bangladesh.
How I got here
It started with games. I was fascinated by computers as a child, and the more I used things like Google, Facebook and YouTube, the more I wanted to know what was behind them — how the web actually worked, and how systems at that size get built at all. During my Bachelor’s that curiosity turned into the thing I wanted to do for a living.
I still think it is the most interesting question in the job. Every system I have worked on is somebody’s answer to it, and the answers are never obvious.
What I build
I build backend systems — the APIs, the data models, and the logic underneath them. Most of my professional work so far has been business software: HR and payroll platforms, recruitment systems, and internal applications a company depends on to operate.
That kind of system has its own shape of difficulty. It is usually not traffic; it is the number of rules, the number of exceptions to those rules, and how much of an organisation depends on getting them right. A payroll calculation that is wrong for one department is a different kind of failure from a slow page, and it has taught me to treat correctness and clarity as design goals rather than afterthoughts.
I do not want that to be the only kind of system I know how to build. The problems that come from scale interest me just as much — throughput and latency, distribution, keeping state consistent across services — and that is where most of my own projects and reading go.
The work has mostly been in .NET Core over SQL Server, with Clean Architecture, CQRS and Domain-Driven Design, alongside a fair amount of legacy modernisation. Where I have done it is on the home page.
What I am working toward
- Backend depth. Designing systems that are scalable, reliable, maintainable and performant — and understanding why a design holds when it is put under pressure.
- A wider range of problems. Systems where the pressure comes from scale and performance, not only from business complexity.
- A software architect role. Guiding teams and owning the design decisions rather than only implementing them. I am not there yet; this is the direction I am deliberately heading in.
- Sharing what I learn. Through writing, and through helping other engineers where I can.
Why I write
Writing is how I find out whether I actually understand something. If I cannot explain why a decision was made and what it cost, I did not understand the decision. Putting it in public also means the reasoning can be checked by people who know more than I do.
Most of what I publish is about .NET Core, architecture patterns, databases and performance. You can read it here.
Get in touch
If you build systems too or you are hiring and this looks relevant, I would like to hear from you.