Backend Service

Resume API

A production-ready .NET 10 backend with CQRS pattern, EF Core, and RAG-powered career assistant.

Architecture

CQRS Pattern

MediatR-based command/query separation for clean, maintainable code architecture.

Entity Framework

EF Core 10 with SQL Server, code-first migrations, and audit interceptors.

JWT Authentication

Dual JWT signing (HS256/RS256) with refresh token rotation and JWKS endpoint.

Tech Stack

Core Framework

  • .NET 10.0 (ASP.NET Core)
  • Entity Framework Core 10.0
  • SQL Server 2019+
  • MediatR 14.0 (CQRS)

Libraries

  • AutoMapper 16.0 (DTO mapping)
  • FluentValidation 12.1
  • Serilog 10.0 (Logging)
  • Swashbuckle (OpenAPI)

Key Endpoints

POST/api/v1/auth/loginUser authentication with JWT (HS256/RS256)
POST/api/v1/auth/registerNew user registration
POST/api/v1/auth/refresh-tokenExchange refresh token for new token pair
DELETE/api/v1/auth/logoutRevoke refresh token
GET/api/v1/auth/current-userGet authenticated user info
GET/api/v1/.well-known/jwks.jsonJWKS for distributed token validation
GET/api/v1/profileComposite user profile data (public)
GET/api/v1/careerinfosCareer summary and overview
GET/api/v1/workhistoriesEmployment timeline
GET/api/v1/jobskillsExtracted skills list
POST/api/v1/importImport resume from PDF/DOCX file
POST/api/v1/rag/chatRAG AI assistant query endpoint (public)
GET/api/v1/webhooks/subscriptionsList webhook subscriptions
POST/api/v1/webhooks/subscriptionsCreate webhook subscription
GET/api/v1/healthLiveness probe (database check)
GET/api/v1/health/readyReadiness probe (database + Weaviate + Ollama)

Data Model

Customer

Multi-tenant root

User

Identity

CareerInfo

Resume core

Subscription

Webhooks

Role
RefreshToken
WorkHistory
JobSkill
Event
Delivery
WorkHistoryDetail
Address
PhoneNumber
Tenant Root
Resume Domain
Identity
Contact
Webhooks
Relationship

All entities include audit fields with soft deletion and full EF Core relationship mapping