Belitsoft > Software Testing Services > Software Testing for Enterprise HRM App

Software Testing for Fast Release & Smooth Work of Resource Management App

Client

Our Client is an international enterprise Technicolor SA that specializes in providing video production services globally. The company has offices in the United States, the European Union, Canada, Australia, and India.


During the last years, Technicolor and Belitsoft have worked on 2 projects, where software testing has always accompanied the software development to ensure high functionality, security, and UI of the solutions.

Challenge

Managing human resources within a company with 17,000+ employees on board requires full visibility of all HR processes. They can achieve this by using a robust Resource Management system.

And Technicolor had a custom Resource Management app in use. But as the company was growing in line with the number of employees and projects, their software couldn't fully and effectively manage the company's Human Resource and Project Management processes anymore. It definitely required an upgrade.

When contacting Belitsoft, the primary goal and request of the enterprise was fast and quality delivery of new functionality while maintaining the high performance of the entire platform.

The company was looking for a supplier to count on not only in developing but also in testing the functionality of the newly developed features.

So they needed a partner, capable of providing a full scale of software development services, for having a single point of contact and a single team responsible for delivering a top-tier product.

Having a positive experience with Belitsoft in developing a custom LMS, Technicolor pitched on our team as a partner for their new project.

Solution

Technicolor needed a team to cost-effectively help them with automated and manual QA for faster releases of new features and higher product quality.

And that's what Belitsoft has been successfully fulfilling for over 2 years.

Our team has applied both automated and manual software testing:

  • Automated software testing is perfect for highly repeatable functional test cases and checking large amounts of data in the shortest term.
  • Manual testing is the core approach in usability testing, complex or specific test scenarios.

QA Software Testing Services

The key purpose of software testing is to ensure a smooth and fast work of a software product to make it easy to use and highly responsive for end users.

Our team examines the functionality of the newly developed features from various aspects by applying different software testing.

Ensuring excellent overall software performance

  • Functional testing helps verify the conformance of the application or system to functional or requirement specifications.
  • Performance testing identifies and eliminates the performance bottlenecks in the software. The test focuses on checking the stability, scalability, and speed of a system under a certain workload.
  • Migration testing is performed when moving data to new databases to compare migrated data with the original to detect any discrepancies.

Enhancing User Experience

  • Usability testing implies observing users' behavior while using an app to uncover areas of confusion and to find where to improve the UX.
  • GUI testing is the check-up of the Graphical User Interface of the software to ensure that its functionalities work as per specifications. It involves checking screens, menus, buttons, icons, and other controls.

Integrating New Features Smoothly

  • Integration testing is performed to make sure that an added feature works smoothly and correctly with the existing feature set.
  • Regression testing of previously developed functions is applied after adding every new feature. It helps to ensure that adding new functionality doesn't affect the overall system functionality.

Tools and Technologies

Jenkins
Visual Studio
SQL Server Management Studio
Swagger
Katalon recorder
Postman
Google Sheet
Screenpresso
Vue Tools

Process

Arranging Software Testing Process

Phase 1. Performing testing of previously built features.

When Technicolor assigned the project to Belitsoft, they had certain platform functionality that had to be tested.

The company didn't have enough in-house capacity, so they needed to outsource these tasks.

Our team tested, fixed bugs when necessary, and delivered a bug-free result.

They applied mostly functional and regression testing types at this stage.

When a milestone was complete, the next phase began immediately.

Phase 2. Applying a bundle of testing methods for ongoing development.

At this stage, Belitsoft has worked both on customization of the existing functionality, custom development of new features, and software testing.

Once a new feature is developed, the team of QA engineers steps in to test new functionality. They tested separately the new features at first (performance, usability, GUI testing, etc.), and then again after integration into the system and before launching (regression and performance testing).

Agility in Software Testing

The cooperation of Technicolor and Belitsoft is based on the Agile approach to guarantee full flexibility.

We have chosen it as the best option in the situation when tasks scope and priority frequently change.

The Client can reach out anytime to put a new task, and the stakeholders feel assured in getting results in time.

When additional work was needed spontaneously, our team jumped in without hesitation.

The team responded to all the Client's questions and feedback immediately. The entire team did their very best to fulfill the Client's goals to the highest standard.

Team Scope Scalability

Belitsoft had a pool of resources to assign full time specifically for Technicolor needs. We could easily pull in or out QA engineers with the required specialties as the Client needed them.

In the first phase, when previously developed features had to be tested, assigning 1 experienced QA engineer sufficed to complete the tasks.

In the second phase, the workload significantly grew up due to the testing of new features. And Belitsoft added two more specialists to the project.

Results

The primary result of the provided software testing services is the timely delivery of a smoothly working app with all the requested functionality and great UX.

While steadily developing and testing new features for the Resource Management software on a grand scale, our teams have communicated regularly to make sure the right things are getting addressed. Belitsoft's team has held regular meetings to stay efficient, and they have always supplied the Client with honest and frank upfront feedback.

Because of our mutual work, we've customized and improved the functionality of the Technicolor Resource Management Software and helped the international enterprise automate important business flows and save their resources.

1
2
3
4

Related cases

Related cases
Manual and Automated Testing to Cut Costs by 40% for Cybersecurity Software Company
Manual and Automated Testing to Cut Costs by 40% for Cybersecurity Software Company
Belitsoft has built a team of 70 QA engineers for performing regression, functional, and other types of software testing, which cut costs for the software cybersecurity company by 40%.
Offshore Dedicated Team of 100 QA Testers and Developers at 40% Lower Cost
Offshore Dedicated Team at 40% Lower Cost
Our client is a high-tech company. They’ve grown into a leading global provider of innovative network intelligence and security solutions (both software and hardware). Among their clients, there are over 500 mobile, fixed, and cloud service providers and over 1000 enterprises.

Recommended posts

Belitsoft Blog for Entrepreneurs
Mobile App QA: Doing Testing Right
Mobile App QA: Doing Testing Right
Mobile app quality: why does it matter? According to the survey from Dimensional Research, users are highly intolerant of any software issues. As a result, they are quick to ditch mobile apps after just a couple of occurrences. The key areas were mistakes are unforgivable are: Speed: 61% of users expect apps to start in 4 seconds or less; 49% of users expect apps to respond in 2 seconds or less. Responsiveness: 80% of users only attempt to use a problematic app three times or less; 53% of users uninstall or remove a mobile app with severe issues like crashes, freezes or errors; 36% of users stop using a mobile app if it is not battery-efficient. Stability: 55% of users believe that the app itself is responsible for performance issues; 37% lose interest in a company’s brand because of crashes or errors. The app markets, such as Google Play and App Store encourage users to leave reviews of apps. Low-point reviews will naturally lead to decreased app’s attractiveness. ‘Anyone can read your app store rating. There’s no way to hide poor quality in the world of mobile.’ Michael Croghan, Mobile Solutions Architect ‘Therefore,“metrics defining the mobile app user experience must be measured from the customer’s perspective and ensure it meets or exceeds expectations at all times.’ Dimensional Research The findings reinforce the importance of delivering quality mobile apps. This, in turn, necessitates establishing proper mobile app testing procedures. QA and testing: fundamentals Quality assurance and testing are often treated as the same thing. The truth is, quality assurance is a much broader term than just testing. Software Quality Assurance (SQA) consists of a means of monitoring the software engineering processes and methods used to ensure quality. SQA encompasses the entire software development process. It includes procedures such as: requirements definition, software design, coding, source code control, code reviews, software configuration management, testing, release management, and product integration. Testing, in its turn, is the execution of a system conducted to provide information about the quality of the software product or service under test. The purpose is to detect software bugs (errors or other flaws) and confirm that the product is ready for mass usage. The quality management system usually complies with one or more standards, such as ISO 9000 or model such as CMMI. Belitsoft leverages ISO 9001 certificate to continuously provide solutions that meet customer and regulatory requirements. Learn more about our testing services! Mobile app testing: core specifics The mobile market is characterized by fierce competition and users expect app vendors to update their apps frequently. Developers and testers are pushed to release new functionality in a shorter time. It often results in a “fail fast” development approach, with quick fixes later on. Source:http://www.perfecto.io Mobile applications are targeted for a variety of gadgets that are manufactured by different companies (Apple, Samsung, Lenovo, Xiaomi, Sony, Nokia, etc.). Different devices run on different operating systems (Android, iOS, Windows). The more platforms and operating systems are supported, the more combinations one has to test. Moreover, OS vendors constantly push out updated software, which forces developers to respond to the changes. Mobile phones were once devised to receive and make calls, so an application should not block communication. Mobile devices are constantly searching for the network connection (2G, 3G, 4G, WiFi, etc.) and should work decently at different data rates. Modern smartphones enable input through multiple channels (voice, keyboard, gestures, etc.). Mobile apps should take advantage of these capabilities to increase the ease and comfort of use. Mobile apps can be developed as native, cross-platform, hybrid or web (progressive web apps). Understanding the application type can influence a set of features one would check when testing an app. For example, whether an app relies on internet connection and how its behavior changes when it is online and offline. Mobile app testing: automated or manual? The right answer is both manual and automated. Each type has its merits and shortcomings and is better suited for a certain set of tasks at the certain stages of an app’s lifecycle. As the name implies, automated mobile app testing is performed with the help of automation tools that run prescripted test cases. The purpose of test automation is to make the testing process more simple and efficient. According to the World Quality Report, around 30% of testing is automated. So where is automation an option? Regression testing. This type of testing is conducted to ensure that an application is fully functional after new changes were implemented. As regression tests can be repeated, automation enables to run them quickly. Writing test scripts will require some time initially. However, it will pay off with fast testing in the long run, as the testers will not have to start the test from scratch each time. Load and performance testing. Automated testing will do a good job when it is needed to simulate an app’s behavior strained with thousands of concurrent users. Unit testing. The aim of unit testing is to inspect the correctness of individual parts of code, typically with an automated test suite. ‘A good unit test suite augments the developer documentation for your app. This helps new developers come up to speed by describing the functionality of specific methods. When coupled with good code coverage, a unit test acts as a safeguard against regressions. Unit tests are important for anything that does not produce a UI.’ Adrian Hall, AWS blog contributor Repetitive tasks. Automation can save the need to perform tedious tests manually. It makes the testing time-efficient and free of human errors.       While the primary concern of automated testing is the functionality of an app, manual testing focuses on user experience. Manual mobile app testing implies that testers manually execute test cases without any assistant automation tools. They play the role of end-user by checking the correct response of the application features as quickly as possible. Manual testing is a more flexible approach and allows for a more natural simulation of user actions. As a result, it is a good fit for agile environments, where time is extremely limited. As the mobile app unfolds, some features and functionality codes are also changing. Hence, automated test scripts have to be constantly reworked, which takes time. When working on a smaller product like MVP, manual testing allows to quickly validate whether the code behaves as it is intended. Moreover, manual testing is a common practice in: Exploratory testing. During the exploratory testing, a tester follows the given script and identify issues found in the process. Usability testing. Personal experience is the best tool to assess if the app looks, feels and responds right. This facet is about aesthetics and needs a human eye.  ‘While automated tests can streamline most of the testing required to release software, manual testing is used by QA teams to fill in the gaps and ensure that the final product really works as intended by seeing how end users actually use an application.’ Brena Monteiro, Software Engineer at iMusics Mobile app testing: where? When testing a mobile app one typically has three options for the testing environment: real devices, emulators/simulators, a cloud platform. Testing on real devices is naturally the most reliable approach that provides the highest accuracy of results. Testing in natural conditions also provides an insight into how an app actually works with all the hardware and software specifics. 70% of failures occur because apps are incompatible with device OS versions, and customization of OS by many manufacturers. About 30% of Android app failures stem from the incompatibility of apps with the hardware (memory, display, chips, sensors, etc.) Such things as push-notifications, devices sensors, geolocation, battery consumption, network connectivity, incoming interruptions, random app closing are easier to test on physical gadgets. Perfect replication and bug fixing are also can be achieved only on real devices. However, the number of mobile devices on the market makes it highly unlikely to test the software on all of them directly. The variety of manufacturers, platforms, operating systems versions, hardware and screen densities results in market fragmentation.  Moreover, not only devices from different manufacturers can behave differently, but the devices from the same manufacturer too. Source: mybroadband.co.za Source:developer.android.com. The share of Android OS versions When selecting a device’s stack, it is important not only to include the most popular of them but also to test an app on different screen sizes and OSes. Consumer trends may also vary depending on the geographical location of the target audience. Source: https://www.kantar.com As the names imply, emulators and simulators refer to special tools designed to imitate the behavior of real devices and operating systems. An emulator is a full virtual machine version of a certain mobile device that runs on a PC. It duplicates the inner structure of a device and its original behavior. Google’s Android SDK provides an Android device emulator. On the contrary, a simulator is a tool that duplicates only certain functionality of a device that does not simulate a real device’s hardware. Apple’s simulator for Xcode is an example. ‘Emulators and simulators “have many options for using different configurations, operating systems, and screen resolutions. This makes them the perfect tool for quick testing checks during a development workflow.’ John Wargo, Principal Program Manager for Visual Studio App Center at Microsoft ‘While this speeds up the testing process, it comes with a critical drawback — emulators can’t fully replicate device hardware. This makes it difficult to test against real-world scenarios using an emulator. Issues related to the kernel code, the amount of memory on a device, the Wi-Fi chip, and other device-specific features can’t be replicated on an emulator.’ Clinton Sprauve, Sauce Labs blog contributor The advent of cloud-based testing made it possible to get web-based access to a large set of devices for testing mobile apps. It can help to get over the drawbacks of both real devices and emulators/simulators. ‘If you want to just focus on quality and releasing mobile apps to the market, and not deal with device management, let the cloud do it for you.’ Eran Kinsbruner, lead software evangelist at Perfecto Amazon’s Device Farm, Google’s Firebase Test Lab, Microsoft's Xamarin Test Cloud, Kobiton, Perfecto, Sauce Labs are just some of the most popular services for cloud tests execution. ‘Emulators are good for user interface testing and initial quality assurance, but real devices are essential for performance testing, while device cloud testing is a good way to scale up the number of devices and operating systems.’ Will Kelly, a freelance technology writer Mobile app testing: what to test? Performance Performance testing explores functional realm as well as the back-end services of an app. Most vital performance characteristics include energy consumption, the usage of GPS and other battery-killing features, network bandwidth usage, memory usage, as well as whether an app operates properly under excessive loads. ‘It is recommended to start every testing activity with a fully charged battery, and then note the battery state every 10 minutes in order to get an impression of battery drain. Also, test the mobile app with a remaining device battery charge of 10–15%, because most devices will enter a battery-safe mode, disabling some hardware features of the device. In this state, it is very likely to find bugs such as requiring a turned-off hardware feature (GPS, for example).’ Daniel Knott, a mobile expert During the testing process, it is essential to check the app’s behavior when transiting to lower bandwidth networks (like EDGE) or unstable WiFi connections. Functionality Functional testing is used to ensure that the app is performing in the way in its expected. The requirements are usually predefined in specifications. Mobile devices are shipped with specific hardware features like camera, storage, screen, microphone, etc., and sensors like geolocation, accelerometer, ambient light or touch sensors. All of them should be tried out in different settings and conditions. ‘For example, “every camera with a different lens and resolution will have an impact on picture dimension and size; it is important to test how the mobile app handles the different picture resolutions, sizes, and uploading photos to the server.’ Daniel Knott No device is also safe from interruption scenarios like incoming calls, messages or other notifications. The aim is to spot potential hazards and unwanted issues that may arise in the event of an interruption. One should not also forget that mobile apps are used by human beings who don’t always do the expected things. For example, what happens when a user randomly pokes at an application screen or inputs some illogical data? To test such scenarios, monkey testing tools are used. Usability The goal of usability testing is to ensure the experience users get meets their expectations. Users easily get frustrated with their apps, and the most typical culprits on the usability side are: Layout and Design. User-friendly layout and design help to complete tasks easily. Therefore, mobile app testers should understand the guidelines each OS provides for their apps. Interaction. An application should feel natural and intuitive. Any confusion will eventually lead to the abandonment of an app. However, the assessment of an app’s convenience by a dedicated group may be a bit subjective. To get a more well-grounded insight into how your users perceive your app, one can implement A/B testing. The idea is to ship two different versions of an app to the same segment of end-users. By analyzing the users’ behavior, one can adjust the elements and features to the way the target audience likes it more. The practice can also guide marketers when making some strategic decisions. Localization When an app is targeted at the international market, it is likely to need the support of different languages to which devices are configured. The most frequent challenges associated with localization mobile app testing are related to date, phone number formats, currency conversion, language direction, and text lengths, etc. What is more, the language may also influence a general layout of the screen. For example, the look of the word “logout” varies considerably in different languages. Source: http://www.informit.com Therefore, it is important to think about language peculiarities in advance to make sure UI is adapted to handle different languages. Final thoughts The success of a mobile app largely depends on its quality. ‘The tolerance of the users is way lower than in the desktop era. The end-users who adopt mobile applications have high expectations with regards to quality, usability and, most importantly, performance.’ Eran Kinsbruner Belitsoft is dedicated to providing effective and quality mobile app testing. We adhere to the best testing practices to make the process fast and cost-effective. Write to us to get a quote!
Dzmitry Garbar • 9 min read
Software Testing Cost: How to Reduce
Software Testing Cost: How to Reduce
Categories of Tests Proving the reliability of custom software begins and ends with thorough testing. Without it, the quality of any bespoke application simply cannot be guaranteed. Both the clients sponsoring the project and the engineers building it must be able to trust that the software behaves correctly - not just in ideal circumstances but across a range of real-world situations.  To gain that trust, teams rely on three complementary categories of tests. Positive (or smoke) tests demonstrate that the application delivers the expected results when users follow the intended and documented workflows. Negative tests challenge the system with invalid, unexpected, or missing inputs. These tests confirm the application fails safely and protects against misuse. Regression tests rerun previously passing scenarios after any change, whether a bug fix or a new feature. This confirms that new code does not break existing functionality. Together, these types of testing let stakeholders move forward with confidence, knowing the software works when it should, fails safely when it must, and continues to do both as it evolves. Test Cases Every manual test in a custom software project starts as a test case - an algorithm written in plain language so that anyone on the team can execute it without special tools.  Each case is an ordered list of steps describing: the preconditions or inputs the exact user actions the expected result A dedicated QA specialist authors these steps, translating the acceptance criteria found in user stories and the deeper rules codified in the Software Requirements Specification (SRS) into repeatable checks. Because custom products must succeed for both the average user and the edge-case explorer, the suite is divided into two complementary buckets: Positive cases (about 80%): scenarios that mirror the popular, obvious flows most users follow every day - sign up, add to cart, send messages. Negative cases (about 20%): less likely or invalid paths that stress the system with missing data, bad formats, or unusual sequencing - attempting checkout with an expired card, uploading an oversized file, refreshing mid-transaction. This 80/20 rule keeps the bulk of effort focused on what matters most. By framing every behavior - common or rare - as a well-documented micro-algorithm, the QA team proves that quality is systematically, visibly, and repeatedly verified. Applying the Pareto Principle to Manual QA The Pareto principle - that a focused 20% of effort uncovers roughly 80% of the issues - drives smart test planning just as surely as it guides product features.  When QA tries to run positive and negative cases together, however, that wisdom is lost. Developers must stop coding and wait for a mixed bag of results to come back, unable to act until the whole run is complete. In a typical ratio of one tester to four or five programmers, or two testers to ten, those idle stretches mushroom, dragging productivity down and souring client perceptions of velocity. A stepwise "positive-first" cadence eliminates the bottleneck. For every new task, the tester executes only the positive cases, logs findings immediately, and hands feedback straight to the developer. Because positive cases represent about 20% of total test time yet still expose roughly 80% of defects, most bugs surface quickly while programmers are still "in context" and can fix them immediately. Only when every positive case passes - and the budget or schedule allows - does the tester circle back for the heavier, rarer negative scenarios, which consume the remaining 80% of testing time to root out the final 20% of issues. That workflow looks like this: The developer has self-tests before hand-off. The tester runs the positive cases and files any bugs in JIRA right away. The tester moves on to the next feature instead of waiting for fixes. After fixes land, the tester re-runs regression tests to guard existing functionality. If the suite stays green, the tester finally executes the deferred negative cases. By front-loading the high-yield checks and deferring the long-tail ones, the team keeps coders coding, testers testing, and overall throughput high without adding headcount or cost. Escaping Murphy’s Law with Automated Regression Murphy’s Law - "Anything that can go wrong will go wrong" - hangs over every release, so smart teams prepare for the worst-case scenario: a new feature accidentally crippling something that used to work. The antidote is mandatory regression testing, driven by a suite of automated tests. An autotest is simply a script, authored by an automation QA engineer, that executes an individual test case without manual clicks or keystrokes. Over time, most of the manual test catalog should migrate into this scripted form, because hand-running dozens or hundreds of old cases every sprint wastes effort and defies the Pareto principle. Automation itself splits along the system’s natural boundaries: Backend tests (unit and API) Frontend tests (web UI and mobile flows) APIs - the glue between modern services - get special attention. A streamlined API automation workflow looks like this: The backend developer writes concise API docs and positive autotests. The developer runs those self-tests before committing code. Automation QA reviews coverage and fills any gaps in positive scenarios. The same QA then scripts negative autotests, borrowing from existing manual cases and the API specification. The result is a "battle-worthy army" of autotests that patrols the codebase day and night, stopping defects at the gate. When a script suddenly fails, the team reacts immediately - either fixing the offending code or updating an obsolete test. Well-organized automation slashes repetitive manual work, trims maintenance overhead, and keeps budgets lean. With thorough, continuously running regression checks, the team can push new features while staying confident that yesterday’s functionality will still stand tall tomorrow. Outcome & Value Delivered By marrying the Pareto principle with a proactive guard against Murphy’s Law, a delivery team turns two classic truisms into one cohesive strategy. The result is a development rhythm that delivers faster and at lower cost while steadily raising the overall quality bar. Productivity climbs without any extra headcount or budget, and the client sees a team that uses resources wisely, hits milestones, and keeps past functionality rock-solid. That efficiency, coupled with stability, translates directly into higher client satisfaction. How Belitsoft Can Help We help software teams find bugs quickly, spend less on testing, and release updates with confidence. If you are watching every dollar We place an expert tester on your team. They design a test plan that catches most bugs with only a small amount of work. Result: fewer testing hours, lower costs, and quicker releases. If your developers work in short, agile sprints Our process returns basic smoke test results within a few hours. Developers get answers quickly and do not have to wait around. Less waiting means the whole team moves faster. If your releases are critical We build automated tests that run all day, every day. A release cannot go live if any test fails, so broken features never reach production. Think of it as insurance for every deployment. If your product relies on many APIs and integrations We set up two layers of tests: quick checks your own developers can run, plus deeper edge case tests we create. These tests alert you right away if an integration slows down, throws errors, or drifts from the specification. If you need clear numbers for the board You get live dashboards showing test coverage, bug counts, and average fix time. Every test is linked to the user story or requirement it protects, so you can prove compliance whenever asked. Belitsoft is not just extra testers. We combine manual testing with continuous automation to cut costs, speed up delivery, and keep your software stable, so you can release without worry.
Dzmitry Garbar • 5 min read
HR Portal Development for Hiring and Allocating Resources across Company Projects
HR Portal Development for Hiring and Allocating Resources across Company Projects
How do other companies deal with such kinds of challenges? Let's explore the case study of our client, the global enterprise, with 15000+ employees in 7 countries. Reasons to Build a Custom HR Portal Our client decided to develop a custom HR portal after considering some well-known disadvantages of ready-to-use HR software which are not be addressed individually for each customer: user functionality and interface may be not intuitive to end users (product may look and feel like it was built 20 years ago), there may be too many dashboards; data sharing between modules may be non-seamless, dashboards may not populate the correct data; modules may be unexpectedly clunky and difficult to use, there may be too many individual steps to accomplish one task, and so on; Another essential reason for creating a customized recruitment software or Project Management software is the goal to get full security and control over data. Mostly, it’s hard to obtain by using somebody else's software. It's about assurance in the safety of personal and company data inside such system, namely: encryption of user data, internal security controls, controlled access of data to prevent unauthorized access, physical security of user data and more. To avoid such shortcomings and to get the functionality that strictly matches their business needs, our client preferred to build custom HR software and was looking for software engineering companies. HR Portal Development as a Solution We have created an HR portal that has managed to resolve all the business challenges of our client by automating the following processes: Gathering and tracking HR data to get full visibility of the staff capacity. Allocating human resources to save managers' time. Prioritizing projects to avoid the wrong resource planning and allocation. Requesting new hires to close skill gaps and deliver projects in time. How does the HR Portal Work? User roles within the Human Resource Management system: Mr.Promy - a project manager who is responsible for planning, managing, and delivering projects. Mr.Deppy - a department manager who is responsible for managing the team and allocating employees to projects. Mr.Biggy - a top manager who is responsible for resolving all high-level questions. To perform their tasks, all the managers need full visibility of their current workforce capacity. For that, the HR portal has the employees' database that gets updated regularly. Having all the data gathered in a single dashboard, the system gives full visibility of employees' availability and facilitates talent management, their contract end dates, workload, financial details, etc. All resources are systemized for easier management. Let's picture a typical situation for our client. They get 2 overlapping projects - "Alpha" and "Beta" - that must be completed within 2 months. Mr.Promy creates a project "Alpha" and determines resource requirements: 5 seniors, 15 middles, and 10 juniors for 2 months. An algorithm automatically assigns the requested roles among the available resources by matching the indicated criteria. Mr.Deppy gets this information and checks it. If he disagrees with the automated distribution, there is an option to adjust resources manually. Either way, the work on the project "Alpha" gets started. Then, Mr.Promy creates a project "Beta" and requests 5 senior and 17 middle-level specialists. The software detects a Conflict when several projects need the same resources for the same period of time, but the amount of resources is insufficient. This is when Mr.Biggy, who has a full picture of concurrent projects across the company, gets involved in prioritizing projects and optimizing resource allocation. Mr.Biggy opens a custom application built by our team from scratch. He can see all the concurrent projects, including our "Alpha" and "Beta" projects, together with the amount of available and required resource units. Mr.Deppy re-assigns available resources among the concurrent projects, leaving project "Beta" without 6 specialists. Now Mr.Deppy can see that the project "Beta" cannot be completed in time due to the lack of resources. He creates a request for a new hire that goes to the integrated system for the HR team. After hiring a new specialist, the information about a new employee gets from HR database into the HR portal with all the collateral data. That's when a new employee becomes available for current projects. And Mr.Deppy can use him for the project "Beta". In the meanwhile, Mr.Deppy notices one more available specialist who has finished another project and can be used for the project "Beta". He assigns a task to this employee. However, the system detects that the project term is outside this employee's contract term. So Mr.Deppy automatically gets a notification with a contract extension request and details. Smart and streamlined human resource management saves managers' time and stakeholders' money by automating the most time-consuming, repetitive processes in allocating and prioritizing resources and projects. The major outcomes of using the resource management software for automating repetitive and time-consuming tasks in planning projects and allocating resources: projects are delivered in time; human resources are used smartly, without under- or over-use; the number of project and department managers is optimized; employee retention has grown; significant budget saving is achieved. The Process of HR Portal Development in Details When the client realized that we were the partner they needed, we agreed on all legal questions, signed an NDA, and could proceed to the project details. Why did the Global Enterprise Choose Belitsoft? The global corporation expressed interest in Belitsoft as the long-term partner due to some solid reasons: Positive experience in the past. The enterprise already collaborated with us and was very satisfied with the result. Competitive price for software development services. Belitsoft's prices are 2-3 times lower than in the EU where the client is based. Ability to start the project quickly. As our company has a large team of in-house developers, we could kick off immediately. Flexibility and scalability. Enterprises with a fast-changing and scaling array of tasks and ideas need a partner that can adapt to any client's idea quickly. Transparent and effective project management. Belitsoft's experts with 10+ years of experience in building and managing teams for clients' companies have elaborated their own best practices that have made the mutual work highly effective. Gathering project requirements and estimating the cost Our Business Analyst and Business Development Manager talked with the company's top managers to get a comprehensive project vision and gather project requirements. Taking into account the received information, we agreed on a Time and Material cooperation model when the client doesn't pay monthly salaries to the development team. Instead, they pay only the time and resources spent on the project. In addition, we guaranteed the client to retain the same specialists in the project to minimize industry-specific knowledge sharing and to avoid downtime and lower productivity. Choosing Agile project management methodology for fast and productive work We stick to the most flexible Agile approach in projects like this where a client is constantly coming with new ideas, and the project scope is changing. Turning software development into an iterative process guarantees frequent and regular results delivery. So the entire development process looked like an iterative cycle with a well-defined series of steps in pre-defined periods of time (2-week sprints): Step 1. The Project Manager passes our solution (prototype or description) to the Client for further approval. Step 2. After getting approval, our team starts working on the task(s). Step 3. The result is delivered to the Client. Step 4. The Client gives feedback. And our team adapts the result accordingly if needed. For meetings and daily communication, we mostly used Slack and ClickUp. Other online means suitable for both parties can also be applied. 3 Phases of the Development Process Upgrading As the client came to Belitsoft with its proprietary legacy HR software, the initial request was to increase its functionality. At first, we switched from JQuery to VueJS. Afterward, we refactored the software to find and fix bugs. Both steps let us increase the functionality of the app at a significantly higher speed. Custom development At this stage, our team passed from customization to custom software development of new features and even integrated apps from scratch. Our experts precisely detected the business challenges of the client and suggested corresponding solutions. Challenge 1. Smart project prioritization in conflict situations. Solution 1. A new custom app, smoothly integrated into the HR portal, was built to detect conflict situations and automatically pass them to the company's top managers for resolution. Challenge 2. Time-consuming manual resource allocation. Solution 2. The new custom Auto-assign feature was developed from scratch for automated resource allocation based on predefined criteria. Challenge 3. Rigid and scarce management permissions for all user roles. Solution 3. The possibility to assign user roles with unique and flexible permissions to different managers was added. Challenge 4. Management of a rapidly increased number of projects. Solution 4. A new custom feature was added to plan activities within projects daily, not weekly for adding more flexibility and handling the overload. Having resolved its business-specific challenges, the company thrived even during the harsh pandemic times. Migration to the Cloud The infrastructure of the enterprise was growing in line with the functionality of the HR portal. Finally, the company faced some serious issues: slow page loading speed and troublesome access to the portal. And migration to the Cloud looked like the most cost-effective and logical solution. The client opted for Azure as they already used Microsoft infrastructure. Here is how we performed the smooth migration: Step 1. Assessment of expenses and scope of work. Step 2. App optimization before migrating to Azure. Step 3. Migration to Azure. Step 4. Further optimization of performance and minimization of expenses. The enterprise quickly reaped rewards after the migration, which proved the validity of the decision - access problems were fully resolved, the page loading speed was reduced twice. Features that Can Be Implemented in Your Custom HR Portal Each company interested in a custom HR portal development, needs some unique features based on the specifics of their business. The enterprise has chosen a list of features to make its business thrive. And your business may need completely different functionality. That's why we have summed up all the major features that our team can suggest to you in a single list: Recruitment and hiring management: Job requisitions and descriptions Job board posting Job applicants filtering Applicant Tracking System (ATS) Onboarding module Employee data management: Employees database Employees performance and job history Employees salary history Extra details (insurance plans; banking details) Time management: Scheduling work shifts; Clock in/out tracking; Overtime tracking; Holidays and sick leaves management; Notifications about schedule changes. Project Management: Allocating employees on projects; Tracking employees workload within a project; Prioritizing projects. Finance management: Payroll management; Compensation and rewards management; Accounting and budgeting administration. Employees' learning: Integration with LMS, LXP, and TMS for learning; Performance tracking; Professional certification management. If you see that the available HR software lacks the features your business needs, let us suggest you a custom solution. Contact our business development specialist to estimate your idea.
Dmitry Baraishuk • 7 min read

Our Clients' Feedback

zensai
technicolor
crismon
berkeley
hathway
howcast
fraunhofer
apollomatrix
key2know
regenmed
moblers
showcast
ticken
Next slide
Let's Talk Business
Do you have a software development project to implement? We have people to work on it. We will be glad to answer all your questions as well as estimate any project of yours. Use the form below to describe the project and we will get in touch with you within 1 business day.
Contact form
We will process your personal data as described in the privacy notice
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply
Call us

USA +1 (917) 410-57-57

UK +44 (20) 3318-18-53

Email us

[email protected]

to top