I'm a final-year CS student at REVA University (Bengaluru) and an SDE intern on the manufacturing-systems team at Cepheid (Danaher). Most of my spare time goes into open-source C: reading unfamiliar codebases, finding memory-safety and correctness bugs, and getting the fixes merged with a reproduction attached.
Upstream work on C and Python projects — mostly memory-safety and correctness fixes, each with a reproduction and a regression test where the project supports one.
| Project | Contribution | Status |
|---|---|---|
| pgmoneta | Double frees, use-after-free, unchecked allocations, an off-by-one stack overflow, error-path null dereferences, and corner-case tests for the core string helpers | 48 merged · 6 open |
| pgagroal | An unbounded strcat stack overflow in the CLI, unchecked reallocs, and silent truncation in the numeric append helpers — found by writing the corner-case tests |
15 merged · 7 open |
| pgvictoria | Cross-ported allocation checks and string-helper fixes, with corner-case tests for the append family | 7 merged · 10 open |
| pgexporter | Unchecked allocations in the YAML and network paths, plus a kqueue accept-drain fix ported from pgagroal | 13 merged · 3 open |
| grass | Null pointer dereference in the vector library, a null function pointer crash in v.to.rast, 64-bit cell counters, and unbounded environment growth in the runtime setup |
5 merged · 5 open |
| gnuradio | QA test for the real-time scheduling bindings, and float-tolerance fixes for two numeric tests that compared approximations for bit equality | 2 merged · 2 open |
| website | Docs fixes, and a style guide section defining deprecated vs no longer served vs removed for APIs | 2 merged · 2 open |
| jabref | Repaired fetcher tests that broke when upstream metadata services changed their responses | 3 merged |
| hiring-agent | AI agent to evaluate and score resumes. | 2 open |
| flux2 | Removed dead fields from the install flags | 1 open |
- Two stack overflows hiding in plain sight — a
strcatinto 512 bytes in pgagroal and a"%.8f"into 30 bytes in GRASS GIS: how I found them, proved them, and picked the fix each project would accept.
|
A control plane for Claude Code across multiple accounts and machines: git-backed memory sync, a skill registry, and token-usage reports parsed from local transcripts. Stdlib-only Python, 160+ tests in CI on 3.10–3.13, released to PyPI by CI. pip install claude-orc
|
Is this invoice real? Checks whether a document's independent encodings agree — signed QR, text layer, line-item arithmetic, amount in words, PDF structure — instead of pixel forensics. Zero false positives across 9 independent corpora. Razorpay AI Buildathon. |
|
Splits 100–2,000-page mortgage packages into 27 document types at 91% accuracy. A cost-aware cascade keeps most pages away from the LLM; Naive Bayes stitches tables split across pages. 2nd place, InfrX 2026. |
Waste intelligence for Bengaluru: Sentinel-2 dump detection, XGBoost risk prediction over a 552-cell grid, and route optimisation, behind a FastAPI + Next.js dashboard. Top 5, AWI SpaceTech Hackathon. |
All 40+ projects, grouped by area: saipranav.me — or open the terminal there and type ls projects.
- SDE Intern, MES — Cepheid India (Danaher) · Sep 2026 – present
- Backend Developer (freelance) — Contralyne, AI contract review · May – Sep 2026
- Software Engineering Intern — MyStartupWave · Dec 2025 – Aug 2026
- Project Intern, Cybersecurity — iSPIRT Foundation · Nov 2025 – Aug 2026
- Research Intern, Explainable AI — CSIR-4PI · Jul 2025 – Jan 2026



