TRACKNAMIC

Client: Tracknamic
Task: Architecture Development
Skills: HTML JavaScript Database CSS C Ember.js Sails.js Node.js Crate.io Bull

What's it for?

The project is a vehicle fleet management solution.

Target groups

It targets both corporate and small to medium businesses, hence two solutions are being built.

Technology

The solution for corporate customers is built on SAP Hana Cloud Platform using IOT and big data.

The small to medium business sector is covered by a more distributed system architecture, built using open source frameworks and tools:

- a CRATE.IO database cluster.

https://crate.io/

- a RESTful API built with Sails.js.

http://sailsjs.com/

- a job queue manager built using the Bull library.

https://www.npmjs.com/package/bull

- an OSRM server.

http://project-osrm.org/

- two web applications built using Ember.js.

https://www.emberjs.com/

On the other end, the data logging is handled by an in house built and programmed device with a GPS antenna that can easily be installed inside vehicles. It queries the vehicle's computer for information such as speed, engine state, fuel level, rpm and sends the vehicle info, together with the GPS data to API server.

My role

My involvement in this project spreads throughout all the architectural blocks of the small-medium business solution.

I was responsible for some functional parts of the device firmware in the beginning of the project, mainly GPS data interpretation and logging, data storing for when there's no network coverage, syncing and configuration. The firmare is written in C.

I was tasked with the initial server configuration, including security and crate.io setup.

I had some contributions in the RESTful API every now and then, but a part that I was required to focus more on was the job queue manager service - a node.js application responsible for processing vehicle routing data and sending emails.

Further on I worked on a basic CRM application that the sales department is now using. Ember.js was used for this

At the moment my main focus is the web application for the customers. The system currently uses Open Street Map, but a Google Maps implementation is on its way due to customers' demands.