Signium

HR services, Top Management Executive Search assignments for C-level and upper management positions in the CEE region

Ruby on Rails Vue.js
featured imaga2_signium
featured imaga2_signium

About product

Web application for customer and candidate relationship management system

Do you know how difficult it is to find the right candidate at moments of strategic importance? Signium knows that getting the right candidate’s fit is challenging and requires a balance of hard assessment and application of judgment and experience.

Signium is an expert in helping clients recruit, develop and retain the best leadership teams. We don’t just find talent – we advise senior business leaders on developing their skills, people and organizations, combining global reach with deep local knowledge to exceed client needs – whenever, wherever, whatever. During periods of significant change, we give the clients the edge when shaping their future.”

To adjust to the changing environment Signium has made a decision about technological development within the office in Poland.

They desire to improve their efficiency even more by using a modern and user-friendly web application. Its main goal is to help manage customer and candidate data. It supports sales management, tracks every customer and candidate interaction, delivers actionable insights and facilitates team communication. It also enables access to data that the company has gathered over the years.

Our task was to build a new application as an evolution of the existing tool with a more efficient GDPR compliance module. A new web application is now helping Signium’s employees do their job more efficiently.

The challenge

Old data migration from the system to the new web application proved to be the biggest challenge. It was difficult due to lack of technical documentation and solutions that are currently out of use. The first version of Signium’s system was created about 25 years ago and updated a few times after that. 

The transfer of data was essential for the proper functionality of the new web application. Our aim was to migrate the data and make the web application work efficiently. As with any mature product it contained inconsistencies, non-existent references or “interesting” solutions. Some of them, however, proved to be highly innovative and impressive for those times.

The first step was to separate important data. We reduced some tables by half, for example from 40 columns to 20. A significant part of the tables wasn’t useful for us, but due to the lack of documentation, we had to be in permanent contact with the client, to analyze the operation of the old software, step by step, table by table, and to assess what data we would need. Having selected the tables we were interested in, we rebuilt their contents to JSON. Then we wrote a script in Ruby, which flew over each of them and matched the data to a previously designed new database (PostgreSQL).

As mentioned before, a huge part of the data contained left references to previously deleted elements. It also often combined tables by strings, not IDs. The old tool had many open fields for self-entry. In the new application, they had to be replaced by values taken from the dictionary to avoid lack of consistency in nomenclature. It ended up mostly in plucking all possible variants of a given column and wrapping it in a big switch case.

Another challenge was to process attachments in the database. A certain type of record allowed files to be attached to it – they were saved as BLOBs in one of the tables. We were forced to use an external program (OLE Express) to export files. Unfortunately, despite following the program instructions, they could not be named according to the references held by this table. We also had to sort the records and give the files a name in the form of an iterator (1,2,3 etc.). We wrote a simple SQL that combined table records and attachments with the parent table records in the correct order. After trying to transfer them to the new application, we noticed that they fell into the wrong places. It turned out that the old application had an error related to attachment translations. The main version correctly matched with the given record, while the translation contained an empty reference. This caused a simple error on our side because instead of the left join required here, we used the inner join. It may sound trivial, but it was not easy to orientate, because in this case we operated on the ID itself.

However, the most important thing is that we managed to overcome these challenges!

The application should allow users to filter the results of the extended database by many different categories like location, nationality, company and many, many more. So its UX and UI should be at the highest possible level. Moreover, we have cooperated mostly remotely during the project using emails and calls for communication and Jira for task planning and reporting.

Technological Solution

Together with the Signium team, after the series of workshops, we determined the expectations and needs and specified the functions of the web application. Behind many filtrating options available for employees there is a complex system architecture. After the Signium team approved the colors and mockups of individual screens presented by our UX/UI designer, we started developing the app. We decided to use Ruby on Rails for back-end and VUE.JS for front-end development. We took some time to test the application properly, and our QA specialist paid attention to every detail. The whole process went smoothly as we were always in touch with the client. 

signium case study

Easy tool to schedule the meetings

All the necessary information in one place and everyone knows what meetings they have on a particular day
signium case study

Clear information on the projects

Every employee can see what projects to work on for what company, and how many contacts from the large database there are.
signium case study

Simple yet functional calendar

User-friendly so everyone can see what they need and work as efficiently as possible.

The outcome 

Our team is highly satisfied with the results of our cooperation with the client, especially as most of it was remote. The web application was created for internal use, and the end-user has many of the available functions, easily accessible on just a few clicks. We used a limited number of colors while designing the interface so that the product itself helps and doesn’t distract while working. We provided Signium with full technical specifications which will allow us in the future to analyze the application and develop it further. Signium has always been taking care of GDPR compliance, but the new system ensures data security and more effective tracking of consents to the processing of personal data. Now they can conduct searches at top executive and upper management levels even faster!

clock

+

Development time

Core team

Piotr Sędzik, COO of Applover

Piotr

CEO
Member of the Board

jarek front end

Jarek

Front-end Developer

julia ux/ui designer at applover

Julia

UX / UI Designer

kevin nowald full stack dev

Kevin

Full-stack Developer

Michał Skibicki, Back-end developer at applover

Michał

Back-end Developer

Case studies

Check our case studies

prismade case study

Prismade

Developing highly interactive technologies, inks and materials that will merge print products with digital experiences.

labplus mobile app case study

Labplus

LabPlus provides a simple way to schedule and pay for desired medical test in your home town.

amino mobile app case study

Amino

Training made simple. Book your personal trainer anywhere anytime.

Let's meet

Why wait? Tell us about your needs!

jan kamiński, head of sales at applover, co founder

Jan

Head of sales

Let's schedule a call
Tadeusz Korzeniewski, IT Project Consultant & Business Leader at Applover

Ted

Head of Business Development

Let's schedule a call