man kalyan
Kalyan Kaushik Khasibhatla
I build for the web and the JVM, and I'd rather ship something small that stays up than something clever that doesn't.
I've been building software professionally for 12 years. Most of it has been web applications with Java behind them doing the work nobody sees, and three of those years (2015 to 2018) went on mobile — which is where I learned what shipping to an app store, with no way to hotfix, does to your tolerance for clever code.
What I've ended up caring about is narrower than "good software", and more specific: how long the page takes on a connection that isn't yours, whether the whole thing works without a mouse, and whether it's still up at 3am. Those three are unglamorous, they're measurable, and in my experience they're what people actually notice.
What I'm working on now
Web engineering and performant Java services, plus accessibility — making sure what I build works as well by keyboard and screen reader as it does by mouse, not just passing an automated check.
Alongside that: platform engineering and DevOps (CI/CD, infrastructure as code, observability), and a few lower-level languages — Rust, Zig, Go. I'm newer to these, which is exactly why I write about them — the notes are more useful while I'm still learning than they'll be once it's second nature.
Why this site exists
Writing something down is how I find out whether I actually understand it. A proof I can't reconstruct, an algorithm I can only recite, a paper I nodded along to — the difference shows up immediately the moment I try to explain it to someone else.
So the writing section is a working notebook rather than a publication: mathematics and physics worked through from first principles, computer science fundamentals revisited properly, summaries of papers I've read, and the occasional argument about engineering practice that I'm willing to defend in public — and to revise in public when I turn out to be wrong.