I am a full stack developer with a backend focus at Josh Software in Pune, working on a production IoT water-metering and utility-billing platform. Meter readings arrive over MQTT into a Go service, a Ruby on Rails API turns them into bills, and React apps serve admins and residents, all on AWS. I own the billing module and built site onboarding end to end. My best stories come from production debugging, so I write them up.
Joined as an intern in January 2026 and converted to full-time in six months. B.Tech in Computer Engineering (Honours in Cyber Security), CGPA 9.26.
| Languages | |
| Backend | |
| Frontend | |
| Data | |
| Cloud and DevOps |
Mostly easy and medium problems in C++, updated daily from my LeetCode profile.
Upstream fixes, each reproduced before claiming it, with the evidence in the PR.
- Failure: the chart ran the exporter as
privileged: true, which many clusters refuse. - Fix: showed on a kind cluster that
SYS_PTRACEalone is enough and made it the default, withprivileged: trueone value away; upgrades, AppArmor, SELinux and GPU nodes handled. - Result: 587 metric lines unprivileged against 604 privileged. Review found 0 container and 0 pod series on cgroupfs nodes; the second PR restored them (72 and 36) and a CI check in the third guards them. PR #2584, #2591, #2592
- Failure: the operator accepted duplicate time intervals and credential-less Webex receivers that Alertmanager then refused, and its Azure discovery silently dropped settings.
- Fix: validation for both API versions, and the missing Azure fields written with the generator's own helpers.
- Result: every change pinned by tests that fail without it, including a golden-file case combining environment, authorization, proxy and redirects. PR #8896, #8897, #8898
CopyQ: a frameless window and a hidden menu bar
- Failure: users wanted a compact clipboard manager; the frameless option existed in code with no way to turn it on.
- Fix: proved dragging and resizing work on Wayland with a throwaway Qt window first, then built the checkbox, resize grip and drag-from-body; the menu bar collapses to zero height so its shortcuts still work.
- Result: eight review rounds across two PRs, both merged. PR #3733, #3732
| Project | What it is | Merged PRs | Stars |
|---|---|---|---|
| community-platform | Precious Plastic community platform (React, TypeScript) | #4946 #4950 #4954 | |
| Prometheus Operator | Kubernetes operator for Prometheus and Alertmanager | #8896 #8897 #8898 | |
| Kepler | Energy use per Kubernetes pod and container, as Prometheus metrics | #2584 #2591 #2592 | |
| CopyQ | Clipboard manager with advanced features (C++, Qt) | #3732 #3733 |
Every merged PR of mine outside my own repos: see the full list on GitHub.
Open now: cert-manager, OpenTelemetry Operator, Rook and Argo Rollouts. GitHub lists them under "Contributed to" on this profile.
Production bugs, written as stories with the measured fix.
- The Water That Flowed Backwards: one line of Go made meters report negative consumption.
- The Restart Command That Only Worked When a Human Typed It: the command was right; the shell was not.
- The Fix That Only Reached Half the Server: one feature recovered after a config fix while the other failed for a day and a half.
I am happy to talk about backend systems, IoT data pipelines and open source. The fastest way is LinkedIn.

