Technical Architecture Overview
Summary
Onboarding is split between an extracted Recruitment service and a legacy compatibility path, while offboarding remains in monolith HR Operations. The gateway can select Recruitment ownership, but no shared lifecycle coordinator exists.
Audience
Developers, QA, support, security reviewers, and solution architects.
Architecture
Ownership and boundaries
| Boundary | Verified ownership |
|---|---|
| Offer acceptance and extracted onboarding | Recruitment Service Domain/Application/Infrastructure/API folders |
| Compatibility onboarding | Either Recruitment compatibility adapters or monolith Recruitment controller, selected by gateway routing |
| Employee master initialization | Employee Service on extracted path; monolith labor/user service on legacy path |
| Exit request, decisions, rollback, revoke | Monolith HR Operations controller and monolith persistence |
| Generic onboarding task | Monolith HR Operations model/controller |
| Payroll and Leave readiness data | Consumer-owned projections from Employee lifecycle events |
| Attendance readiness | Separate Attendance profile/policy implementation; direct lifecycle wiring remains unresolved |
| Asset clearance | Asset Service read model; no exit invocation |
Technical maturity
The dedicated Recruitment service is layered and owns onboarding persistence, commands, queries, audit/timeline, and transactional outbox behavior. Offboarding remains controller-centric in the monolith. Compatibility routing permits runtime ownership changes without frontend changes, but completion semantics differ. No shared transaction spans Recruitment, Employee, downstream services, and HR Operations.
Confirmed exclusions
No standalone onboarding/offboarding host, shared lifecycle database, distributed transaction, saga, orchestration engine, cross-domain readiness aggregate, offboarding service, or automatic reconciliation worker was found.
Requires confirmation
- Final ownership and retirement criteria for the legacy Recruitment path.
- Required cross-domain coordination and reconciliation responsibilities.
- Whether offboarding will remain a monolith capability.
Source References
microservices/src/recruitment-service/Program.csmicroservices/src/recruitment-service/Application/Commands/OnboardingCommands.csmicroservices/src/recruitment-service/Infrastructure/RecruitmentDbContext.csControllers/RecruitmentController.csControllers/HrOperationsController.csmicroservices/src/gateway-api/Program.csmicroservices/src/payroll-service/Messaging/PayrollReadModelConsumer.csmicroservices/src/leave-service/Messaging/EmployeeProfileConsumer.csmicroservices/src/asset-service/Application/Queries/AssetQueries.cs
Related Articles
See Also
Keywords
- Service ownership
- Lifecycle architecture
- Transitional extraction
Revision Information
- Status: Draft
- Last reviewed: 2026-07-20
- Review cycle: Quarterly