Skip to content

01Sole Developer

HRMS

Human Resource Management System

Role
Project Lead - Full-Stack Developer / Android App Developer - Sole Developer
Stack
PythonJavaScriptReact NativeREST APIMariaDB
hr.deepgrid.in/app/attendance

Attendance / Daily register

Attendance — Monday

ExportMark attendance

Present

38

Late

4

On leave

3

Absent

2

Search employee
Department: All
Shift: All
Status: All
EmployeeShiftCheck-inLocationStatus
ARAnjali ReddyEMP-0012General09:24In geofencePresent
KSKarthik SharmaEMP-0031General09:41In geofenceLate
PMPriya MenonEMP-0007GeneralOn leave
RVRahul VermaEMP-0044Field A08:02In geofencePresent
SKSneha KumarEMP-0019General09:28OutsideReview
VPVikram PatelEMP-0052NightAbsent
Attendance register with geofence status. Representative UI mockup with sample data.

Overview

An end-to-end HRMS that manages the employee lifecycle, attendance, leave and shift operations, with a mobile app for geo-location attendance kept in real-time sync with the ERP backend.

Problem

Employee lifecycle, attendance, leave and shift operations had to be managed in one place, with employees marking attendance from their phones and less manual work for HR.

Solution

An end-to-end HRMS with modules for Employee, Attendance, Leave Management, Holiday List, Shift Management, HR Settings, Payroll and Projects — plus a React Native app for geo-location-based attendance that stays in real-time sync with the backend over REST APIs.

Architecture

    • React Native mobile app
    • Web dashboards
  1. REST API · real-time sync
    • Python backend services — RBAC, validations, HR workflows
    • MariaDB

Features

  • Employee lifecycle
  • Attendance
  • Leave management
  • Shift management
  • Payroll
  • Projects
  • Geo-location attendance
  • Real-time employee services
  • REST API integration
  • RBAC
  • Validations
  • User dashboards
  • Automated HR workflows

Engineering work

  • Developed an end-to-end HRMS solution to manage employee lifecycle, attendance, leave, and shift operations.
  • Designed and implemented key modules including Employee, Attendance, Leave Management, Holiday List, Shift Management, HR Settings, Payroll and Projects.
  • Built a mobile application with geo-location-based attendance and real-time employee services.
  • Designed and integrated REST APIs for seamless communication between mobile and backend systems, ensuring real-time sync between the app and the ERP system.
  • Implemented role-based access control, validations, and user dashboards to enhance security and usability.
  • Automated HR workflows and improved operational efficiency through centralized system design.

Engineering decisions

  1. 1Role-based access control and validations enforced for secure enterprise usage.
  2. 2One set of REST APIs designed for both the mobile app and web clients.
  3. 3Attendance captured with geo-location at check-in from the mobile app.
  4. 4Database schemas designed and queries optimized for MariaDB.

Code

attendance/check_in.pypython
def validate_check_in(employee, lat, lng):    site = get_assigned_site(employee)    if distance_m(lat, lng, site.lat, site.lng) > site.radius_m:        frappe.throw("Check-in is outside the allowed location")    shift = get_active_shift(employee, now_datetime())    if not shift:        frappe.throw("No active shift for this employee")    return shift
Simplified sketch of the approach — not production code.

Screens

hr.deepgrid.in/app/attendance

Attendance / Daily register

Attendance — Monday

ExportMark attendance

Present

38

Late

4

On leave

3

Absent

2

Search employee
Department: All
Shift: All
Status: All
EmployeeShiftCheck-inLocationStatus
ARAnjali ReddyEMP-0012General09:24In geofencePresent
KSKarthik SharmaEMP-0031General09:41In geofenceLate
PMPriya MenonEMP-0007GeneralOn leave
RVRahul VermaEMP-0044Field A08:02In geofencePresent
SKSneha KumarEMP-0019General09:28OutsideReview
VPVikram PatelEMP-0052NightAbsent
Attendance register with geofence status. Representative UI mockup with sample data.
hr.deepgrid.in/app/leave-application

Leave / Applications

Leave Applications

New application
Open (2)ApprovedRejectedHoliday List
EmployeeTypeDatesDaysStatusActions
Priya MenonCasual Leave15 Sep – 16 Sep2Approved
Karthik SharmaSick Leave18 Sep1OpenRejectApprove
Rahul VermaEarned Leave22 Sep – 26 Sep5OpenRejectApprove
Sneha KumarCasual Leave29 Sep1Rejected

Leave balance · Karthik Sharma

Casual8 left
Sick4 left
Earned6 left

Approver: Reporting manager · HR

Leave applications and balances. Representative UI mockup with sample data.
Mobile app — geo-location check-in. Representative UI mockup with sample data.

Challenges

  • Keeping the mobile app and the ERP backend in real-time sync.
  • Automating HR workflows that were previously handled manually.

Testing & delivery

Delivery
Owned system design, development and deployment as the sole developer.

Results

  • Live at hr.deepgrid.in, built and deployed as the sole developer.
  • HR workflows automated and centralized, reducing manual workload.