CTRL ALTSCtrl Alt Solvereal-world developer knowledge
SearchJoin
Ctrl Alt Solve — Don't just ask what to do. Learn what developers experienced when they did it.
P

Pranav Chopra

@pranavchopra

SDE-2

0 followers0 following0 expertise score6 posts

Weekend open-source contributor. Weekday production warrior. (north)

ReactNode.jsMongoDB

Experiences shared

Case study8d ago·1 entry

broke in webhook delivery after the replica failover

We ran into this around webhook delivery after the replica failover. We needed a lock so two workers would not process the same job. One option expired itself. The other lived next to our source of truth. Failover behavior mattered more than the benchmark. We started with the store we could operate, then moved the hot path later. Pick the tool your on-call can reason about.

0 views0 likes0 comments0 bookmarks
#webhook delivery
PPranav Chopra
Read →
Question9d ago·1 entry

broke in checkout during a Friday deploy

We ran into this around checkout during a Friday deploy. Staging was quiet. Production was not. A small config drift showed up only after traffic moved. We compared logs from the last healthy deploy before touching code. The fix was smaller than the theory: one timeout and a clearer metric. We kept the old path behind a flag until the numbers settled.

0 views0 likes0 comments0 bookmarks
#checkout
PPranav Chopra
QuestionAug 31, 2026·1 entry

do you test webhook retries without drowning in fixtures?

Our provider retries aggressively and out of order under failure. Naive fixtures make CI slow and still miss race conditions. Looking for patterns that keep suites fast and realistic. Do you fake the provider clock, or replay recorded payloads? How do you assert idempotency without flaky sleeps? Share a setup that survived production incident recreations.

373 views0 likes0 comments0 bookmarks
#testing#ci#webhooks
Pranav Chopra
ExperienceAug 30, 2026·1 entry

broke when we moved auth to the edge

We moved session checks to the edge to cut latency on every page load. It worked in staging, then failed on preview deploys when cookies crossed domains. Clock skew between edge and origin made short-lived tokens look expired. We fixed cookie domains per environment and added skew-tolerant expiry. Median auth path dropped about 120ms, with fewer cold-start surprises. Lesson: test cookies across every environment before calling a migration done.

222 views0 likes0 comments0 bookmarks
#nextjs#auth#edge
Pranav Chopra
LearningAug 29, 2026·1 entry

I finally understood Postgres indexes the hard way

I used to think more indexes always meant faster queries. Production taught me about write amplification and table bloat instead. We had three indexes that nothing queried, slowing every insert. EXPLAIN ANALYZE finally showed which plans actually used which indexes. After dropping the dead ones, writes got healthier without hurting reads. Now I review unused indexes in the same ritual as reviewing slow queries.

99 views0 likes0 comments0 bookmarks
#postgres#sql#performance
Pranav Chopra
Problem solvingAug 28, 2026·1 entry

a silent 502 that only hit 2% of traffic

No spike in CPU. Error budgets looked fine at a glance. Users still reported blank pages in a thin slice of traffic. Logs only showed upstream resets with no clear application exception. The culprit was a stale keep-alive timeout between nginx and the app. Aligning idle timeouts stopped the intermittent 502s within an hour. We also added a dashboard for upstream reset reasons so the next page is faster.

203 views0 likes0 comments0 bookmarks
#debugging#nginx#networking
Pranav Chopra
Read →
P
Read →
P
Read →
P
Read →
P
Read →