← You Are Still Here

Chapter 14 — The Standup

The Slack notification came at 9:47 AM Monday, just as Meera was settling into her chair at the Finova office with her second glass of warm water and lemon.

#payments-alerts | PagerDuty: P1 incident — Razorpay webhook ingestion failing. ~2,400 transactions stuck in PENDING_VERIFICATION state. Customer support tickets climbing. Need an owner.

She read it twice.

She had owned the Razorpay webhook handler for fourteen months. She had written the original retry logic, refactored it twice, added the dead-letter queue last quarter. She knew this code better than anyone on the team. Including Nikhil. Including, possibly, the person at Razorpay who had written the documentation.

She typed in the channel: I'll take it.

Nikhil reacted with a thumbs-up within four seconds.

The standup was supposed to start at 10. Meera, having claimed the incident, was now exempt from it. Fix this. Update us in ten. That was the rule. The mālā in her bag — Aaji's mālā, the one she had brought back from Sangli on Sunday night — pressed against her hip through the canvas of the laptop bag.

She had not chanted yet this morning. She had been planning to do her first round at the office, at lunchtime, in the small empty conference room on the third floor. Now that plan was, like most plans on a Monday, in PENDING_VERIFICATION state.

She opened the codebase.


🔧 The Fix

The bug was elegant in the way that only the worst bugs are elegant.

Razorpay had pushed a webhook payload format change on Friday night — a small one, a single field renamed from payment_method to method — and their changelog had not made the change visible above the fold. Finova's deserializer, which Meera had written in 2024, was strict-mode. Strict-mode meant the deserializer threw on unknown fields rather than ignoring them. Which meant that since Friday night, every Razorpay webhook for a particular subset of payment types had been failing silently, retrying three times, and then dead-lettering.

The customer-facing symptom: transactions stuck for ninety hours, customers calling support, support raising tickets, tickets sitting in a queue, the queue finally hitting a threshold that woke up PagerDuty on Monday morning.

Meera read through the failing webhook logs. She read the Razorpay changelog. She read her own deserializer code from fourteen months ago — had she really written that nested null check this elegantly? Why hadn't she been this clean lately? — and located the exact line.

She wrote the fix. Six lines. Plus a defensive ignore for any future unknown fields. Plus a Sentry warning so the team would know when Razorpay shipped another silent format change.

She wrote three tests. She ran the suite. Green.

She deployed to staging at 10:38. She replayed the dead-lettered messages against staging. They processed clean. She confirmed the state transitions in the database. Everything green.

She deployed to production at 11:04. She watched the dashboard. The PENDING_VERIFICATION queue began draining. 2,400. 2,317. 1,892. 1,401. By 11:23 the queue was empty.

She typed in the channel:

Fixed and deployed. Root cause: Razorpay renamed payment_method → method in their Friday push, our strict deserializer rejected the payload. Patch attached. All 2,400 pending transactions have been re-processed and are in their correct final states. I've added a defensive fallback and a Sentry alert for future silent schema changes from RZP. Postmortem doc by EOD.

She hit Enter.

She sat back in her chair.

And waited.


🎺 The Thing She Did Not Mean to Want

The praise started arriving within forty seconds.

Nikhil 🎯: Beast mode. 90 mins from claim to clear queue. This is the kind of ownership we need across the team. 🔥

Aditi: Meera 👑👑👑

Rajesh (Eng Manager): Meera, brilliant work. Already pinging product to make sure customer support has the talking points. Will be highlighting this in the all-hands tomorrow. ⭐

Ankur (Staff Eng): That defensive fallback is exactly the right call. Folks, this is a textbook P1 response. Take notes.

Pranav (PM): 💯💯💯

The reactions kept coming. The Slack channel was lighting up like the Pune sky on Diwali. 🔥, 👑, ⭐, 🚀, 💯. Aditi sent her a private DM: babe you are GOATED. Nikhil sent her another: can I put you up for a spot bonus this cycle? Don't say no.

Meera read each message as it came in. And read it again. And read it again.

She felt, in her chest, a small warm thing turning on. A small, well-lit, electric thing. The thing she had felt in college after acing the Operating Systems endsem. The thing she had felt at her first appraisal at Finova when Rajesh had said exceeds expectations with no qualifier. The thing she had felt the first time Sahil's mother had said, at a family dinner, Meera is so capable, no.

The warmth was familiar.

The warmth was good.

The warmth was — wait.

She paused in the act of reading Rajesh's message for the third time.

She set her phone face-down on the desk.

She looked, very deliberately, at the wall behind her monitor.

There was nothing on the wall. Just the slightly off-white paint that Finova had used throughout the third floor and the small smudge from where Aditi had once thrown a stress ball during a particularly bad sprint.

Meera looked at the wall and asked herself a question she had not, in her entire working life, asked herself before:

If the channel had said nothing — if not a single person had reacted, if Rajesh had said only "ok thanks" and moved on, if Aditi had not DM'd, if the fix had just quietly worked and the queue had just quietly drained and the customers had just quietly received their payments and nobody had said anything at all — would I be sitting here right now feeling like the work mattered?

She sat with the question for a long time.

The answer that arrived was honest. The answer was not the answer she would have given three months ago. The answer was not even the answer she would have given last week.

The answer was: I don't know. I think — I think probably not.

The answer was: I think I wanted the channel to say my name. I think I wanted it more than I wanted the queue to drain. I think the queue draining without the channel saying my name would have felt — incomplete. Like the work had not really happened. Like a tree falling in a forest with nobody on Slack to react to it.

She felt slightly sick.

Not because the wanting was a moral failing.

Because she had spent three months convincing herself that she had moved past the wanting.

And the mālā was in her bag.


📿 The Empty Conference Room

At 12:15 PM she took her lunch break.

She did not go to the cafeteria. She did not go to FC Road. She went, instead, to the small empty conference room on the third floor — the one nobody booked because it had no whiteboard and the air conditioning was broken — and she closed the door behind her.

She sat on the floor in the corner. She took out the mālā.

The tulasi wood was warm under her fingers. The same warmth it had been in Aaji's room on Friday night. The warmth of a thing that had been chanted on for sixty-five years by a woman who had probably also, somewhere in her life, written a six-line fix and watched a queue drain and felt the small warm electric thing turn on in her chest.

Or maybe Aaji had never felt that. Maybe Aaji had been beyond it by the time she was twenty-seven.

Meera doubted that. The notebook from 1985 had been the notebook of a person still very much inside her own wanting. Krishna says nothing is wasted. I have to believe him. The alternative is — what?

Aaji had been twenty-six when she wrote that. She had been inside her wanting. She had still chanted anyway.

Meera began her first round.

Hare Krishna, Hare Krishna, Krishna Krishna, Hare Hare. Hare Rama, Hare Rama, Rama Rama, Hare Hare.

The mind wandered immediately to the channel. To Rajesh's message. To the will be highlighting this in the all-hands tomorrow. To the spot bonus. To what Aditi had said. To what Sahil would have said if Sahil had still been the person who said things to her about her career.

She brought the mind back.

Hare Krishna, Hare Krishna, Krishna Krishna, Hare Hare.

It wandered again. This time to the question — did I actually fix this well, or did I just fix it fast, what about the unit test for the edge case where the payload has a missing method field entirely, should I have added one for that.

She brought it back.

The whole first round was like this. The mind running off, returning, running off, returning. Like a small dog on a long leash, except the leash was the names and the dog was her own attention and the dog had been off-leash for twenty-seven years and did not yet understand that the leash was there for its own good.

She finished the round at 12:34.

She did not feel transformed. She did not feel less interested in Rajesh's praise. The wanting was still there. The small warm electric thing in her chest had not turned off.

But.

She had noticed it.

She had noticed it during the wanting itself, not three weeks later in a notebook audit. She had noticed it while it was happening, while Slack was still lighting up, while the dopamine was still very much being delivered to whatever brain region delivers dopamine when other software engineers tell you that you are the GOAT.

That noticing was new.

That noticing was, she suspected, what Arjun had been talking about. What Aaji had been talking about. What Krishna had been talking about, possibly, all along.


📜 The Verse She Already Knew, Now Heard

She opened the yellow book. She had brought it in her laptop bag without quite knowing why. Maybe she had known.

She turned to BG 2.47 — the verse everyone quoted, the verse on motivational posters in startup offices, the verse her LinkedIn feed had not been able to shut up about for years.

"You have a right to perform your prescribed duty, but you are not entitled to the fruits of action. Never consider yourself the cause of the results of your activities, and never be attached to not doing your duty."

कर्मण्येवाधिकारस्ते मा फलेषु कदाचन। मा कर्मफलहेतुर्भूर्मा ते सङ्गोऽस्त्वकर्मणि॥

Bhagavad Gītā 2.47

She had read this verse perhaps fifteen times in her life. Probably more. It had been on a poster in her PG hostel in Wakad. It had been quoted in a TED talk Sahil had once sent her. It had been on a notebook her PM at Finova had given the team last Diwali.

She had always read it as a kind of productivity hack. Don't be attached to outcomes, work harder, perform better. The corporate-bro version of the Gita. Detach from the outcome to actually achieve the outcome — paradoxical zen monk wisdom for the modern executive.

She had never, until this moment, read it as a diagnosis.

She read it again. Slowly.

You have a right to perform your prescribed duty.

Yes. She had done her duty. The webhook was fixed. The queue was drained. The customers were taken care of. The duty was complete.

But you are not entitled to the fruits of action.

This was the part she had always treated as motivational philosophy. Don't be attached to the outcome, blah blah, achieve more. But Krishna was not making a motivational point. Krishna was making an anatomical point. He was naming the part of her that had wanted Rajesh to say her name in the channel. He was naming it precisely.

The part of her that wanted Rajesh's praise was the part that thought it was entitled to the fruit. The part that thought because I did the work, I deserve to feel a certain way about having done the work. Because the queue drained, I deserve the small warm electric thing in my chest. Because I shipped, I am owed the channel reactions.

Krishna was saying: no. You are owed the doing. You are not owed the feeling.

You are owed the doing.

You are not owed the feeling.

She sat with that for a long moment.

Never consider yourself the cause of the results of your activities.

The third line. The one she had always skipped over because it sounded mystical. Never consider yourself the cause. What did that even mean? She was the cause. She had written the fix. She had deployed it. She had drained the queue. Of course she was the cause.

Except.

Except that Razorpay had written the original API. Except that the previous engineer at Finova had written the original webhook ingestion framework on top of which her deserializer ran. Except that the database that stored the transactions had been designed by an entire team three years ago. Except that the laptop she had typed the fix on existed because of decades of semiconductor research. Except that her ability to write code at all existed because COEP had taught her, and Aai and Bābā had paid for COEP, and Aaji had paid for Aai's education, and somewhere up the chain there were people whose names Meera did not even know who had made it possible for a girl in Sangli to one day type six lines of Python that drained a queue.

She had been the proximate cause. She had not been the cause.

The fix had moved through her.

The fix had not been her.

She — Meera Kulkarni, SDE-2 at Finova, twenty-seven years old, on the floor of an empty conference room with a mālā in her hand — had been the place where the fix had happened. She had not been the source of it.

The source was — somewhere else. Somewhere larger. Somewhere that did not require Rajesh to react to it on Slack in order to be real.


📱 The Text She Sent Arjun

Meera: I think I just understood karma yoga in an empty conference room at Finova.

Arjun: ...go on.

Meera: I fixed a P1 incident this morning. Everyone praised me in Slack. I noticed I wanted the praise more than I had been letting myself admit. I went to a conference room and did a round on the mālā. Then I read 2.47. And it landed differently.

Arjun: Differently how.

Meera: I've been reading "be detached from the fruits" as a productivity tip. Like — don't be needy, achieve more. But that's not what Krishna is saying. He's saying — you literally are not entitled to the fruit. The wanting of the fruit is a category error. You DID the thing. That's what you were owed. The reaction in the channel is not part of the deal. I had been treating it like part of the deal. It's not.

Arjun: Yes.

Meera: And then the "never consider yourself the cause" part. I always skipped that line because it sounded mystical. But — Arjun, the fix moved through me. Razorpay wrote the API I was integrating with. Some engineer at Finova in 2022 wrote the framework I was using. The laptop exists because of decades of work by people I don't know. I wrote six lines. Six lines was my actual contribution. The rest moved through me. If I take credit for the whole thing I'm — I'm stealing credit from a chain of causes that goes back further than I can see.

Arjun: Yes.

Meera: And then — and this is the part I'm trying to figure out — the wanting didn't go away. I still want Rajesh to mention me in the all-hands tomorrow. Like, literally right now, sitting here on this floor, I still want it. So what do I do with that?

Arjun: That's the actual question.

Meera: Don't be cryptic.

Arjun: Okay. Two things. One — the wanting does not disappear in three months. It does not disappear in three years. Maybe not in thirty. The wanting is the gravity of being embodied. Krishna does not promise weightlessness. He promises a different relationship to the weight.

Meera: Okay.

Arjun: Two — when Rajesh DOES mention you tomorrow, notice the warmth turn on. Don't suppress it. Don't pretend it's not happening. Just — notice it. And then notice that the warmth is not YOU. The warmth is a thing happening IN you. There's a difference between being warmed and being on fire. Karma yoga is about being warmed without becoming the fire.

Meera: Okay.

Arjun: Also you owe me a bun-maska for this analogy. It's a good one.

Meera: 🙄

She put the phone down.

She sat on the conference room floor for a few more minutes.

The mālā was warm in her hand. The yellow book was open on her knee. Outside, through the closed door, she could hear the muffled hum of the office — keyboards, a printer, someone laughing in the next bay, Aditi's voice asking somebody for a Razorpay screenshot.

She had not fixed her relationship with praise in twenty minutes on the floor of a conference room.

But she had, perhaps, started to see it for what it was.

A small warm thing that turned on when other people noticed her. A small warm thing that was not her. A small warm thing she did not have to either chase or push away. A small warm thing she could simply — witness. Like watching a kettle boil. The kettle was boiling. The kettle was not her. She was the one watching the kettle.

She stood up. She put the mālā back in the indigo bag. She put the bag back in her laptop bag. She picked up the yellow book.

She went back to her desk.

She started writing the postmortem.


📝 The Postmortem

The postmortem was, by Finova convention, supposed to follow a template. Five Whys. Timeline. Root Cause. Contributing Factors. Action Items. Lessons Learned.

Meera wrote it cleanly. She did not embellish. She did not minimize. She named what had gone wrong. She named what she had done. She named what the team should do differently.

In the Lessons Learned section, she almost wrote: I should have caught this in code review when I added strict mode to the deserializer in 2024 — failure to anticipate Razorpay's habit of silent schema changes was a foreseeable risk.

She paused over that sentence.

It was — true. It was also a small piece of self-flagellation, the kind of corporate humility that was actually a form of seeking praise. Look how willing I am to take blame. Praise me for my humility.

She deleted it.

She replaced it with: The strict deserializer was the right choice for our integrity guarantees. The miss was in our monitoring — we should have had alerting on dead-letter queue depth, not just on customer-facing symptoms. Action item: instrument DLQ depth alerts across all webhook handlers, owned by me, due Friday.

Clean. Actionable. Neither overclaiming nor underclaiming. The kind of postmortem that did not contain a hidden bid for emotional reaction.

She sent it to the team channel at 4:47 PM.

The reactions came again — a smaller wave this time, polite, professional. Thanks for the writeup. Solid. A few 🙏s.

The warm electric thing turned on again, milder this time. She noticed it. She named it. Warm thing. Not me. She kept reading. She did not, this time, refresh the channel to see if Rajesh had reacted yet.

He had not. He would, probably, by EOD. Or maybe tomorrow morning. Or maybe never. It would, she was beginning to suspect, not actually matter.

She closed Slack.

She opened the next ticket in her queue.


📓 The Eleventh Entry

She got home to the flat at 7:15 PM. Priya was on the sofa watching Schitt's Creek — the same episode they had paused on Friday night, picking up where they had left off as if no time had passed at all.

"Hey," Priya said. "How was your Monday?"

"P1 incident this morning. Fixed it before lunch."

"Beast."

"Thank you." Meera smiled. "Also I had a small spiritual realization on the floor of a conference room."

"Oh god."

"It's a low-key one. Don't worry."

"Tell me later. Come watch David do retail."

She did. She watched David do retail for forty-five minutes. She and Priya laughed in the same places they always laughed. Priya made masala dudh in the kitchen during the next episode's intro and brought back two mugs — one for her, one with extra ginger for Meera.

Meera received hers with both hands. She didn't usually do that with Priya. Priya looked at her funny but didn't say anything.

After the episode, after Priya had gone to bed, Meera sat in the cane chair near the balcony with her notebook.

11. The wanting does not go away. The fix moved through me, not from me. Karma yoga is not productivity philosophy — it is anatomy. I am owed the doing. I am not owed the feeling. The warmth in the chest when Slack lights up is real but it is not me. It is a thing happening in me, like the kettle boiling on the stove. I am the one watching the kettle. — BG 2.47

She underlined it.

Then, smaller:

Sub-note: Aaji at twenty-six wrote "Krishna says nothing is wasted. I have to believe him." She did not say "I have transcended the wanting." She said "I have to believe him." That is the entire spiritual life right there. You don't transcend. You witness. You keep going. You believe Krishna over your own internal weather. The weather happens anyway. You just stop being run by it.

She closed the notebook.

She placed the mālā next to the yellow book on the side table — the new, unofficial shrine of her flat: a worn yellow paperback, an indigo cloth bag, a small spiral notebook with eleven entries.

She finished her masala dudh.

She went to bed.

Tomorrow Rajesh would, or would not, mention her in the all-hands. The warmth would, or would not, turn on. She would notice either way. She would keep going either way. The mālā would still be in her bag tomorrow. There would still be the next ticket in the queue. There would still be Aaji in Sangli, chanting at 4:45 AM whether or not anyone on Slack was watching.

Krishna had not promised that the wanting would disappear.

Krishna had promised something quieter and more enduring.

He had promised that the doing was the part she was actually owed.

The rest — the warmth, the channel, the all-hands, the spot bonus — was just weather.

She was beginning to learn how to stand in the weather without becoming it.

That, finally, was the deal.

Comments

No comments yet. Be the first to share your thoughts.

Leave a comment

0 / 2000