A service for processing job applications. A candidate submits an application, the system starts asynchronous screening through Kafka and ZooKeeper, the recruiter makes a decision, and interview data is exported to an external Odoo calendar system.
- REST API for candidates, recruiters, and administrators.
- PostgreSQL with Flyway migrations.
- Kafka and ZooKeeper for asynchronous application screening.
- Camunda BPMN for application, vacancy, and interview cancellation processes.
- Odoo as an external EIS: interviews are exported to the calendar.
- WebSocket notifications after important actions.
Docker and Docker Compose are required.
docker compose up --buildAfter startup:
- API:
http://localhost:8080 - Swagger UI:
http://localhost:8080/swagger-ui.html - Kafka UI:
http://localhost:8081 - ZooKeeper:
localhost:2181 - Odoo:
http://localhost:8069 - PostgreSQL:
localhost:5432
Stop the project:
docker compose downStart with a clean database:
docker compose down -v
docker compose up --build
