Skip to Content

Senior Software Engineer (Scala)

RemoteGermany, Berlin, EuropeOffer Team

Job description

At BlueLabs we are building a next-generation sports betting platform focused on performance, reliability, modularity and automation. Our technology already powers BetFox, a new sportsbook operator in Ghana, and we plan rolling it out to additional regions in 2022.


To ensure the continuous enhancement of our platform while scaling up operations, we are now looking to grow our distributed team.

The Team

The Offer Team is responsible for ensuring that the users of our sportsbook platform are presented with relevant and fairly priced betting opportunities year-round and around the clock. The main deliverable of the team is a stream of betting opportunities. The team is currently working on enhancing the depth and the breadth of our offer, which translates to adding support for more sophisticated betting markets as well as new sports. 


Whilst we are currently consuming pre-processed sports and betting data from third-party data sources, the mid-term goal of the team is to gradually shift to a model where we have less reliance on third-party data sources, meaning that the full life-cycle of the betting opportunities will be managed in-house. One of such initiatives revolves around the implementation of in-house statistical models that will power our virtual sports offer.


The nature of the data handled by the team requires us to obey strict SLAs around the propagation times for any kind of update. Guaranteeing low latency is of utmost importance in order to prevent shrewd players taking advantage of stale data (e.g. odds taking too long to be updated after a goal is scored in a football match). 


Our platform is built using microservice architecture with Pulsar as a message bus. We primarily use Akka Cluster with Cats and Monix, but we already have a couple of services written in ZIO and are looking towards using it more in the future.


We take ownership of the whole software development lifecycle - architecture, development, testing, deployment to Kubernetes, monitoring and being on-call to respond to incidents. We expect candidates to be experienced in all of these areas.

About You

  • You have good problem-solving skills, a tendency towards simple and effective solutions, and a “getting things done” mentality.
  • Analytical thinking, troubleshooting skills, attention to detail.
  • You are a reliable, trustworthy person that keeps their promises.
  • Interested in keeping yourself up to date and learning new technologies.
  • Product-oriented mindset and eagerness to take part in shaping the products we build
  • Able to work autonomously in a fully distributed team.
  • Have good communication skills in verbal and written English.

Remote Work

Being a distributed team enables us to hire only the best, without being restricted to the talent pool available at a specific geographic location. However, to facilitate team communication and collaboration we currently require you to be located in Europe. You must also be able to travel to other European locations 1-2 times a year for our onsite meetings.

Compensation

The compensation range for this role is €70,000 to €100,000 annually, depending on your skills and experience. We encourage you to read our Recruitment FAQs for further details. In addition to the monetary compensation, we provide a number of perks to all team members, including a shiny new MacBook 16" M1 Pro (or Linux laptop).

Job requirements

  • BS degree in Computer Science or similar technical field.

  • 3+ years of professional software development experience using Scala.

  • Deep interest in functional programming.

  • Experience with Cats Effect, Monix or ZIO.

  • Experience with Akka Streams, FS2 or ZIO Streams.

  • Good knowledge of concurrent programming, as well as distributed systems.

  • Good knowledge of microservice architecture, message-based communication and stream processing.

  • Experience with test automation, cloud and containerization technologies, code instrumentation and CI/CD pipelines.

  • Experience of ownership of your services and managing them in a production environment including the troubleshooting of live incidents.