Commit 232e44

2025-11-13 10:58:32 Vinay Deokar: Phase two enhancements added
Projects/HireGenius/Technical Document (LLD+HLD)).md ..
@@ 13,6 13,8 @@
| 6 | [System Architecture](#6-system-architecture) |
| 7 | [Sequence Diagram](#7-sequence-diagram) |
| 8 | [Flow Diagram](#8-flow-diagram) |
+ | 9 | [Phase Two Enhancement](#9-phase-two-enhancements) |
+
### 1. System Overview
@@ 213,7 215,7 @@
- Generate single embedding vector (1536-dim)
- Store in `jobs.jd_embedding` column
- ---
+ ---Business
#### Module 6: Ranking Module
**Responsibility:** AI-powered re-ranking of top candidates
@@ 246,7 248,7 @@
**Task:**
Rank these candidates from best to worst fit. For each, provide:
1. Rank position (1-N)
- 2. Fit score (0-1)
+ 2. Fit score (0-1) Business
3. Brief reasoning (2-3 sentences)
**Consider:**
@@ 328,7 330,9 @@
---
- #### 3.2 Job Management Endpoints
+ #### 3.2 Job Management Endpoints### 9. Phase Two Enhancements (AI-assisted Interview Scheduler)
+ 824
+
| Method | Endpoint | Request Body | Response | Description |
|--------|-----------------|-------------------------------------------|---------------------------|--------------------------------------------|
@@ 360,8 364,10 @@
```
---
- #### 3.3 Candidate Retrieval Endpoints
-
+ #### 3.3 Candidate Retrieval Endpoint### 9. Phase Two Enhancements (AI-assisted Interview Scheduler)
+ 824
+ s
+ Business
| Method | Endpoint | Request Body | Response | Description |
|--------|------------------------------|-------------------------------------------|---------------------------|-----------------------------------|
| GET | /api/jobs/:jobId/candidates | Query: ?status=new&sort=score&page=1&limit=20 | {candidates[], total} | Get ranked candidates for job |
@@ 420,6 426,8 @@
| GET | /api/dashboard/stats/:jobId | - | {total, by_status{}, avg_score} | Get job pipeline metrics |
| GET | /api/dashboard/timeline/:jobId | Query: ?start_date&end_date | {timeline_data[]} | Candidate activity over time |
| GET | /api/export/candidates/:jobId | Query: ?format=csv | CSV file | Export candidates |
+ ### 9. Phase Two Enhancements (AI-assisted Interview Scheduler)
+ 824
**Response Example (GET /api/dashboard/stats/:jobId):**
```json
@@ 477,7 485,7 @@
| jd_embedding | vector(1536)| NOT NULL | Semantic embedding of JD |
| start_date | DATE | NOT NULL | Job posting start date |
| end_date | DATE | NOT NULL | Job posting end date |
- | status | VARCHAR(50) | DEFAULT 'active', CHECK (status IN ('active', 'paused', 'closed')) | Job status |
+ | status | VARCHAR(50) | DEFAULT 'active', CHECK (status IN ('active', 'paused', 'closed')) Business| Job status |
| created_at | TIMESTAMP | DEFAULT CURRENT_TIMESTAMP | Job creation time |
| updated_at | TIMESTAMP | DEFAULT CURRENT_TIMESTAMP | Last update time |
@@ 521,7 529,9 @@
"company": "Tech Corp",
"duration": "2020-2023",
"description": "Built microservices..."
- }
+ }### 9. Phase Two Enhancements (AI-assisted Interview Scheduler)
+ 824
+
],
"education": [
{
@@ 580,7 590,7 @@
| --------------- | --------- | ----------------------------------------------------- | ------------------------------------- |
| availability_id | UUID | PRIMARY KEY, DEFAULT gen_random_uuid() | Unique availability record identifier |
| manager_id | UUID | FOREIGN KEY REFERENCES managers(id) ON DELETE CASCADE | Manager reference |
- | date | DATE | NOT NULL | Available date |
+ | date | DATE | NOT NULL | Available dBusinessate |
| start_time | TIME | NOT NULL | Start time of availability |
| end_time | TIME | NOT NULL | End time of availability |
| is_booked | BOOLEAN | DEFAULT false | Marks if slot is already booked |
@@ 608,7 618,7 @@
- `idx_job_managers_job_id` on `job_id`
- `idx_job_managers_manager_id` on `manager_id`
---
- ##### Table: communication
+ ##### Table: communicationBusiness
**Purpose:** Stores all communication exchanges between the system, candidates, and managers- including interview invites, responses, and final confirmations.
@@ 713,8 723,10 @@
---
#### 4.4 pgvector Configuration
+ ### 9. Phase Two Enhancements (AI-assisted Interview Scheduler)
+ 824
- **Extension Setup:**
+ **Extension Setup:** Business
```sql
CREATE EXTENSION IF NOT EXISTS vector;
```
@@ 817,3 829,53 @@
### 8. Flow Diagram
![](./image-1759914896125.drawio.png)
---
+
+ ### 9. Phase Two Enhancements
+ #### AI-assisted interview scheduler
+ - πŸ§‘β€πŸ’Ό 1. Manager & Availability Setup
+
+ - HR assigns one or more managers to each job.
+
+ - Managers define their available time slots for interviews.
+
+ - System ensures no overlapping interview slots.
+
+ - 🎯 2. Candidate Invitation
+
+ - HR shortlists candidates for interviews.
+
+ - AI automatically drafts and sends invitation emails with available time slots.
+
+ - Each invitation is recorded for tracking and status updates.
+
+ - πŸ“¬ 3. Candidate Response
+
+ - The system listens for candidate replies.
+
+ - AI interprets their response (acceptance, decline, or preferred slot).
+
+ - Once confirmed, the selected slot is blocked to prevent double booking.
+
+ - πŸ‘¨β€πŸ’Ό 4. Manager Confirmation
+
+ - The system notifies the respective manager about the candidate’s selected slot.
+
+ - Manager confirms or reschedules based on their convenience.
+
+ - Their response is automatically updated in the system.
+
+ - πŸ—“οΈ 5. Interview Scheduling
+
+ - Once both sides confirm, the interview is officially scheduled.
+
+ - A meeting link (Google Meet / Zoom) is generated automatically.
+
+ - Confirmation emails are sent to all participants β€” HR, Manager, and Candidate.
+
+ - πŸ“Š 6. Post-Interview Actions
+
+ - After the interview, HR can mark it as completed.
+
+ - Feedback and notes can be added for future reference.
+
+ - The system reopens or manages availability slots for upcoming interviews.
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9