Saturation, or how much time did our couriers actually work?

Reading Time: 6 minutes

One of the questions I get more frequently when I say that I am a Data Engineer is “but what do you do?”. Depending on who you ask, you can receive a variety of answers, especially related to the tools and skills we may use. If you ask me that question and you know about data processes, I will answer “we’re the backend of the Data Scientists”. If you don’t have a clue about data-related jobs, I will answer “we organize big amounts of data”. And by “organize”, what I mean is “clean, model, calculate, store and make available”.

In Everli, I’m in charge of data related to our shoppers, from the moment they apply to one of our job offers until they deliver an order to a customer. This process involves more factors than you may think because we need to have the right amount of shoppers recruited and the right amount of shoppers working exactly when they are needed. The main goal is to balance a good service to our customers and the wellbeing of our shoppers.

This balance has been a challenge since the beginning, and this example is only one more step in finding the best fit for our needs. It has also been a data modeling challenge, and a great opportunity to dig deeper into shopper data. And now I can explain one of the things a Data Engineer does!

Continue reading “Saturation, or how much time did our couriers actually work?”

Android Room: The good, the bad, the ugly

Reading Time: 5 minutes

In these series of posts (don’t worry, they’ll be only 3), I would like to dig a bit deeper on the experience of using Room for Android and how it compares to other existing technologies. Please, note that I won’t explain how everything works and how to wire together all the components – there are plenty of tutorials for that – but I will focus on some aspects of the library and on how it feels to use it every day. Moreover, we will try to give a few insights on why you might want or not to use it.

I think it’s best to hear first the bad news and then the good ones, so I’d like to start these series highlighting a few parts of Room which we didn’t find great. Let’s start!

TL;DR: Room is an improvement but we still need to write tons of SQL for trivial cases. Migrations became a chore instead of a pain: a good trade-off. Continue reading “Android Room: The good, the bad, the ugly”