Systems exhibition

Personal product · Local-first workflow

Job Radar

A local-first application that discovers backend roles from public sources, explains resume-to-job fit, and tracks an application pipeline.
Java 21Spring Boot 3.3Next.jsPostgreSQLpgvectorPlaywrightDocker
01Discover02Explain03Track04Prepare
01 / Problem

The constraint.

Replace scattered tabs and spreadsheets with one private workflow for discovery, evidence-based matching, and application state.

02 / Architecture

How it is shaped.

A Java 21 modular monolith owns ingestion, matching, resume intelligence, and tracking over PostgreSQL and pgvector. A Next.js frontend provides the workspace; Docker Compose runs the product locally.

03 / How it works

Decisions made explicit.

  • Local data, no accounts or telemetry
  • Explainable scoring with cited job and resume lines
  • Public APIs first; assisted capture is visible and consent-gated
04 / Failure thinking

Where it can break.

Source adapters normalize and reject irrelevant records before persistence. Optional AI providers are isolated behind an SPI; the core workflow works without one.

05 / Reflection

What I learned.

Automation should preserve user agency, especially when websites, personal data, and consequential decisions are involved.

Inspect the sourceJob Radar on GitHub