Saptashwa

Saptashwa Bandyopadhyay

Backend and distributed-systems engineer · 9+ years · led a team of ~8 · platforms for 10,000+ employees

The work on this site is personal, built outside the day job: LLM pipelines, evals and inference cost.

Lead result · RoleRadar, an LLM pipeline that scores job postings

21 of 21 good jobs caught, on 59 postings the pipeline was never tuned on.

21 good fits, all caught · 38 other jobs
good fit by the reference labels, and scored above the 6.0 review thresholdother test jobs; no ineligible one was marked eligibledev 40 and holdout 30: used for tuning and checking, not counted

Target: ≥ 95% recall. With 21 good jobs the 95% interval is 85–100%, so the target is met on this sample, not proven.

0ineligible jobs marked eligible
$2.31/monthat 100 new jobs a day (target ≤ $3)
5–12 sp95 per job (target ≤ 30 s)

What was tested

RoleRadar runs on a Raspberry Pi. It reads job postings from company boards and scores how well each one fits. I designed the pipeline, the calibration and this eval. Agents wrote most of the code.

Read the eval write-up →

How it was measured

  • The reference labels are requirement-by-requirement analyses written by an agent (Claude). I corrected the facts about me in two review rounds.
  • I settled 47 disputed requirements by hand: the ones where at least 3 of 4 models disagreed with the reference.
  • The protocol was frozen before the run: pipeline, targets and threshold were written down before any model saw the 59 test jobs. Nothing changed after the results.

Where it falls short

  • Correlation with the reference is 0.85. The target was 0.90. Not met.
  • About 17% of jobs cross the threshold between runs (0.73 points run to run; target 0.5). Planned fix: score borderline jobs (5.5 to 7.5) twice more and average.
  • 21 good jobs is too few to prove 95% recall. The lower bound is 85%.

Everything, at a glance

Tap or hover a technology. The rows that share it light up.

KloisterSelf-hosted project trackerOct – Nov 2026With agents2 teamsat my day job plan their work in it
ReeldexSelf-hosted media library with home streamingJul – Nov 2026With agents8,679 videos1.9 TB catalogued across 5 drives, used daily
RoleRadarLLM pipeline that scores job postings for fitNov 2026With agents21 of 21good jobs caught on 59 untouched postings
SaltmereBrowser city-builder on real sea-level dataOct 2026With agents410 playersin its first 22 days, about 40 minutes a session (as of 13 Nov 2026)
HabitClockAndroid habit tracker with live widgetsMar – Aug 2026With agentsv1.1.3live on Google Play
Trip TrackerSocial fitness product with a ranking backendAug 2023 – Oct 2024By hand4 scheduled jobson a Raspberry Pi: trips every 5 minutes, ranks every 30, daily and weekly resets
Champions League format analysisData and NLP analysis, published as a videoOct 2024By hand5,575 commentsfrom 12 YouTube videos on 10 channels, weighted by likes
MastDeckMastodon desktop client for WindowsMay – Jun 2024By hand4 weeksfrom first commit to multi-account columns and threaded replies
RecallSave-for-later system with a Raspberry Pi pollerNov 2023 – Mar 2024By hand20 monthsof a hand-written poller running every 10 minutes on a Raspberry Pi, 98% of runs clean

Release notes

newest first
2026with coding agents: I design, specify, evaluate and review
Oct – Nov 2026Self-hosted project tracker

Kloister

Self-hosted project tracking: boards, backlog, sprints and a dependency-aware timeline.

My partWrote the spec and the release rules, set each milestone, and reviewed every one before it shipped.
Agent-assistedAgents wrote much of the code under review.
TypeScriptNestJSPostgreSQLPrisma · agent-written
Jul – Nov 2026Self-hosted media library with home streaming

Reeldex

A self-hosted media library: catalogue, tag, de-duplicate by eye and stream around the home.

My partWrote the spec and the runbook, ran each phase with an agent, and checked every phase against its acceptance tests myself.
Agent-assistedAgents wrote all of the code: Rust, Tauri, React and the Flutter phone app.
Rust · agent-writtenTauri · agent-writtenReact · agent-writtenSQLiteFlutter · agent-written
Nov 2026LLM pipeline that scores job postings for fit

RoleRadar

Finds engineering jobs on company boards and scores fit with a calibrated two-step LLM pipeline.

My partDesigned the pipeline, the calibration and the eval, and reviewed every change.
Agent-heavyAgents wrote most of the code.
PythonPostgreSQLSupabaseLLM evalsRaspberry Pi
↺ Same pattern, two years apart. Recall (2024, by hand) is a save-for-later system: a Node.js poller on a Raspberry Pi enriched saved links in Supabase every 10 minutes for 20 months. RoleRadar (2026, with agents) scores job postings using that same Pi-and-Supabase pattern at a bigger scale, with an LLM scoring step on top.
Show all 9 (6 more, back to 2024)Show fewer
Oct 2026Browser city-builder on real sea-level data

Saltmere

A browser city-builder about coastal prosperity and rising seas, driven by IPCC sea-level curves.

My partSet the game design, the climate model's rules and the acceptance tests, and played every release.
Agent-heavyAgents wrote most of the code.
TypeScriptReact · agent-writtenthree.js · agent-writtenClimate data
Mar – Aug 2026Android habit tracker with live widgets

HabitClock

Live home-screen timers for habits: how long since you last did, or avoided, the thing.

My partDesigned it from three earlier counter apps of mine, compared two first builds, and took the working one to Google Play with two more models.
Agent-assistedAgents wrote the code.
FlutterAndroid widgets
2025: first tries with agents fail. I tried coding agents on a network video player. They failed at basics I could do by hand in under an hour: streaming a plain file over the network, making thumbnails. Three more tries in early 2026 got closer but still couldn’t make a thumbnail without downloading part of the file. Later in 2026 Reeldex, a self-hosted media library, did all of it with agent help, and now catalogues 8,679 videos.
2024by hand, before coding agents
Aug 2023 – Oct 2024Social fitness product with a ranking backend

Trip Tracker

A small social fitness product: road-true GPS trips, a feed, and leaderboards reset by scheduled jobs.

My partWrote all of it by hand: the app, the Firestore model and the Node ranking jobs. Used by family and a few friends.
Hand-built
Node.jsFirebaseFlutterGoogle MapsRaspberry Pi
Oct 2024Data and NLP analysis, published as a video

Champions League format analysis

What fans, clubs and players made of the new format: a comment graph, like-weighted sentiment and wage data.

My partDid all of it by hand: collecting the comments, the graph model, the analysis, the interviews and the video.
Hand-built
PythonNeo4jNLPData viz
May – Jun 2024Mastodon desktop client for Windows

MastDeck

A TweetDeck-style Mastodon client for Windows, with columns, multiple accounts and threaded replies.

My partWrote all of it by hand, including threaded replies, which Mastodon's own app doesn't show.
Hand-built
FlutterWindowsREST APIs
Nov 2023 – Mar 2024Save-for-later system with a Raspberry Pi poller

Recall

Save-it-for-later system: apps share links, a Raspberry Pi poller enriches them, everything syncs.

My partWrote all of it by hand, before coding agents: the apps, the Supabase schema and the Pi poller.
Hand-built
Node.jsSupabaseRaspberry PiFlutter

The desk it all runs on

Each project lives on a device here: the Pi on the shelf scores job postings, the monitor runs the project tracker and the city-builder, the TV plays the UCL analysis, and the retired phones on the bookshelf hold the 2024 apps. Click a device to open its project.

Small apps (3)
  • Financial Manager · Agent-assisted: Local-first finance manager for Android tablets.
  • Single Alarm · Hand-built: Alarms that stop on their own, for when your hands are busy.
  • Clapboard · Hand-built: Prototype film clapboard app for Android.

Also built with agents: my own study sites for LLM inference and evals, and for the Claude Certified Architect exam.