Task

Create a idempotent system which does the following

  1. Takes a redis (Bull) job
  2. Creates an MongoDB Session entry (if not already present) OR updates an existing Session document

Goal

Your service ONLY needs to consume the queue, no need for an API or anything else.

The goal is a running service which consumes the queue and works with sessions which could be used as an technical MVP for the idea of a data pipeline

How we test your service

We add events to the queue and see if and how your service will create and update sessions.

We will as well send bad data which mimics previous bugs we had in the system to see how your service behaves.

We have millions of events per day. The performance of your service is crucial, so we will monitor this as well as how your service behaves when multiple instances are spawned.

Things you need to take under consideration