Skip to main content

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

BoundaryVerified ownership
Offer acceptance and extracted onboardingRecruitment Service Domain/Application/Infrastructure/API folders
Compatibility onboardingEither Recruitment compatibility adapters or monolith Recruitment controller, selected by gateway routing
Employee master initializationEmployee Service on extracted path; monolith labor/user service on legacy path
Exit request, decisions, rollback, revokeMonolith HR Operations controller and monolith persistence
Generic onboarding taskMonolith HR Operations model/controller
Payroll and Leave readiness dataConsumer-owned projections from Employee lifecycle events
Attendance readinessSeparate Attendance profile/policy implementation; direct lifecycle wiring remains unresolved
Asset clearanceAsset 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.cs
  • microservices/src/recruitment-service/Application/Commands/OnboardingCommands.cs
  • microservices/src/recruitment-service/Infrastructure/RecruitmentDbContext.cs
  • Controllers/RecruitmentController.cs
  • Controllers/HrOperationsController.cs
  • microservices/src/gateway-api/Program.cs
  • microservices/src/payroll-service/Messaging/PayrollReadModelConsumer.cs
  • microservices/src/leave-service/Messaging/EmployeeProfileConsumer.cs
  • microservices/src/asset-service/Application/Queries/AssetQueries.cs

See Also

Keywords

  • Service ownership
  • Lifecycle architecture
  • Transitional extraction

Revision Information

  • Status: Draft
  • Last reviewed: 2026-07-20
  • Review cycle: Quarterly