Case Study

The Client

quasardb is the editor of the fastest distributed key-value store noSQL database system.

Their product scales horizontally and vertically for virtually unlimited capacities.

Originally a proof of concept to evaluate the maximum, theoretical performance of modern multi-core computers, especially in terms of memory bandwidth, quasardb progressively evolved from a pure in-memory datastore to a persisted, network-distributed, associative database.

quasardb is based on recent theoretical breakthroughs in the field of massively distributed software, memory management and I/O management.

The team behind quasardb is comprised of senior engineers with extensive experience in kernel programming, file systems and high-performance network servers with a strong culture of critical production environments.

The Problem

In order to help the CEO and his staff organize the team’s schedule, the company needed a tool which would allow every team member to report their various activities using an interactive web-based application.

This tool could then allow the managing staff to generate activity reports and inject the various schedules inside an Outlook Calendar.

The company looked at various solutions but found none that could fit their needs. A tailor-made application had to be made.

What We Came Up With

The main idea behind the design was to have a clean, simple to use tool. People hate having to use a tool,especially if it’s badly designed. Not to mention this was a mandatory task, so the goal was for the staff to have a pure interaction with the app: log in, enter data, log out.

The technical challenge was that this app had to be secure and robust. Since it’s an app that allows staff members to log data from anywhere, it had to be accessible from the web. And since it stores confidential data, I had to make sure no ill-intentioned person could access that data.

During the design process, the client and I decided on the features the app had to offer, and how he and his staff would interact with it. The app features a simple login system, with the ability for the user to generate a new password in case he/she forgots it. The password recovery system generates a temporary token which is sent to the user’s email address. This token allows the user to type in a new password. The system never knows the password, as it is encrypted (bcrypt) before being stored. Unit Tests (Jasmine) were used to allow the app to be as extensible as possible, in the case another developer had to work on it.

The app shows the current month’s calendar. A simple button allows a user to select which activity to use, and he/she then can “paint” the calendar. The precision has been set to “AM/PM”, per the client’s desire.
Administrators of the app have access to a special section which allows them to review the staff calendar, add “special days” (for meetings, vacations, etc…), and lock certain periods of time to prevent users from modifying already submitted data. They can also add users and grant them administrative rights if needs be. At the bottom of the app, a button allows administrators to export the SQL database for backup purposes.

Testimonial

This app has been running for a little over a year now, and is used every day by the team over at quasardb. When asked about their experience, here’s what they had to say:

“Fabien has always been reactive when we needed his services.  He has developped quickly and efficiently an application that perfectly fits our needs.”