Personal project
Job Application Tracker
A job-search tracker built for me and friends running their own searches, because a spreadsheet tells you what you applied to, not what has gone quiet or where you actually drop off.
The problem
I was running my own job search out of a spreadsheet and it wasn't working, and friends were doing the same. A list records what you applied to, but it never surfaces which threads have gone silent, what the next action is, or what your real conversion rate is at each stage. Those were exactly the numbers we wanted to see.
What I did
Built it server-first on Next.js with the business logic isolated in a tested library layer: an attention ranking that pushes overdue follow-ups and stale applications to the top, a staleness measure on every row, a per-application task queue and structured interview timeline, and funnel analytics computing conversion and median days per stage. Added a bookmarklet that captures a posting from the page you are already on (job boards block server-side fetches), with the server-side lookup guarded against SSRF.
Outcome
The tool I run my own search from, and friends now run theirs from it too. Deployed as a multi-user app with a no-auth demo sandbox, per-user scoping from the first migration, and full JSON/CSV export so everyone keeps their own data. The data layer is database-portable, running SQLite locally and Postgres in production. The attention list deliberately has no dismiss button — it only empties when the work is done.