Skip to content

Latest commit

Β 

History

History
362 lines (288 loc) Β· 16.7 KB

File metadata and controls

362 lines (288 loc) Β· 16.7 KB

DevAlign

DevAlign Logo

AI-Powered Human Resource Information System for Intelligent IT Project Allocation

Live Demo GitHub Repo License

Features β€’ Demo β€’ Tech Stack β€’ Installation β€’ API Docs β€’ Team


πŸ“‹ Table of Contents


🎯 Overview

DevAlign is an AI-powered Human Resource Information System (HRIS) specifically designed to revolutionize IT project allocation in Indonesia's software industry. Built to address the critical challenge of high employee turnover (20-35% annually) caused by skill-role mismatches, DevAlign leverages artificial intelligence and data analytics to match the right people with the right projects.

SDG Alignment

DevAlign directly contributes to UN Sustainable Development Goal 8: Promote sustained, inclusive and sustainable economic growth, full and productive employment and decent work for all.

Specifically targeting:

  • SDG 8.2: Achieve higher levels of economic productivity through technological upgrading and innovation
  • SDG 8.5: Achieve full and productive employment and decent work for all

🚨 The Problem

Indonesia's IT industry faces three interconnected challenges:

1. High Employee Turnover Due to Skill-Role Mismatch

  • 20-35% annual turnover rate in IT companies across Indonesia
  • 60%+ of IT professionals leave due to misaligned roles (Jobstreet Indonesia, 2024)
  • Example: A React Native expert assigned to legacy Java projects β†’ frustration β†’ resignation

2. Inefficient Talent Utilization

  • 40% of IT companies cite inefficient staffing as a barrier to meeting deadlines (APJII, 2023)
  • No centralized visibility into employee skills, workloads, or availability
  • Manual, bias-prone project assignment processes
  • Some teams overloaded while others underutilized

3. Rising Costs from Workforce Churn

  • Replacing one IT professional costs 50-150% of their annual salary (Mercer Indonesia, 2024)
  • Lengthy recruitment and onboarding processes slow project delivery
  • Small/medium IT enterprises most affected due to lack of HR analytics

The Vicious Cycle: Skill mismatch β†’ Poor performance β†’ Employee frustration β†’ Resignation β†’ High replacement cost β†’ Rushed hiring β†’ Skill mismatch...


πŸ’‘ Our Solution

DevAlign breaks this cycle with intelligent, data-driven workforce management:

Core Innovation

An AI-powered system that:

  • βœ… Automates CV extraction using LLM technology (GPT oss 20b)
  • βœ… Recommends optimal project teams based on project details, skill match, workload, and experience with LLM technology (GPT 4.1 nano)
  • βœ… Provides real-time collaboration through WebSocket-powered Kanban boards
  • βœ… Enables transparent communication via dual-channel notifications (email + in-app)
  • βœ… Tracks workforce analytics for data-driven HR decisions

How It Works

  1. HR uploads employee CVs β†’ AI extracts skills, experience, certifications in 3 seconds
  2. Project Manager creates a project β†’ AI analyzes all employees and ranks candidates by compatibility
  3. Smart allocation engine considers: skill match %, current workload, past performance
  4. Real-time task management syncs across distributed teams via Socket.io
  5. Predictive insights (Future Development) help HR intervene before talent loss occurs

✨ Key Features

For HR Managers

  • πŸ€– AI-Powered CV Extraction: Upload PDF resumes, auto-fill employee profiles in seconds
  • πŸ“Š Bulk Import: Onboard 100+ employees via Excel with validation
  • πŸ“§ Automated Onboarding: Welcome emails with credentials sent automatically
  • πŸ“ˆ Workforce Analytics: HR Dashboard
  • πŸ”” Smart Notifications: Email + in-app alerts for approvals and system events

For Project Managers

  • 🎯 Intelligent Team Recommendations: AI ranks employees by project fit (95%+ accuracy)
  • πŸ”„ Manual Override: Compare AI suggestions with manual browsing, switch seamlessly
  • πŸ“‹ 3-Step Project Wizard: Define requirements β†’ Select team β†’ Review & Create
  • πŸ“Š Real-Time Dashboards: Track active projects, deadlines, team capacity

For Staff Members

  • πŸ‘€ Personalized Dashboards: View assigned projects, tasks, deadlines
  • πŸ“Œ Kanban Task Boards: Drag-and-drop task management with real-time sync
  • πŸ”” Project Notifications: Instant alerts for new assignments and updates
  • πŸ‘₯ Collaborative Workspace: See teammate updates live, no refresh needed
  • πŸ“Š Performance Visibility: Track contributions across projects

Technical Excellence

  • πŸ—οΈ Microservices Architecture: Frontend, Backend API, AI Service (Docker orchestrated)
  • πŸ”’ Enterprise Security: JWT authentication, RBAC, HTTPS, bcrypt password hashing
  • πŸš€ CI/CD Pipeline: GitHub Actions auto-deploy to AWS EC2 in <5 minutes
  • ⚑ Real-Time Collaboration: Socket.io rooms for multiplayer Kanban boards

🌐 Live Demo

πŸ”— Access DevAlign

πŸ”‘ Test Accounts

User Email Role Manager Position Password
Raffi Fajar Rhamadhan raffifr098@gmail.com HR - - 123
Hasnan Regard mhasnanr@gmail.com Manager - - 123
Rahadi Fauzan rahadifauzan3@gmail.com Manager - - 123
Regard Hasnan muhammadhasnan033@gmail.com Staff Rahadi Fauzan ML Engineer 123
Tony Varian Yoditanto tonyoditanto@gmail.com Staff Hasnan Regard Backend Developer 123

Access Levels by Role:

  • HR: Employee management, analytics, bulk import, CV extraction
  • Manager: Project creation, AI team recommendations, team allocation, approval workflows
  • Staff: Task management, Kanban boards, project collaboration, notifications

Note: Test accounts use demo data. Feel free to explore all features!


πŸ› οΈ Tech Stack

Frontend

  • Framework: React 18 with Vite
  • Styling: TailwindCSS + shadcn/ui components
  • State Management: Zustand
  • Real-Time: Socket.io Client
  • HTTP Client: Axios
  • Routing: React Router v6
  • Tables: TanStack React Table
  • Forms: React Hook Form
  • Drag & Drop: hello-pangea/dnd
  • Notifications: Custom Toast with Framer Motion

Backend (API Service)

  • Runtime: Node.js 20.x
  • Framework: Express.js 5.1
  • Database: MongoDB with Mongoose ODM
  • Authentication: JWT (jsonwebtoken), bcrypt
  • File Processing: Multer, xlsx, pdf-parse
  • Email: Nodemailer with Gmail SMTP
  • Real-Time: Socket.io
  • Job Queue: Agenda (MongoDB-backed)
  • API Docs: Swagger (swagger-jsdoc, swagger-ui-express)
  • Security: CORS, helmet, express-validator

AI/ML Service

  • Framework: Python FastAPI (async)
  • LLM: GPT 4.1 nano & GPT oss 20b
  • Embeddings: OpenAI text-embedding-3-small
  • CV Parsing: PyPDF2
  • Similarity: Cosine similarity for calculating project similarity
  • Database: MongoDB (shared with backend)

Infrastructure

  • Cloud: AWS EC2 (Singapore region)
  • Containerization: Docker + Docker Compose
  • Web Server: Nginx (reverse proxy + static hosting)
  • SSL/TLS: Let's Encrypt (Certbot)
  • CI/CD: GitHub Actions
  • Monitoring: Docker logs, Nginx access/error logs

DevOps

  • Version Control: Git + GitHub
  • Branching Strategy: GitFlow (master, dev, feature)
  • Deployment: Automated via GitHub Actions on push to dev
  • Secrets Management: GitHub Secrets + .env files
  • Backup: Automated repository backups before deployment

πŸ—οΈ Architecture

System Architecture Diagram

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                     User's Browser                           β”‚
β”‚                  https://devalign.site                       β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                   β”‚
                   β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚           Frontend EC2 (xx.xxx.xxx.xx)                      β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚  Nginx (HTTPS β†’ Static React Build)                  β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                   β”‚
                   β”‚ HTTPS API Calls
                   β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚           Backend EC2 (xx.xxx.xxx.xx)                       β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚  Nginx Reverse Proxy                                 β”‚  β”‚
β”‚  β”‚  β”œβ”€ xxx.devalign.site β†’ :x00x (Backend API)         β”‚  β”‚
β”‚  β”‚  └─ xx.devalign.site  β†’ :x00x (AI Service)          β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                              β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”       β”‚
β”‚  β”‚  Docker Container    β”‚  β”‚  Docker Container    β”‚       β”‚
β”‚  β”‚  Backend API         β”‚  β”‚  AI Service          β”‚       β”‚
β”‚  β”‚  (Node.js/Express)   β”‚  β”‚  (Python/FastAPI)    β”‚       β”‚
β”‚  β”‚  Port: x00x          β”‚  β”‚  Port: x00x          β”‚       β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜       β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                   β”‚
                   β”‚ MongoDB Atlas
                   β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚              MongoDB Atlas (Cloud Database)                  β”‚
β”‚  Collections: users, projects, tasks, skills, notifications β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Microservices Breakdown

Service Technology Port Purpose
Frontend React + Vite 80/443 UI/UX, client-side routing, state management
Backend API Node.js + Express 5000 CRUD, authentication, business logic, WebSocket
AI Service Python + FastAPI 8000 CV extraction, team recommendations, embeddings
Database MongoDB Atlas 27017 Data persistence, indexing, aggregations
Email Queue Agenda + Nodemailer N/A Async email delivery, retry logic

πŸ‘₯ Team

DevAlign is developed by Team PentaByte as part of our capstone project.

Role
Rahadi Fauzan
LinkedIn
πŸ“ž +62 811-1107-244
Role
Irsyad Ibadurrahman
LinkedIn
πŸ“ž +62 877-2351-4244
Role
Muhammad Hasnan Regard
LinkedIn
πŸ“ž +62 851-5531-1485
Role
Raffi Fajar Rhamadhan
LinkedIn
πŸ“ž +62 858-1191-7518
Role
Tony Varian Yoditanto
LinkedIn
πŸ“ž +62 812-1612-9884


Team PentaByte
Building the future of HR tech

πŸ™ Acknowledgments

  • Sustainable Development Goals (SDG 8) for inspiring our mission
  • GPT oss 20b for CV extraction capabilities
  • OpenAI for embedding models
  • MongoDB Atlas for database hosting
  • AWS for cloud infrastructure
  • Let's Encrypt for free SSL certificates
  • All open-source contributors whose libraries made this possible

πŸ“ž Contact & Support


🎯 Project Status

Current Version: 1.0.0 (Production Ready)

Roadmap:

  • βœ… Phase 1: Core HRIS features (Employee management, CV extraction)
  • βœ… Phase 2: AI-powered project allocation
  • βœ… Phase 3: Real-time collaboration (Kanban boards)
  • βœ… Phase 4: Notification system (Email + In-app)
  • βœ… Phase 5: Production deployment (AWS + HTTPS)
  • πŸ“‹ Phase 6: Advanced analytics dashboard
  • πŸ“‹ Phase 7: Multi-language support (Bahasa Indonesia + English)

Made with ❀️ by Team PentaByte

Empowering Indonesia's IT workforce with intelligent HR solutions

GitHub stars GitHub forks