An Enovate Wiki
Attachments
History
Blame
View Source
Changelog
Documentation
About An Otter Wiki
Toggle dark mode
Login
Home
A - Z
Page Index
CMMI
Governance
Template
Statement Of Work
Guidelines
Coding Standard
Android Coding Standards
Core Java
Front-End Styling (CSS)
Golang
iOS Coding Standard (Swift)
Java EE
Javascript
Python
Request structure guidelines
Scala
TypeScript
Product Integration
Practical Training PPT
Procedure
Configuration Management (CM)
Estimating (EST)
Managing Performance and Measurement (MPM)
Monitoring and Control (MC)
Peer Review (PR)
Planning (PLAN)
Process Management (PCM)
Process Quality Assurance (PQA)
Product Integration (PI)
Requirement Development Management(RDM)
Risk and Opportunity Management
Technical Solution (TS)
Verification and Validation (VV)
Process Areas
Process Areas - Documents & Evidences
Standard
Document Creation
Naming Convention Standard
Templates
Audit Plan
LLD
Enovate Tools
EnovateIT
Company Profile & Website Portfolio
Home
Local AI
Projects
Audit-matic
HLD
CommNet
Face Recognation
Document
Flowcast
Enovate IT-QMS-PL01-Project Plan-[FlowCast]-V10
HireGenius
SRS
Technical Document (LLD+HLD))
OptiQA
Sentify
SkillShift
HLD
LLD
Social Media Manager
Teams
Team Apex
Team Catalyst
Team Fusion
Team Nova
Team Orbit
Team Pulse
Team Quantum
Team Spark
Team Vision
Templates
Project Template
Team Template
Projects
HireGenius
LLD
428a15
Commit
428a15
2025-10-07 10:24:27
Vinay Deokar
: Change in structure
Projects/HireGenius/LLD.md
..
@@ 45,74 45,3 @@
| **Vector Embeddings** | OpenAI **text-embedding-3-small** |
| **Email Integration** | Gmail API with **OAuth 2.0** |
| **Scheduler** | **node-cron** |
-
-
-
## Module Breakdown
-
-
### 2.1 Module Architecture
-
-

-
-
## 2.2 Detailed Module Specifications
-
-
### Module 1: Gmail Module
-
**Responsibility:** Email integration and resume fetching
-
-
**Functions:**
-
- Authenticate with Gmail API using OAuth 2.0
-
- Fetch emails with attachments based on filters (date, keywords, labels)
-
- Download resume attachments (PDF, DOCX)
-
- Track last fetch timestamp for incremental processing
-
-
**Key Operations:**
-
- `fetchNewEmails(afterDate, filters)` → Returns array of email objects with attachments
-
- `downloadAttachment(messageId, attachmentId)` → Returns file buffer
-
- `getLastFetchTime(jobId)` → Returns timestamp of last successful fetch
-
-
**External Dependencies:** Gmail API, Google OAuth 2.0
-
-
---
-
-
### Module 2: Resume Parser Module
-
**Responsibility:** Extract structured data from resume text
-
-
**Parsing Strategy:** Rule-based NLP with regex patterns
-
-
**Extraction Details:**
-
- **Name:** First line heuristics, capitalization patterns
-
- **Email:** Regex pattern `[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}`
-
- **Phone:** Regex for various formats (`+1-XXX-XXX-XXXX`, `(XXX) XXX-XXXX`)
-
- **Skills:** Keyword matching against predefined skill database
-
- **Experience:** Section detection (keywords: "experience", "work history") + date parsing
-
- **Education:** Section detection + degree/institution extraction
-
-
**Functions:**
-
- `extractText(fileBuffer, format)` → Returns plain text from PDF/DOCX
-
- `parseResume(resumeText)` → Returns structured JSON object
-
- `validateParsedData(data)` → Returns boolean + error messages
-
- `normalizeSkills(skillArray)` → Returns deduplicated, lowercase skills
-
-
**Output Format (JSON):**
-
```json
-
{
-
"name": "John Doe",
-
"email": "john@example.com",
-
"phone": "+1-555-0123",
-
"skills": ["javascript", "python", "sql"],
-
"experience": [
-
{
-
"title": "Software Engineer",
-
"company": "Tech Corp",
-
"duration": "2020-2023",
-
"description": "Built REST APIs..."
-
}
-
],
-
"education": [
-
{
-
"degree": "B.S. Computer Science",
-
"institution": "MIT",
-
"year": 2018
-
}
-
],
-
"total_experience_years": 5
-
}
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