In terms of intensified competition the companies need to increase its effectiveness along with productivity, and provide employees with comfortable and up-to-date system. Employees demand the access to their profiles, goals and other personal information regardless of their
location or during the day. The managers have difficulties to cope with daily paperwork routine related to the employee accounting and managing.
So our main goal was to create a highly interactive and user-friendly web based (intranet) HRMS application which would automatize the processes of the employee accounting from hiring to termination.
We’re not going to go deep into all the processes and functionality of the our solution, but we would get you acquainted with the following key opportunities which can be provided by the application :
- automatization processes of employee accounting, staff management, jobs, vehicles;
- automatization processes of pay rates, payrolls management ;
- automatization processes of human resource management;
- automatization processes of employees monitoring and training;
- improved communication processes of the end users by implementation email notifications;
- access by roles and permissions;
- jobs scheduling functionality.
In order to avoid any complexity and build a highly interactive and user-friendly application, the system has been divided into several parts which are HR Part, Admin Part, Scheduller Part, Roles and Permissions Part.
It’s noted that the system is provided for the ability to switch between different departments of the company which have their own information about staff, jobs, vehicles, payrolls and pay rate.
The back end was developed with C# and used.Net Framework 4.6.
The SQL Server 2016 and Entity Framework 6 with database first model generation for object mapping was used for database.
Front end is running under C# MVC 5 Framework, using jQuery 2 and Bootstrap 3 as main JS\CSS frameworks as well as other small plugins such as toastr for notifications, bootbox for fast and fancy modal dialogs, and daterangepicker for complex date picking elements.
A lot of drag and drop implementations/async controls and complex fixed scroll elements and tables were used for User Interface.
Application is integrated with different APIs such as Google Calendar, Google Maps, Microsoft Office 365 Calendar, getaddress.io.
It has its own mail scheduling processor which is sending hundreds of emails per day to users.
It has own PDF/Excel/CSV document generators for printing reports and information.
Challenges & Achievements
Application had two optimization iteraсtions, due to which it was possible to speed up loading of the most heavy page from 20 seconds to less than 3 seconds.
The page displays info about hundreds of jobs, up to 500 workers and vehicles for chosen day. Application provides with the ability of checking certificates/vehicle requirements and expiration dates.
Database queries was rewritten to achieve biggest performance boost.
Web application is running under IIS 8.5 using SSL . All user passwords stored encrypted in the database which excludes ability to steal login info at any program level.
Our team gained an excellent experience building this solution. Especially in writing optimized database queries and asynchronous user interface development.
To enable comments sign up for a Disqus account and enter your Disqus shortname in the Articulate node settings.