Modernizing the human resources management system PermWeb

PermWeb was one of our company's first projects. PermWeb is a web app extension to a desktop system called PERM, which focuses on payroll processing and human resources. Using the web application, employees can request vacations, fill in travel orders or travel reports, attendance tables, and much more.  Managers can approve these documents, handle payrolls, etc. The application is divided into several modules based on their functionality. Each customer can select which modules should be part of their version of the application, or request to customize modules to fit their needs. Nowadays, PermWeb has over 1000 users in more than 30 companies.

Early development

As stated above, PermWeb is an extension of a desktop system called PERM. It was essential to keep this in mind during the design phase of the frontend application we were responsible for. Necessary interface changes had to be done in both applications in order to make the PermWeb application work properly and effectively - but without breaking the PERM desktop app. This led to the establishment of a reliable communication channel between us and the customer, which helped us make changes with Kvasar's active involvement. 

Results of the first phase of the development

The architecture of PermWeb differs from other applications of its kind, as it's composed of many independent functional blocks. We designed the foundations of our solution, together with some functional modules, and presented them to the customer. This enabled Kvasar's development team to continue with the implementation of many other modules on its own. We didn't just design and implement the core of the app, but we also tutored the customer's team. We guided their employees through the technologies used in the application - mainly Angular 2 and Angular Material, as its components create the UI of the application. We also explained the basics of the GIT versioning system to their team.

Following cooperation

The cooperation did not end with the application design. The customer continued implementing new modules and there were many discussions regarding breaking changes, new features, or frontend technologies. As the application features and requirements were growing in numbers, the tech debt grew as well. In cooperation with the customer, we did a code refactor that eliminated much of the tech debt, and allowed us to use the latest versions of the technologies.

Technologies

PermWeb is built with the Angular 2 framework together with TypeScript from its very beginning, and is frequently updated to the latest versions. We chose TypeScript to prevent type errors and model misuse. In the case of the user interface, we chose the Angular Material library as it is designed for Angular 2 and implements the Material Design paradigm. Many parts of the application communicate asynchronously, based on the reactive programming principles of RxJS.

Current situation

The application is composed of over 50 different modules to this day. Some modules are generic, others are custom made for each company. The user interface is ready for mobile experience and the application is localized. Nowadays, PermWeb has over 1000 users in more than 30 companies.

Since its beginning, cooperation with FlowUp has been a very pleasant experience. Based on a technologically obsolete although big product, FlowUp was able to design a completely new one using the newest technologies that was also UX friendly for all the users, who were quite conservative about the old one. Apart from that, FlowUp was able to train our internal developers so they could work with the new technologies on their own. Thanks to their flexibility, approach and know-how within technologies, cooperation with FlowUp is still ongoing.

Jan PawlusProduct Lead Developer | Kvasar

Can you feel the flow?

Drop us a note

hello@flowup.cz

Send us your message! Contact us using this form and we'll answer you via e-mail ASAP. If you leave us your number in the message, we'll call you back. Looking forward to hearing from you!

We're based in Brno

Šumavská 519/35

Brno

602 00

Czech Republic

map