04 · Microservices
JobNest.
A job portal on Spring Boot microservices (auth, jobs, applications) secured with JWT and RBAC, with a normalized, indexed MySQL schema.
01 · The problem
A job portal mixes very different workloads (sign-in, job listings and search, applications) and serves two kinds of users. Search in particular has to stay fast as the number of listings grows.
02 · What I built
- Spring Boot microservices for auth, jobs, and applications, each deployable on its own.
- JWT authentication with role-based access control for job seekers and employers.
- A normalized MySQL schema with indexes on the columns used by search.
- A React and Redux frontend with role-based views, lazy loading, and client-side caching, consuming RESTful APIs.
03 · Key decisions
- 01
Split services by domain
Auth, jobs, and applications change for different reasons, so separating them keeps each codebase small and lets them be deployed independently.
- 02
Index the search path
Indexing the columns that search filters on reduced search latency by 35%.
- 03
Stateless JWT authentication
Each service can verify a token on its own, and roles in the token drive what each type of user can see and do.
04 · Results
- 35% lower search latency
- Independently deployable services
- Separate, role-based experiences for job seekers and employers