Client

The customer is a worldwide provider of logistics and transportation services. Based in the USA, the organization has over 10,000 employees and multiple offices across the country.

Project goal

When the customer came to Arateg, employee recruitment and onboarding consumed a lot of time. There was no centralized system for candidate segmentation, scoring, and resume management. HR specialists had to keep numerous records in Excel spreadsheets, involving the applicant database, job positions, notes, reports, etc., which was inconvenient.
The company also needed to have an integrated system for interviewing candidates that would include audio and video recording. In addition, the organization aimed to monitor the performance of new and current workers.
Partnering with Arateg, the client wanted to develop recruitment and onboarding software to improve time-to-hire and reduce costs while also simplifying the work of HR specialists. Furthermore, the platform had to provide a knowledge base.

Project summary

Project duration

1.5 years.

Team

10 frontend developers, 10 backend developers, 5 quality assurance engineers, a UI/UX designer, project manager.

Technologies

TypeScript, Python, Django, React, Redux, Redux-saga, styled-components, Kubernetes, gRPC, Protocol Buffers, Docker, RabbitMQ, Amazon S3, PostgreSQL.

Solution

Our software experts began with collecting and analyzing the customer’s requirements. Aiming to get a clear picture of its business-specific needs, our team interviewed the company’s HR managers. As a result of this stage, we defined the main issues they would like to address.
With the help of impact mapping, our engineers visualized the project roadmap and prioritized features. Then, we estimated the work scope, budget, and deadlines. To faster deliver a working solution, we recommended the client making 2 versions.
Our team developed 2 app versions that contained 3 modules:
In the first version, we created 2 modules—for candidate and task management—that allowed the client to interview and estimate applicants, maintain a candidate database, parse resumes, send notifications, create tasks, track their statuses, etc.
The second version included the third module—a knowledge base—for storing an employee handbook, information about the company, culture, etc. In addition, we incorporated features such as claim/request processing and candidate testing.
Our team created a PWA (progressive web app)—a web application that looks and behaves like a native mobile app—to provide HR managers with a seamless user experience. As a consequence, they don’t have to work in the browser and open dozens of tabs to perform tasks.
A PWA is available via:
  • browser
  • desktop
  • smartphone
Therefore, the customer can install the app on a mobile device and access it with one click. In addition, a recruitment management software system can work offline.

During the project, our team solved the following challenges:

  1. The system had to automatically send timely notifications on interviews, meetings, task status changes, employee birthdays, etc.
    By employing WebSockets, our software engineers provided continuous monitoring of time, date, and events such as appointment arrangement. Using the RabbitMQ message broker, our team made it possible to automatically send multiple notifications, for instance, a day/3 hours/hour before a meeting.
    Then, we created the system health-check to ensure that all messages would be sent without delays even if the application had to process thousands of requests per second.
  2. HR specialists and top managers must be able to work on the platform even if something fails.
    Aiming to ensure the system availability even if something fails, our developers built a microservices architecture. By using gRPC, we connected multiple services while enabling load balancing, health checking, and increased performance.
    With Kubernetes (k8s), our team automated deployment and management of a containerized application, as well as improved scalability. Employing Protocol Buffers, our experts provided storage and serialization of structured data.
  3. The delivered recruitment and onboarding software had to automatically generate job offers for the approved candidates.
    To address this challenge, our software engineers used Puppeteer, a Node library that allows automating manual tasks such as PDF page generation and form submission. We implemented this feature as a single microservice, so that it continues working even if some part of the system fails to perform.

The key features of recruitment management software

  1. Employee database (stores the information about current and potential employees)
  2. Resume management
  3. Candidate segmentation by score, job position, etc.
  4. Audio and video conferencing (integration with Google Meet)
  5. Communication history (audio and video recording)
  6. Candidate assessment scoring
  7. Candidate average score comparison
  8. Candidate testing
  9. Data visualization dashboard
  10. Calendar
  11. Email and browser notifications
  12. Employee testing
  13. Employee performance tracking
  14. Automatic report generation
  15. Claim and request processing
  16. Knowledge base

Result

Cooperating with Arateg, the client became able to easily manage recruitment and onboarding processes, from the first interaction with a candidate to training a new employee. With the delivered solution, the organization reduced hiring costs by 30%. In addition, it was able to faster find the best professionals, saving about 2 months per worker.
Furthermore, using custom recruitment and onboarding software, the company could interview and hire applicants remotely during the COVID-19 pandemic. As the system provided audio and video conferencing, resume parsing, communication history, etc., it quickly moved to distant HRM processes.

More case studies you may like

We’d love to work with you

Drop us a line about your idea, project, or challenge.

We’d like to discuss how we can help you.

We’ll add your contact details provided in this form to our CRM to contact you regarding the request. For more information, please visit our Privacy policy.