I solve hard problems for fun, then build backends that keep them solved.
Dhaka, Bangladesh · open to relocation and remote
I've been competing since 2020, on every judge I could get an account on. Here's the full count, de-duplicated across all of them.
- ICPC Asia Dhaka Regional 2023: 61st. Also 7th at the IUBAT Collaborative Contest 2023 and a BUET IUPC 2023 team.
- VJudge counts too. 45 Codeforces, 61 UVa and 36 AtCoder solves went through VJudge's own bot accounts, so they never show on those judges' profiles. They're all in the panel above, each problem counted once.
I don't only compete, I run contests. In 2023 I was Judging Director of the DIU Take-Off Programming Contest: a 241-person main round, two preliminary slots and a 722-person mock round. I set one of the hardest problems (F, solved by 4 people) and reviewed another, and across contests I've set and tested 15+ problems. The whole editorial, with problem analyses and reference solutions, is public: Take-Off-Programming-Contest-Fall-2023 →
Every card links to the real repo, and Tetris links to a version you can play right now. Brain MRI is a private research repo, so that card doesn't link anywhere yet.
The story behind Notif Guardian: my Xiaomi phone kept delivering WhatsApp messages hours late. The usual advice is "enable autostart", and that wasn't the problem. On the device I traced it to HyperOS's Millet freezer cgroup-freezing Google Play services, the process that carries every push, the moment the screen turned off. It was missing from a system no-restrict list, and the OS rewrote that list whenever it liked. The app repairs it, and a tiny helper puts it back within about 20 ms each time the system wipes it. Full write-up →
More in the lab: Library Management (.NET API + Angular 19) · LeetCode (C++ solutions) · Code-Library (my C++ contest library) · aws-learn and ci-cd-learn (learning in public) · all repositories →
I work on payments, wallets and a large SQL Server to PostgreSQL migration for a travel platform. The recurring theme is making sure that doing something twice is the same as doing it once. Below is that idea in one loop: the first request goes through, the retry with the same key is stopped at Redis.


