Lately, I've been building RGB-D reconstruction tools, architecture checks for pull requests, indoor-routing software, and computer-vision workflows at NiftyBooks.
I turn depth scans and supplied camera poses into reproducible 3D meshes, with a correctness reference for every faster path.
Same fixture bytes on Linux, macOS, and Windows.
More about this project — SpatialForge
Depth frames go in; a 3D mesh comes out. I built the stages in between so I can trace each result back to its scan, stop and resume a reconstruction, and check that a faster implementation hasn't changed the answer. Camera poses are supplied, not estimated.
Byte-identical fixture output across Linux, macOS, and Windows. Evaluated on real TUM scans and a synthetic ICL-NUIM scene.
I built architecture checks that show what a pull request changes, link findings to source lines, and enforce base-branch policy.
One deterministic analysis for the CLI, GitHub Action, and browser.
More about this project — System Synthesis
A few lines of Compose can expose a database or change who depends on a service. I built a review tool that shows those changes as a graph, links findings to the source, and checks the pull request against rules it cannot rewrite for itself.
The CLI, GitHub Action, and browser share one analysis. Policy comes from the trusted base branch.
Base / Head → Canonical → Semantic diff → Policy → PR / SARIF
Campus-to-room navigation with step-free routes, shared 2D/3D maps, and offline reopening after installation.
7,238 audited journeys across four synthetic venues.
More about this project — VoiceGIS Indoor Navigation
Directions should get you from the campus gate to the right room, including a step-free route when you need one. This app shares one verified map across search, routing, and 2D/3D views. It can reopen offline after installation and pauses when it can't trust the route or position.
7,238 audited journeys across four synthetic venues. Cold-offline reload is covered by production-browser tests.
At NiftyBooks, I build consistent storybook illustrations and tools to edit a character across pages without regenerating every image.
One tested editing path: 90+ s → about 5–6.5 s.
More about this project — NiftyBooks illustration system
Keeping a character recognisable across a storybook is harder than generating one good picture. At NiftyBooks, I build illustration and editing workflows that let an editor find that character across pages, correct a mask, and change a region without regenerating the whole image.
Replacing one unnecessary generative step with OpenCV cut the tested editing path from 90+ seconds to about 5–6.5 seconds.
A GIS request compiler that checks plans before execution and records what actually ran.
More about this project — VoiceGIS
I started with voice commands for maps, then worked on the harder question: what is the app actually allowed to do? VoiceGIS turns a request into an inspectable plan using real layers and fields, checks it before execution, and records what ran. It works with GeoJSON, OGC services, and MCP clients.
Typed plans and per-operation receipts; zero runtime dependencies in the core. The separate legacy parser scored 504/538.
Debt-clearing graph solvers with checkable certificates and a separate simulation of missed payments.
More about this project — CashFlow
What does ‘simplify debts’ actually change? CashFlow lets you compare the original IOUs, cancel loops without adding counterparties, or simplify further and see every new relationship. Underneath are three graph solvers, checkable optimality certificates, and a separate simulation of what happens when someone can't pay.
51,375 synthetic obligations cleared in 1.26 seconds; the optimality certificate checked in 3 milliseconds.
An IFC analysis prototype: measured building quantities first, agent-generated suggestions second.
More about this project — AgenticBIM
I used IFC building files to explore where agents can help without inventing the measurements. IfcOpenShell extracts quantities first; the agents use those values for cost and code-checking suggestions. This is a prototype, not a certified compliance tool.
Python
IfcOpenShell
FastAPI
CrewAI
A repository capture of the prototype's report screen. Its agent-written suggestions are not a certified building-code or cost assessment.
A document-writing experiment with validated plans, registered tools, and bounded revisions.
More about this project — Autonomous Document Agent
An experiment in giving a document-writing agent clear limits: registered tools, a validated plan, and at most two revision passes. A local builder produces the Word file, and offline tests inspect the output. The agent doesn't independently check the facts it writes about.
A browser sketchpad connected to a sketch-conditioned image-generation workflow.
More about this project — Sketch-to-Image
Draw a rough idea on a browser canvas, send it to a sketch-conditioned generation workflow, and inspect the illustration. I built this to explore the drawing-to-generation interaction, not to train a new image model.
(The work I've done with teams, alongside my own projects.)
AI Engineer Intern
NiftyBooks FlexCo
Aug 2025 — Present
Mönchengladbach, Germany · Remote
I build storybook illustration pipelines and tools for finding and editing the same character across pages.
Role details — NiftyBooks FlexCo
Converted story text into scene-level inputs and generated consistent multi-page illustrations using diffusion models, character references, and ComfyUI.
Built a cross-image editing workflow for character matching, editable segmentation masks, face replacement, inpainting, recolouring, and other region-based edits.
Connected generation and editing workflows to FastAPI endpoints and handled inputs, outputs, assets, and failures between pipeline stages.
Before NiftyBooks
01
Jun 2024 — Jul 2024
Remote
Freelance Software Developer
TECOSYS
I integrated AI-processing APIs into a client's web product, including request handling and frontend workflows.
Role details — TECOSYS
Implemented request adapters, response normalization, and failure handling for external AI-processing endpoints.
Documented API contracts and workflow decisions for project handoff.
02
May 2023 — Jul 2023
Gurugram, Haryana · Remote
Full-Stack Developer Intern
Diginique Techlabs (iHUB)
I contributed to a restaurant software project, working on its backend, data flow, and interface.
Role details — Diginique Techlabs (iHUB)
Developed backend and data-flow features using Python, MongoDB, and TypeScript.
Worked from Figma designs to implement interface changes and create clearer engineering handoffs.
03
Notesfrom the work.
(Short write-ups on bugs, benchmarks, and design choices I wanted to document.)
I'm a Computer Science graduate and an AI Engineer Intern at NiftyBooks, working on computer-vision pipelines, image-editing tools, and model-serving APIs.
Outside work, I build spatial software and developer tools. I like being able to test the difficult parts: whether a faster algorithm changes the answer, or a route stays usable when a lift goes down.
Tools I use
(These are the technologies that show up in the work above, not a list of everything I've tried.)
01Languages
Python
TypeScript
JavaScript
C++
SQL
02Backend and distributed systems
FastAPI
Node.js
PostgreSQL
Redis
REST
WebSockets
03Machine learning and vision
NumPy
PyTorch
RGB-D / TSDF
Diffusion models
Segmentation
Model inference
04Frontend and systems tooling
React
Next.js
Yjs
Web Workers
WebAssembly
Docker
GitHub Actions
05
Let’stalk.
(Email works, and so does the form. Both reach me.)
I'm looking for software engineering and ML systems roles, especially work involving backend infrastructure, computer vision, or spatial software.