Software Engineer
Kobalt
Kobalt Intro:
Kobalt is one of the world’s largest, most innovative music companies, using technology to power creative freedom, transparency, ownership and control for artists, songwriters, publishers, and labels.
Founded in 2000 by Swedish entrepreneur Willard Adhritz, the startup built a platform to maximise efficiency, accuracy, and transparency across the billions of micro-payments collected in today’s highly complex digital world. As the traditional music companies fought technology and contracted, Kobalt embraced it and grew, building an infrastructure and world-class creative team purposely designed to usher in the streaming era, along with a more fair, rewarding music business for creators. Our technology enables them to access royalty payments 4x faster while also maximising the royalty collection amounts.
With over 400 eployees in 12 offices around the world, Kobalt today represents over 31,000 artists and songwriters, 700,000 songs and 600 publishing companies. Kobalt is proud to work with artists, songwriters, and companies like Childish Gambino, Max Martin, Paul McCartney and MPL Communications, Disney Music Group, and many more.
Context:
Kobalt continues to grow 3x faster than the market and as such has a continuous focus on scaling out its systems, products and services to cope with the increasing demand. One of the key opportunities for Kobalt is to address the masses of songwriters that are reasonably early in their careers and as such struggle to get representation from strong publishers. As most publishers depend on primarily manual processes, the cost of service usually outweighs the revenue potential that those songwriters would generate. Through technology, Kobalt aims to reduce the cost of service for each individual songwriter, making it viable to support large numbers of songwriters at a marginal cost.
Who is the Usage Processing Team?
- The Usage Processing team is responsible for building systems able to take the billions of lines of usage reports from streaming services, understand where our catalogue has been used, and produce claim files to send back to the services in order for our clients to get their well-deserved money.
- Our current project is designing and implementing a new cloud based system capable of scaling for future growth, while at the same time attempting to remove as many points of manual interaction as possible to save both time and money, as well as the chance of error in critical systems
- We have future plans to ensure that the entire process is as fast, efficient, scalable and cost-effective as possible.
Team Tech Stack:
- Java (Spring Boot), Kafka, Scala (with Spark)
- AWS Services including: ECS, S3, SAM, EMR, AWS Transfer, DMS, EKS, MSK, Step Functions, Athena
- Terraform, CircleCI, Github, Docker, Datadog
Recent Projects:
- Share Calculation - A system to calculate, for given usage lines, the percentage of the relevant songs we should collect. Taking a legacy oracle PL/SQL batch process and rewriting it into a modern, Kafka-enabled end-to-end streaming process using java microservices.
- Claim-sync - A relatively small project to enable automated sending and receiving of files from third-parties to minimise the risk of manual error. Utilising AWS Transfer family and AWS’s Serverless Application Model.
- Fee Calculation and Claim Calculation - A system to calculate, after the share-calculation service above, the fees we should claim from the streaming services on the behalf of our clients. Taking a legacy oracle PL/SQL batch process and rewriting it into a modern, Kafka-enabled end-to-end streaming process using java microservices.
What you will bring:
- Experience in software engineering (we use Java, but we're open to all backgrounds) and you're excited about solving complex challenges.
- An interest in large scale data processing.
- Good knowledge of cloud platforms, e.g. AWS/ GCP/ Azure.
- Some proficiency in SQL.
- Exposure to CI/CD pipelines and test automation (unit, integration, end to end).
What does success look like:
- Actively participate in defining and building data-driven solutions
- Contribute to the exploration of new technologies including analytics engines, databases and data warehouses
- Practice a DevOps culture that has CI/CD & automation within the team
- Positively contributes to continuous technical development of team & department peers
What do we offer:
- Competitive Salary: Discuss with the Talent Partner.
- Flexible working. KTech operates with a hybrid working policy (fully remote possible).
- 25 days annual leave.
- 1 wellbeing day per quarter.
- Half day summer Fridays (July and August).
- Christmas closure.
- Meeting free Fridays afternoon outside of the summer months. We use this as dedicated learning time.
- 5% pension contribution.
- Health Insurance.
Interview Process and our commitments to you:
- Recruiter Call (30mins)
- Technical Screening Call (60 mins)
- Final Interview - Pairing, White Board Exercise & Culture (120 mins)
We are committed to completing the process in 2 working weeks and are willing to be flexible to meet the candidates requirements.
We are also committed to providing feedback on each interview no longer than 48hrs after the interview via email, telephone call or a ZOOM.