Beginner · 2–3 weeks
Student Course Registration Portal
Students browse courses, check seat availability, register/drop courses, and view their timetable. Admins manage courses, instructors, and enrollment caps. Enforces prerequisite courses and prevents double registration.
Why this project
Shows constraint validation beyond simple CRUD — prerequisites, capacity limits, and enrollment windows are real business rules interviewers probe.
Tech stack
Java 17Spring Boot 3Spring Data JPAPostgreSQLBean ValidationSpring Security
Skills demonstrated
- Complex validation
- Many-to-many relationships
- Capacity constraints
- Role-based APIs
Interview talking points
- Modeling Student-Course as enrollment with status and timestamps
- How you enforce prerequisites before registration
- Race condition when last seat is taken — optimistic locking approach
- API design for admin vs student views
Problem statement
Students browse courses, check seat availability, register/drop courses, and view their timetable. Admins manage courses, instructors, and enrollment caps. Enforces prerequisite courses and prevents double registration.