The longer version, for people who scrolled this far.
I'm Mahesh Kumar Muddunuru — an engineer in Vancouver. Days at Fortinet, on release infrastructure for endpoint security. Evenings on TapNGame and client platforms. The throughline in all of it: I take software the whole way, from the spec to the support inbox, and I like the unglamorous parts most engineers route around.
How I got here
The kid taking the family computer apart
Before I knew the word "engineer," I knew the feeling — wanting to know how the thing in front of me worked, then making it do something it wasn't built to do. Nobody asked me to fix the neighbour's modem. I just wanted to.

Learning to actually build things
The classes I cared about weren't the popular ones: networking, simulation, basic ML, computer vision. I wanted to know how packets really got from A to B and how a model learned to tell things apart. That curiosity is still the engine.

Running SAP for 150 enterprises
First production job, supporting GM, IKEA, Philips, Apple, HP, Microsoft, Dell. I learned fast that a backend decision I made at 11 p.m. could ruin someone's payroll the next morning. I take production seriously because someone is always on the other side of it.

Master's: networking, security, ML
My thesis was ML-based detection of client-side MITM attacks. Around it: Wi-Fi monitoring with Kismet, vehicle detection comparing HOG+SVM against YOLO, black-hole attack detection in MANETs on ns-3. Two years at the seam between networks and learning systems.

Fortinet: shipping at scale
Test automation and release infrastructure for FortiClient — endpoint security on millions of macOS, Windows, and Linux machines. Python, Selenium, Jenkins, RabbitMQ orchestration, across VPN, ZTNA, SAML, and antivirus. A bad release here breaks security on someone's laptop. So we don't do bad releases.

TapNGame: the thing I wished existed
Booking a court in Vancouver was phone calls and dead WhatsApp threads, so I built the platform I wanted to use — and everything a real product needs around it: payments, notifications, support, growth. Live on the App Store and Google Play. The full story is on its own page.
Read the story →
How I work
I don't stop at the diff
Writing the code is the easy part. The job is everything after — does the user get what they came for, does the metric move, did the support ticket stop coming in. I stay until that's true.
See the bug first
I reproduce the bug before touching anything. Find the exact seam where it broke, change only what the evidence demands, then write the test that should have caught it.
Data before decoration
Data model, concurrency, failure modes, contracts — those get worked out first. Surfaces are easy to change. The system underneath isn't, and the cost of getting it wrong shows up in production.
AI types faster. I still make the calls
Claude Code and Cursor help me draft, refactor, and verify. They don't decide what to build or what's good. The more leverage AI gives me, the more those judgement calls matter — not less.
What I ship with
Daily drivers only — the longer list comes out in conversation, not in chips.
Languages
The ones I think in daily, in production.
Mobile & web
Greenfield to App Store / Play delivery, end to end.
Backend & data
Where production systems quietly succeed or fail.
Release engineering
Shipping with confidence across millions of endpoints.
Security & networking
FortiClient release work, plus research in intrusion detection.
AI-native engineering
A real shift in how I ship, not a buzzword.
Off the keyboard
Badminton year-round, long runs in season, steady strength work between, hiking when the weekend opens up. I'm suspicious of anything that promises the short way around.
TapNGame exists because I'm the user: I know exactly what it feels like to want to play tonight and have an old booking system stand between me and a court.

On the trail
Vancouver Marathon · 2023
Vancouver · everydayThat's the long version.
If any of it sounds like someone you want on your team — or building your platform — say hello.
Get in touch