CV-matched job feed · FastAPI + React
Job Finder
One feed that aggregates LinkedIn, Indeed, JobStreet and Google Jobs, scores every listing against your CV and explains why it matched.
Sole engineer · 2026 · Designed, built and deployed by Alexus Karl Joaquin.
Sources
4 job boardsScoring
0–100 weightedBackend
FastAPICache
6 hWhat I built
- Scoring engine gives every job a 0–100 match: skill overlap (45%), title relevance (30%), recency (15%), location and remote fit (10%), with a seniority adjustment. Matched skills are shown on every card.
- Concurrent fan-out to four job boards with free direct scrapers first (SEEK JSON API, LinkedIn guest endpoint, Indeed mosaic JSON) and RapidAPI fallbacks only when a direct fetch returns nothing.
- Deduplication across sources, a 6-hour cache to respect free-tier quotas, saved / applied / dismissed tracking with optimistic UI updates.
- Upload a .docx CV and the matching profile (skills, target titles, locations) is re-extracted automatically.
- Same codebase runs as a web app and a Capacitor mobile app; backend swaps SQLite for Postgres with one env variable.
Skills demonstrated
- Python
- FastAPI
- httpx + asyncio concurrency
- Web scraping (SEEK, LinkedIn, Indeed)
- RapidAPI integration
- Scoring algorithm design
- SQLite
- PostgreSQL
- Caching & deduplication
- .docx parsing (CV extraction)
- React
- TypeScript
- Tailwind CSS 4
- TanStack Query (optimistic updates)
- Capacitor-ready mobile build
- Railway
Stack
PythonFastAPIhttpxSQLite / PostgreSQLReactTypeScriptTailwind CSS 4TanStack QueryCapacitor-readyRailway
Screens




More
All projects · Experience · LinkedIn · GitHub