The Tech Stack:
Ruby on rails
Improving the survey system that offers respondents (both students and professionals) to answer its questions and determine their archetype.
Among other solutions, the project provides the following:
Visual and functional presentation of the survey platform;
Moving away from a paid external service;
Accelerated processing of source files;
Recommendation system update.
One of the primary objectives was to improve the survey system that offers respondents (both students and professionals) to take a survey to determine their archetype (Leader, Internationalist, Idealist, Hunter, Harmonizer, Entrepreneur or Careerist).
After passing the survey, a respondent is redirected to their page to see career-related information based on the survey results, e.g., the best employer to choose, the average salary in a specific field, etc.
The main challenge was that the system relied on a paid third-party service with a custom API using prediction.io. Because of it, processing queries took a lot more time than it was supposed to.
Also, there was a problem with updating the recommendation system: new data could be imported only in manual mode.
Before implementing significant functionality changes, we first refactor the code base and cover it with tests. After that, we proceeded to survey system improvements.
Next, the service was replaced with Elasticsearch, accompanied by complex logic to aggregate data and output results. Integrating Elasticsearch directly, we ensured that the system could receive and operate the newest data.
Finally, every piece of newly-implemented functionality was thoroughly tested.
A social coding stack. The platform integrates with external web resources to grab posts. Users can ark/tag them with custom marks/tags. In addition, Attribot allows viewing/exporting reports based on user tags. Finally, Attribot provides an API to access posts from social networks and social media analytics for third-party applications.
Talent Radar was initially designed as the Heroku-based marketing system for creating targeted email campaigns. Users can import data, filter subscribers, and schedule send-outs at a specific time and date. The system’s main features include the ability to track campaign execution progress, restart on fail, campaign A/B testing, and real-time campaign statistics.
To achieve atomic and stable performance, we rewrote 22 000 lines of code.
Universum TOP 100 is a service where you can find the most attractive employers from all over the world. This is also a place for employees to share their own stories and experiences. Our team was helping Universum with maintaining the first version of this service.
Nebula Users is the central storage and authentication service for the Nebula system. Other applications (such as Attribot) are using this platform for authentication.
A central company/university data storage. It persists data into Elasticsearch and provides a web interface for quick searching/filtering that data. Other Universum applications also use Directory as one of the key data sources inside the Universum products ecosystem.
We've completed the project and enjoyed the following results:
Fully refactored, the survey system is now smooth like never before.
Moving from the slow, paid third-party service to Elasticsearch allowed our client to significantly reduce expenses on the system maintenance and provide a much better survey experience to the Universum Global respondents.
We created Ansible recipes to manage AWS servers used for storing applications and their data.
We performed migrations between Heroku and AWS, updated data storage software, and made other changes such as introducing a marketing campaign to encourage respondents to pass other surveys.
Thanks to the implemented solutions, the company saved about 70,000 USD on infrastructure annually.
Currently, Universum works with 2,000 employers from all over the world. And the sustainable solutions created and supported by us help them.
Let's build great things together!
Fill out the form and we’ll get in touch with you soon.