AVAILABLE FOR SELECT PROJECTS
BASED IN BENGALURU, INDIA · WORKING WORLDWIDE

Software Engineer — systems, interfaces, the occasional 3AM incident

I build products where engineering, interaction and visual design meet.

Building Systems That Scale, From Database To Pixel.

I build products that hold up under real traffic — from the database up to the pixel. Ten years turning ambitious roadmaps into software that ships, and occasionally into technical debt I fully intend to pay off.

SCROLL TO EXPLORE

Good engineering is invisible until it isn't. I try to make the boring parts — auth, sync, migrations — disappear, so the interesting parts get the attention.

WHAT I BUILD

10+ YEARS BUILDING SOFTWARE
02

BACKEND & INFRA

APIs, databases, authentication, synchronization and reliable infrastructure.

Node.js · PostgreSQL · SQLite · Redis · Realtime Sync
03

INTERACTION

Thoughtful UX, motion and realtime interfaces that make complex systems feel simple.

WebGL · Three.js · GSAP · WebSockets · Micro-interactions
04

SHIPPED SOFTWARE

Turning ideas into production-ready software from architecture to deployment.

Architecture · Docker · CI/CD · Cloud · Zero-Downtime

Selected
Work

2025 — Realtime infrastructure

Nimbus Sync Engine

Rebuilt the collaboration layer for a 40-person design tool from a polling API to a CRDT-backed WebSocket engine. Cut sync latency from ~800ms to under 60ms and made concurrent editing actually pleasant.

RustWebSocketsCRDTRedis

2024 — Platform migration

Atlas Analytics

Led the migration of a legacy reporting stack to a streaming pipeline, replacing 6-hour nightly batch jobs with sub-minute dashboards, without a single day of downtime for finance.

KafkadbtSnowflakeTypeScript

2023 — Design systems

Drift Components

Designed and shipped an internal component library adopted across 12 product teams, cutting new-feature build time by roughly a third and finally killing four competing button styles.

ReactStorybookFigma Tokens

How I
Work

Less about frameworks, more about how a system of people and code stays sane as it grows. A rough version of the loop I run on most projects:

01

Find the real constraint

Usually it isn't the one in the ticket. I dig until I find the thing actually limiting the system.

02

Prototype in the ugly version

A working, unstyled thing beats a polished mockup for deciding if an idea survives contact with data.

03

Instrument before you optimize

No performance work starts without a number to move. Otherwise it's just vibes with extra steps.

04

Leave it better documented

The next person touching this code is probably me, in six months, having forgotten everything.

Currently open to new roles & select contract work

Let's Talk →
deeeepakgm@gmail.com

Have a project in mind, a difficult systems problem to solve, or an engineering role open? Send a message or email directly.

Send an Inquiry

Leave a note here and I'll get back to you within a couple of days.

Based in Bengaluru, India · working worldwide