As a New Hire, I’m Leading the Company Platform’s Facial Authentication System Development

🎯 Project Overview

I’ve been tasked with developing a facial recognition-based user authentication system for the company platform, working independently on this critical project. This goes beyond simple feature development, encompassing rea…


This content originally appeared on DEV Community and was authored by wintrover

🎯 Project Overview

I've been tasked with developing a facial recognition-based user authentication system for the company platform, working independently on this critical project. This goes beyond simple feature development, encompassing real-time processing, multi-environment adaptation, and web-based implementation across various technical challenges.

🚀 Phase 1: Core Technology Development & Performance Optimization (July 30)

Deepface + MediaPipe Hybrid Architecture Implementation

I developed a real-time facial recognition prototype based on Deepface's ArcFace model. However, initial testing revealed significant recognition rate drops in various environments (lighting, angles, glasses, etc.).

Solution: Applied MediaPipe 3D landmark technology to dramatically improve recognition rates across diverse conditions.

Performance Optimization Tasks

  • Processing Speed: Enhanced to 5.5 FPS
  • Memory Management: Resolved memory leaks that occurred during technology integration
  • Real-time Processing: Implemented real-time face detection based on webcam streaming

🏗 Phase 2: KYC System Architecture Design & Requirements Analysis (July 31 - August 1)

Requirements Gathering & System Design

Through development process reporting, I gathered specific requirements for the KYC procedure:

  • User Guidance: Real-time guidance like "Look left, look right"
  • Data Storage: Multi-frame capture and video storage capabilities
  • Precision Analysis: Similarity analysis for specific facial regions (eyes, nose, mouth) in addition to full face

Architecture Transition

Shifted from desktop environment to web browser-based webcam system implementation.

Technical Review & Collaboration Environment Setup

  • Patent Analysis: Compared ETRI and Apple patents to evaluate technical utility
  • Collaboration Environment: Established Docker and GitHub-based development environment sharing
  • Version Control: Developed branching strategies for efficient collaboration

🌐 Phase 3: Web-based System Implementation & Technical Challenge Resolution (August 4-5)

Backend Technology Stack Migration

To enable webcam functionality in web environment, migrated backend from Python to Express.js.

Key Changes:

  • Python Flask ? Node.js Express.js migration
  • WebSocket implementation for real-time communication
  • RESTful API design

MediaPipe Web Integration Problem Resolution

Encountered several technical issues during MediaPipe web integration:

3.1 CSP (Content Security Policy) Conflicts

// Problem: CDN resources blocked by CSP
// Solution: Updated helmet middleware configuration
app.use(helmet({
  contentSecurityPolicy: {
    directives: {
      scriptSrc: ["'self", "https://cdn.jsdelivr.net"],
      connectSrc: ["'self", "https://cdn.jsdelivr.net"],
      workerSrc: ["'self", "blob:"]
    }
  }
}));

3.2 File Loading Timing Issues

  • Resolved WASM file loading delays
  • Implemented Promise-based initialization for async loading
  • Optimized module dependency management

3.3 Landmark Data Processing Errors

// Problem: Landmark coordinates returned as normalized values
// Solution: Added logic for pixel coordinate conversion
drawLandmarkPoints() {
  this.ctx.arc(
    landmark.x * this.canvas.width, 
    landmark.y * this.canvas.height, 
    this.landmarkStyle.radius, 
    0, 
    2 * Math.PI
  );
}

🔧 Phase 4: Debugging & Performance Optimization

Key Issues & Resolution Process

4.1 Yaw Angle Measurement Error

Problem: Yaw angle measured abnormally high (85 degrees) when facing forward

Root Cause: Default values (0,0) from generateDummyLandmarks function included in face width calculation

Solution: Modified calculateAngles function to skip dummy landmarks

// Exclude dummy landmarks during face width calculation
const validLandmarks = landmarks.filter(landmark => 
  landmark.x !== 0 || landmark.y !== 0
);
const faceWidth = Math.max(...validLandmarks.map(l => l.x)) - 
                  Math.min(...validLandmarks.map(l => l.x));

4.2 Landmark Rendering Performance Issues

Problem: Performance degradation when rendering 478 landmark points in real-time

Solutions:

  • Removed 95% of unnecessary console logs
  • Canvas rendering optimization
  • Implemented smooth animations using requestAnimationFrame

4.3 Server Connection Issues

Problem: FaceRecognitionClient's testServerConnection method causing infinite loops

Solution: Added retry limits (20 attempts, ~2 seconds) and proper error handling for initialization failures

📊 Current Status & Remaining Tasks

✅ Completed Features

  • Deepface + MediaPipe hybrid facial recognition system
  • Web-based webcam integration
  • Real-time landmark rendering (478 points)
  • Basic KYC workflow implementation
  • Performance optimization (5.5 FPS)

🔄 In Progress

  • Yaw Angle Measurement Error: Currently debugging, need algorithm improvement for accurate angle measurement
  • Quality Assessment System: Completing real-time quality evaluation functionality when server connected
  • User Interface: Improving intuitive UI/UX for end users

🎯 Next Phase Plans

  1. Yaw Angle Measurement Accuracy Enhancement
  2. Multi-face Processing Feature Addition
  3. Liveness Detection Implementation for Security Enhancement
  4. Mobile Environment Support
  5. Production Server Deployment

💡 Key Learnings

Technical Growth

  • Hybrid Architecture: Designed optimal solutions combining Deepface and MediaPipe strengths
  • Web-based Real-time Processing: Gained experience implementing real-time facial recognition systems via webcam
  • Performance Optimization: Enhanced skills in memory management and rendering optimization for large-scale data processing

Project Management

  • Requirements Management: Realized the critical impact of requirements convergence in early design phases
  • Technical Debt Management: Understood the importance of balancing performance and functionality
  • Problem-solving Abilities: Improved systematic analysis and resolution of complex technical challenges

This project has been a significant growth opportunity, going beyond simple feature development to encompass real-time system design, performance optimization, and user experience improvement. I plan to continue developing and improving the system to create a more stable and accurate facial authentication solution.


This content originally appeared on DEV Community and was authored by wintrover


Print Share Comment Cite Upload Translate Updates
APA

wintrover | Sciencx (2025-08-10T07:54:24+00:00) As a New Hire, I’m Leading the Company Platform’s Facial Authentication System Development. Retrieved from https://www.scien.cx/2025/08/10/as-a-new-hire-im-leading-the-company-platforms-facial-authentication-system-development/

MLA
" » As a New Hire, I’m Leading the Company Platform’s Facial Authentication System Development." wintrover | Sciencx - Sunday August 10, 2025, https://www.scien.cx/2025/08/10/as-a-new-hire-im-leading-the-company-platforms-facial-authentication-system-development/
HARVARD
wintrover | Sciencx Sunday August 10, 2025 » As a New Hire, I’m Leading the Company Platform’s Facial Authentication System Development., viewed ,<https://www.scien.cx/2025/08/10/as-a-new-hire-im-leading-the-company-platforms-facial-authentication-system-development/>
VANCOUVER
wintrover | Sciencx - » As a New Hire, I’m Leading the Company Platform’s Facial Authentication System Development. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2025/08/10/as-a-new-hire-im-leading-the-company-platforms-facial-authentication-system-development/
CHICAGO
" » As a New Hire, I’m Leading the Company Platform’s Facial Authentication System Development." wintrover | Sciencx - Accessed . https://www.scien.cx/2025/08/10/as-a-new-hire-im-leading-the-company-platforms-facial-authentication-system-development/
IEEE
" » As a New Hire, I’m Leading the Company Platform’s Facial Authentication System Development." wintrover | Sciencx [Online]. Available: https://www.scien.cx/2025/08/10/as-a-new-hire-im-leading-the-company-platforms-facial-authentication-system-development/. [Accessed: ]
rf:citation
» As a New Hire, I’m Leading the Company Platform’s Facial Authentication System Development | wintrover | Sciencx | https://www.scien.cx/2025/08/10/as-a-new-hire-im-leading-the-company-platforms-facial-authentication-system-development/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.