Software Engineer (Go) - Betting - remote
At BlueLabs we started out last year with the vision of building a next-generation sports betting platform focused on performance, reliability, modularity and automation. After a period of experimentation, we are now excited to see our technology powering the launch of a new B2C operator in Ghana in early 2021.
To ensure the continuous enhancement of our platform while scaling up operations and entering additional African countries, we are now looking into growing our team. As a result, our Betting Team is now on the lookout for an experienced Software Engineer who wants to join our distributed team and help us execute our vision.
The Team
The Betting Team is responsible for designing, developing, and operating all services relating to the lifecycle of bets in our sports betting platform. This stretches from bet placement to bet settlement, including advanced features such as an event- and player-based risk management, ability to build complex bets such as from outcomes with dependent probabilities, or continuous calculation of early settlement offers (cash out).
Sub-second latency is welcomed but high throughput has higher priority in the Betting domain. The goal is building a sports betting platform where no bet is rejected due to lack of capacity in the system. Bet settlement is worth a special mention as the platform needs to be able to quickly evaluate hundreds of thousands of bets upon the resulting of an underlying sporting event.
Raw performance isn't everything. The team must also ensure that the platform can be easily adapted to be compliant with the different and ever-changing regulatory demands our industry is facing all over the world. The ultimate goal being to ensure a fair and safe sports betting experience to all our players.
We are building a microservice architecture based on event sourcing using Pulsar. Our services are written in Golang and use PostgreSQL as an operational database. We use SemaphoreCI to deploy our services to a GKE cluster, which is provisioned using Terraform.
A good candidate should have high standards for himself, a desire to build high-quality, well-tested, production-ready solutions and constantly improve his/her skills. We expect you to take ownership of some parts of the platform, be proactive over the entire development lifecycle and have the ability to work in a fast-paced environment. If this sounds scary, don’t worry - you won’t be alone in this. We value teamwork, trust, communication and a healthy working relationship, so you can always count on the team for support.
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.
- Interest in keeping yourself up to date and learning new technologies.
- Product-oriented mindset and eagerness to take part in shaping the products we build.
- Ability to work autonomously in a fully distributed team.
- Good communication skills in verbal and written English.
Remote Work
We are hiring for talent, not for a specific location. You will find that members of our team are distributed all over Europe. 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 a European time zone (between UTC-1 and UTC+3). You must also be able to travel to other European locations a few times a year for on-site meetings and workshops.
Timeline
The closing date for applications is on November 30th, 2020 and we would want you to start in your new role with us in January 2021. Please note that during the application period we are not yet reviewing submissions in order to ensure equal chances for all applicants independent of the timing of their application.
Compensation
The budgeted compensation range for this role is €64,000 to €76,000 annually, depending on your background and experience. As an independent contractor, you will be responsible for paying any taxes or applicable fees in your country of residence. In addition to that, we offer a number of perks to each of our team members as we truly believe in a healthy work-life balance and continuous learning.
Job requirements
- BS degree in Computer Science or similar technical field
- 2+ years of professional software development experience using Go
- Experience building large-scale distributed systems, communicating asynchronously via message passing using RabbitMQ, Kafka or Pulsar
- Deep understanding of DDD, CQRS, microservices architecture, and SQL/NoSQL data stores
- Ability to write clean, efficient, maintainable, and well-tested code
- Familiarity with test automation, cloud and containerization technologies, code instrumentation and CI/CD pipelines
- Interest in taking full ownership of your services and managing them in a production environment including the troubleshooting of live incidents