Hey, I'm Nitin.
I debug things.
Principal Engineer at Zeta, keeping UPI payments boring (the good kind) for millions of transactions a day. By night I argue about whether Lelouch was right, plan treks, chase waves, and lose at cards.
I love taking hard problems apart until they make sense — in production systems, in science trivia, and in plot twists. This site is my corner of the internet: what I'm up to, what I've built, and notes on what I'm learning.
This is sample text. Replace it with your own now.md in your notes repo.
- 📺 Watching: rewatching Vinland Saga. Thorfinn’s arc hits different the second time.
- 🧠 Learning: consensus algorithms — Raft first, then the scary parts of Paxos.
- 🏄 Planning: a surf weekend in Goa before the monsoon swell disappears.
- 🃏 Losing at: cards, every Friday, with the same group of friends.
- 💼 At work: keeping UPI payments boring (that’s a compliment) at Zeta.
11 years across payments, distributed systems, Android and IoT — from shipping 60 FPS Android apps to owning UPI at scale.
See my work →GraalVM native image gotchas
Native images start in milliseconds and use a fraction of the memory, but the closed-world assumption bites in surprising places.
How Kafka consumer group rebalancing works
When a consumer joins or leaves a group, Kafka reassigns partitions across the remaining members. During an eager rebalance every consumer stops, gives up all…
Idempotent retries in payment systems
Why every payment API needs an idempotency key, and how to store it.
Psst — tap one.