123
JobTrackerPro is a robust, enterprise-grade job application tracker designed to streamline the chaotic job hunt process.
I designed this solution to move beyond simple CRUD operations, focusing on **Robust System Design, Atomic Data Integrity, and Cloud-Native Scalability.
✨ Key Engineering Highlights:
🔐 Hybrid Security Architecture: Implements a custom authentication system supporting both OAuth2 (Google & GitHub) and standard JWT-based local login, allowing seamless account merging and recovery.
📧 Async Email System: Built a non-blocking password reset flow using @Async events and HTML templates to ensure fast API response times while sending transactional emails via Brevo (SMTP).
☁️ Cloud Native Storage: Integrates directly with Cloudflare R2 (S3-compatible) via the AWS SDK to handle user avatar storage and social image syncing efficiently, keeping the database lightweight.
⚡ Multi-threaded Analytics: Leverages Java CompletableFuture to calculate dashboard statistics in parallel threads, ensuring instant response times even with large datasets.
🛡️ Resilient Error Handling: Features a Global Exception Handler that standardizes all system errors (DB, Auth, File Uploads) into clean JSON responses for the frontend.
🛠️ The Tech Stack:
Language: Java 21
Framework: Spring Boot 3.2, Spring Mail (SMTP)
Frontend: Angular 17 (Signals), TailwindCSS, D3.js
Security: Spring Security 6, OAuth2 Client, JJWT
Database: PostgreSQL (Production) / MySQL
Storage: Cloudflare R2 (AWS SDK v2)
DevOps: Docker, Google Cloud Run, GitHub Actions
💻 Source Code
This project is split into two repositories:
🎨 Frontend (Angular): https://github.com/thughari/JobTrackerPro-UI
⚙️ Backend (Spring Boot): https://github.com/thughari/JobTrackerPro
This project is Open Source (MIT). Feel free to explore the code to see how modern Spring Boot patterns are implemented in a production environment.
Built with