Skip to content

Engineering Journey

The through-line

The same instinct shows up in every role: find the work the system did not need to do. Scroll through four milestones to see how the problems changed and what carried over.

  1. Computer Engineering
  2. C++ / Media Processing
  3. Performance Engineering
  4. S3 / MXF
  5. Distributed Systems
  6. AI + IPC
  7. Systems Optimization
  8. Hardware-Assisted Verification
  9. Netlist Optimization
  10. Timing-Driven Resynthesis

4 milestones·6 case studies·every claim traced to a source

1/4·0/6

2018

Patiala, India

BE, Computer Engineering

Thapar Institute of Engineering & Technology

Where the fundamentals came from: algorithms, data structures, and the systems layer underneath them.

  1. Computer Engineering

2022

Noida, India

Software Engineer

Interra Systems

Backend engineering on an automated file-based media QC platform, focused on analysis throughput and cloud file access.

  1. C++ / Media Processing
  2. Performance Engineering
  3. S3 / MXF
  4. Distributed Systems
Building the chunk map from container metadataBefore: the reader thread reads essence data from the file in order to build a chunk map, which is then used to construct random access points. After: the chunk map is built directly from the container sample tables before reading begins, and tracks it covers are removed from the read list.BEFOREMedia filetens of GBReader threadChunk mapoffset + lengthAccess pointstasked to CPUsThe map is built by reading essence: gigabytes of video, to recover what the header already stored.AFTERContainer tablesalready in headerChunk mapbuilt from metadataAccess pointstasked to CPUsNo essence is read to build the map.ProRes / DNxHDtrack dropped from the readlist entirelyAVC-Intraparameter sets live in thebitstream, so the read isbounded to the first 5000bytes of each sampleChunk offsets and lengths are recorded in the container.They are not derived from the essence, so they never required reading it.

The optimization that defines this period: build the chunk map from container metadata instead of reading the essence.

2025

Noida, India

Senior Software Engineer

Interra Systems

Ownership widened from backend performance work to cross-boundary architecture and debugging across the whole stack.

  1. AI + IPC
  2. Systems Optimization
Cross-runtime inference over IPCThe native C++ product sends audio processing requests over named pipes to a separate Python server process that runs the inference model and returns results. Each runtime stays in its own process, giving the inference path an independent crash domain and upgrade path.NATIVE PROCESS — C++Analysis pipelineIPC clientstructured messagesSEPARATE PROCESS — PYTHONInference serveroptimized runtimeLanguage ID · speech-to-textREQUESTRESULTnamed pipesEach runtime keeps its own crash domain and its own upgrade path.

The architectural answer to a language boundary: each runtime keeps its own process, connected by a structured message layer.

2026

Bengaluru, India

Staff R&D Engineer

Synopsys

Moved from media verification into hardware verification: synthesis and optimization for a hardware-assisted emulation platform.

  1. Hardware-Assisted Verification
  2. Netlist Optimization
  3. Timing-Driven Resynthesis
Local rewriting against global timingA netlist graph in which a small region is rewritten locally, while arrival times propagate forward from inputs and required times propagate backward from outputs across the whole graph.REWRITTEN REGION — LOCAL COSTinputsendpointARRIVAL TIME — PROPAGATES FORWARDREQUIRED TIME — PROPAGATES BACKWARDStructural cost can becomputed from the regionalone.Slack cannot. It dependson the whole cone aroundthe rewrite.

The current problem: a local graph rewrite evaluated against timing, which is a property of the whole graph.

05Capability map

What builds on what

The same capabilities as a dependency graph rather than a timeline. Foundational work sits on the left; everything to the right of it was only reachable because of what came before.

Hover or focus a capability to trace what it builds on and where it leads. Nodes with a case study behind them link straight to it.

The language every system on this site is written in.

Algorithm design and the analysis that decides which one ships.

Producer/consumer pipelines, per-core work distribution, lock-free structures.

Traversal and topological ordering over very large directed graphs.

Container formats read at the byte level: MXF, MOV/MP4, and their sample tables.

Finding the work that did not need to happen, and measuring before deciding.

Job queues, distributed locking, ordered aggregation, failure handling.

Running inference outside the native process, across a structured message boundary.

Restructuring a mapped netlist without changing what it computes.

Current work: making timing constraints part of the restructuring decision.