Technical Implementation Guide

Project: AI-Powered HRMS MVP

Version: 1.0

Date: October 4, 2025


Architecture Overview

High-Level Data Flow

  1. Frontend: Next.js (App Router) — UI, uploads, candidate editing
  2. Backend: Serverless API routes (Next.js) — business logic, AI orchestration, DB updates
  3. Database: MongoDB Atlas — Jobs, Users, Applications, Vectors
  4. AI Layer: OpenAI APIs — JD generation, resume parsing, embeddings, speech-to-text, scoring
  5. Storage: S3/Cloudinary — resume & audio files
  6. Email: Resend/SendGrid — transactional emails

Note: For production-grade vector search later, use Pinecone/Weaviate or MongoDB Atlas Vector Search. For MVP, embed vectors in Mongo and compute similarity in code.


Database Schemas (Mongoose)

User Model

// models/User.js
import mongoose from 'mongoose';

const UserSchema = new mongoose.Schema({
  name: String,
  email: { type: String, unique: true },
  role: { 
    type: String, 
    enum: ['hr', 'candidate', 'admin'], 
    default: 'candidate' 
  },
  passwordHash: String, // or use OAuth sessions via NextAuth
  createdAt: { type: Date, default: [Date.now](<http://Date.now>) }
});

export default mongoose.models.User || mongoose.model('User', UserSchema);

Job Model