aakash@subedi ~ % ./portfolio
Software Engineer
I'm Aakash Subedi, a software engineer in Bengaluru. Right now I'm at Nihin Media K.K., working on AI agents and RAG - building the harnesses and APIs around them, and keeping all of it fast and cheap to run.

I work on both web and mobile, mostly in TypeScript, Python and Go. On weekends I'm usually building something just to see how it works. Off the keyboard, I read books and write poems.
// experience
- 2026—nowNihin Media K.K.
software engineer · January 2026 - Present
- ├─building AI agents and RAG pipelines - retrieval, tools and the harness the agent runs in
- ├─designing and shipping REST APIs
- ├─API performance - finding the slow paths and making them faster
- └─cost optimisation - making things cheaper to run without making them worse
- 2025Ainocular
sde intern · July 2025 - December 2025
- 2025Lookaround.in
sde intern · Jan 2025 - June 2025
- 2022—2026Bachelor in Computer Science And Engineering
// selected work
01Qwen PR Review Agent
TypeScript · Bun · 2026A PR reviewer that runs fully on a local Qwen model through Ollama. I built it to understand how an agent harness really works - the tool loop, guardrails, context and output parsing. Every finding has to quote evidence from the diff, and the harness drops anything it can't verify. There's also an eval runner that plants bugs in a branch and scores recall and false positives.
▸view source — github
02LLM Gateway
Go · 2026llama-server on a port is not an API, so I wrote the layer in front of it. It's in Go and OpenAI-compatible, so any OpenAI SDK just works against my local Qwen3. API keys are stored as SHA-256 digests, rate limits are a token bucket per key, SSE streams tokens straight through, and a model registry decides which backend answers. Ships as a 31 MB container.
▸view source — github
03Express Backend Agent
TypeScript · 2026You describe a backend, it writes one that compiles. A planner agent makes the file plan, then files are written layer by layer, checked with real tools (prisma validate, tsc) and sent back to the model with the exact errors until they pass. Jobs run through BullMQ on Redis, so the API stays fast while workers do the heavy part.
▸view source — github
04Zomato MCP
TypeScript · 2025My take on Zomato's MCP idea. A chat agent on the Vercel AI SDK that checks what's available, places orders and lists them, through typed tool calls that hit Postgres via Drizzle. It's scoped to the logged-in user, so it can't see anyone else's orders.
▸view source — github
05CLI Music Player
JavaScript · 2025Search a song and it plays, right in the terminal. Audio streams from YouTube through mpv, with playlists, auto-play and next/previous. It even installs mpv for you on setup - brew, apt, choco, whatever your system has.
▸view source — github
note: every saturday/sunday i build a lot of projects (please check my linkedin)
// writing
- ▸How Agents Work at Scale
└─Oct 2026 · 9 min read
- ▸Evolution Takes Time
└─Feb 2026 · 5 min read
- ▸My 2025 Session
└─Dec 2025 · 4 min read
// stack
- languages
- typescript · python · go
- ai
- ai agents · rag · agent harnesses · vercel ai sdk · openai sdk · ollama · llama.cpp
- backend
- rest apis · node.js · bun · express · nestjs · fastapi · bullmq
- data
- postgresql · redis · drizzle
- web
- react · next.js
- infra
- docker · aws
// github
// contact
- github
- github.com/subediaakash
- linkedin.com/in/aakash-subedi
- x.com/void_aakash
- based
- Bengaluru, India