Software Engineer @ Intuit
Exploring AI agents
Hi, I’m Vinod.
I’m curious about how products work, and I like
building them.
Frontend-leaning full-stack engineer. I ship product-grade interfaces and the systems behind them, and I care about the why.
Location
Writing
-
Why Date.now() Is Still Wrong
Deriving a countdown from Date.now() fixes the render loop, but Date.now() is device time, and device time isn't necessarily the clock your app should trust. Server-time sync, monotonic clocks, and a tiny library.
-
Why Your Countdown Timer Lies After the Tab Goes Idle
A countdown showed garbage after a tab sat in the background, but only when nobody was watching. The cause was background-tab timer throttling; the real bug was accumulating time instead of deriving it.
Tech stack
Tech stacks I'm familiar with
Primarily focused on the JavaScript ecosystem, but always eager to explore and learn new technologies.
Blog
Learning, Building, and
Documenting
Insights and experiences from my journey as a developer: exploring ideas,
overcoming challenges, and sharing lessons learned along the way.
Adapt the library, don't upgrade the framework
web3-react v6 couldn't give me the Magic login I needed, and v8 was a ground-up rewrite. So I wrapped magic-sdk in v6's AbstractConnector instead of migrating the whole app, a backported connector plus the Anti-Corruption Layer pattern.
- architecture
- javascript
- webdev
- typescript
Bind to the Token, Don't Guess the Pixel
A design system only works if the values in the code point back at it. A screen full of
- frontend
- design-systems
- css
- ai
Test the Intent, Not the Implementation
A suite of end-to-end tests that passed every night and still let a broken checkout ship. They were pinned to the DOM (class names and nth-child paths) so they tested how the page was built, not what it was supposed to do. Deriving tests from the spec instead of the markup fixes that, and it's the same discipline that makes a flaky test findable.
- testing
- frontend
- playwright
- ai
Why Date.now() Is Still Wrong
Deriving a countdown from Date.now() fixes the render loop, but Date.now() is device time, and device time isn't necessarily the clock your app should trust. Server-time sync, monotonic clocks, and a tiny library.
- javascript
- frontend
- ntp
- react
Why Your Countdown Timer Lies After the Tab Goes Idle
A countdown showed garbage after a tab sat in the background, but only when nobody was watching. The cause was background-tab timer throttling; the real bug was accumulating time instead of deriving it.
- javascript
- frontend
- debugging
- browsers
Your list is a stream, not a snapshot
Offset pagination quietly duplicates and skips rows the moment your data changes underneath you. Why LIMIT/OFFSET breaks on live lists, how cursor (keyset) pagination fixes it, and where virtualization fits, with a playground you can drive.
- javascript
- webdev
- databases
- frontend
Your LLM Pipeline Is a Data Pipeline, Not a Chatbot
The first version of my daily summarization job was one big prompt in a loop. It died halfway through, re-did work it had already paid for, and had no idea what it had finished. Treating LLM batch work as ETL (staged, checkpointed, idempotent) fixed all three.
- ai
- architecture
- backend
- llm