About
Vitthal Mirji - Engineer building platforms - Data, Software & OSS. Notes on Scala, Rust and functional data engineering.
Hey, I’m Vitthal
I build data platforms and developer tooling, with a strong bias toward catching mistakes at compile time instead of at 3 AM in production. 12+ years across enterprise data engineering, internal developer platforms, and type-safe SDK libraries, mostly in Scala, increasingly in Rust.
Within engineering, three things keep pulling my attention:
Compile-time safety. Most schema and contract failures are avoidable - the information needed to catch them exists before runtime, we just don’t encode it. flowforge and compile-time-data-contracts are both attempts to make the compiler do that work.
Boring, reliable pipelines. Large-scale data systems fail in the same handful of ways, repeatedly, across companies. I’d rather spend the effort once, in the type system, than relearn the lesson in an incident review.
Interfaces that don’t lie. An API that’s easy to misuse will eventually be misused. I care about designing libraries and pipelines where the types make the wrong usage hard to write.
I write about this on my blog - mostly Scala, Rust, and functional data engineering, occasionally career notes from the EU job search. The short version of my open-source work: ~50 public repos, mostly Scala and Python, with a growing Rust habit. I also mentor Google Summer of Code contributors and speak at conferences and meetups across Europe and Asia. If you want to see the actual code instead of me describing it, my GitHub is the more honest source.
Outside of code: three-dozen-plus mechanical watches, an unplanned little UN summit of Seiko (Japan), HMT and Allwyn (India), Vostok (Russia), and a 1960s Enicar (Switzerland), plus a diesel Ford Freestyle, for the same reason I like type systems - they fail loudly and tell you exactly what went wrong, instead of lying to your face at runtime. I chase good whisky and wine by curiosity rather than label, keep a raag-based playlist depending on the hour, and debug out loud to a rubber duck on my desk, which is either a serious engineering technique or the reason nobody wants to share an office with me. Fluent in Marathi, Hindi, Kannada, and English; rusty but functional in German, which is apparently enough to get work done.