Swarina Jaiswal

Software developer · Bengaluru, India

I build software that lets you watch hidden systems work.

Going deep on AI infrastructure, and always exploring tech, food and new places.

About me

I’m Swarina, a software engineer at Amazon. I work on backend and distributed systems, and lately on AI infrastructure. Outside work I build whatever I’m curious about, and I like taking each thing all the way to something that works.

I say yes to new things first and work them out on the way, in tech, in food, in travel. Growing up, travel was never on the table. Now it is, and I keep a diary of it.

What I'm looking for

Problems that are fuzzy at the start and clear by the end. Right now I’m drawn to AI infrastructure: the systems that keep models running reliably at scale, and the tooling that makes what they do easier to see. I like learning in the open, moving fast, and work that still leaves room to travel and say yes to the next new thing.

Experience

  1. Software Engineer II, AmazonDec 2025 to present · Bengaluru, India

    Leading an event-driven task-management platform that took 540+ stores from paper to digital, replacing more than half of 120+ in-store workflows. Exactly-once processing rides an at-least-once queue through idempotency keys and conditional writes, and the workflow schema is versioned so definitions evolve with zero downtime.

  2. Software Engineer I, AmazonJan 2024 to Dec 2025 · Bengaluru, India

    Built the backend services and real-time streaming pipeline behind store productivity, classifying floor activity into direct and indirect labour from capture through enrichment to reporting. Led a phased rollout across North America, Europe and Japan that cut task resolution time by 21.7% and lifted order accuracy and throughput.

  3. Software Engineer, UKGJul 2023 to Dec 2023 · Noida, India

    Designed Java and Spring Boot REST APIs for workforce-management features on UKG Dimensions, serving ADP on a shared, multi-client platform without regressing other clients. Backed each change with test suites that raised coverage and cut regression bugs.

  4. Product Engineer (Internship), Crio.DoJan 2023 to Jun 2023 · Bengaluru, India

    Worked with the Backend Development track's product owner to build hands-on projects, learning material and mock interviews, bringing a learn-by-doing approach to the curriculum.

  5. Tech Scholar (Apprenticeship), PhonePeNov 2022 to Jan 2023 · Remote

    A selective backend apprenticeship in data structures, algorithms and services built with Spring Boot and Java, culminating in a portfolio of deployed projects.

  6. React Developer (Internship), SmartifyNov 2021 to Apr 2022 · Remote

    Built an internal CRM in React, Material UI and Supabase, shipping 20+ screens to a shared design system and wiring Supabase APIs for real-time updates.

Projects

lucent

A distributed vector search engine you can watch think.

The lucent demo showing the embedder, the coordinator and two shards as a live graph.

Self-hostable semantic search whose internals are the interface. Documents are embedded locally with a CPU sentence-transformer, sharded across processes with a hand-rolled HNSW index per shard, and replicated with automatic failover. A from-scratch mini-Raft owns the shard map through consensus.

Every query’s journey renders live: embedding, shard routing, the approximate nearest-neighbour traversal on each shard, the merge, and any failover along the way. The hosted demo replays a real session entirely in the browser.

Built with
C++20, Python, TypeScript
Started
Last updated
Languages
C++ 50%, TypeScript 23%, Python 20%

llm-xray

See how an LLM works end to end, live, on a real GPT-2.

llm-xray mid-generation, with each stage of GPT-2's forward pass shown in its own panel.

Not a diagram of how language models work, but the real machine running. A real GPT-2 generates text one token at a time with every stage of the forward pass exposed: tokenization, embeddings, attention, the feed-forward network, the prediction forming layer by layer, and sampling. Every number on screen comes from the model itself.

It began as a fact-check of an article on how LLMs work and grew into a tool for seeing the pipeline instead of reading about it.

Built with
Python, PyTorch, Transformers, Gradio
Started
Last updated
Languages
Python 100%

packet-voyager

The nature documentary of the internet.

packet-voyager's 3D globe with submarine cables glowing across the oceans.

Type a URL and watch your packet leave home, dive into a submarine cable on the ocean floor, hop through internet exchange points and arrive on another continent, animated on a 3D globe with cinematic camera work.

It uses real traceroute data from probes around the world, city-level geolocation, more than 400 real submarine cable routes, and a comparison against the speed of light.

Built with
TypeScript, Next.js, 3D globe
Started
Last updated
Languages
TypeScript 96%, CSS 3%, Dockerfile 1%

quarry

Ask your own questions of every job posting, answered with calibrated probabilities.

A title card for quarry, with its name, the line "Ask your own questions of every job posting", and TypeScript and Cloudflare Workers tags on a dark gradient.

Most job search tools pull a fixed set of fields from each posting, because running a language model over every posting for every question would be too slow and too costly. Quarry takes the other road. A daily pipeline answers a standard set of questions about every posting with typed values and calibrated probabilities rather than generated text, so “remote or hybrid, at least 70 percent” means something and a posting nothing has been asked about is never shown as a no.

You can then ask your own question of the postings a search leaves, answered on demand and bounded by a budget that reserves before it spends. Search runs entirely in the browser over a static, content-addressed index, so a query lives in the URL, the back button works, and nothing is logged.

Built with
TypeScript, Cloudflare Workers, D1
Started
Last updated
Languages
TypeScript 99%, CSS 1%, HTML 1%

groundhog

A local-first checker for why your prompt cache is not paying off.

A title card for groundhog, with its name, the line "Local-first prompt cache checker", and TypeScript, Node and CLI tags on a dark gradient.

Every major provider discounts a repeated prompt prefix heavily, but only when the prefix is byte for byte identical to the last one. When it is not, nothing warns you: a normal response arrives at full price. Groundhog finds the reasons that happens, names each one, and says what to do about it.

It runs entirely on your machine, with no account and no network calls on the check path. Anthropic and OpenAI are covered today, plus a generic OpenAI compatible endpoint, and every number it prints carries its confidence, so you always know what is measured and what is still a guess.

Built with
TypeScript, Node
Started
Last updated
Languages
TypeScript 100%

workbench

A productivity layer that makes Claude Code and Codex sessions cheaper and sharper.

A title card for workbench, with its name, the line "A productivity layer for Claude Code and Codex", and Python, Shell and CLI tags on a dark gradient.

A thin layer of shared working defaults, a few skills and scripts, and a measurement loop for Claude Code and Codex. It configures the tools rather than wrapping them: the always loaded instructions stay tiny, tool output stays bounded, and a session ends with a handoff rather than a context grown for weeks.

The idea is to make the efficient behaviour the default and then prove it worked. A small command measures what a session actually spent, so a baseline and a week of use can be compared, and nothing is added without evidence or kept once it stops earning its keep.

Built with
Python, Shell
Started
Last updated
Languages
Python 93%, Shell 7%

Travel diary

From @swarina.mov, a diary kept for the version of me who only dreamed of this.

Contact

[email protected]