Logo
Spotify

Backend Engineer II - Platform

Spotify, Toronto, ON


We are looking for a passionate Backend Engineer to join Spotify's Observability and Reliability Infrastructure team. Our mission is to provide a coherent observability and reliability platform for our engineers by providing tools, expertise and insights around the operational health of Spotify's microservice infrastructure allowing teams to confidently operate their services.

You will combine software and systems engineering to build and run large-scale, distributed, fault-tolerant systems with a focus on optimizing systems and reducing work through automation. At Spotify, our engineers are empowered to work on meaningful projects. They achieve this from an environment that encourages intellectual curiosity, problem solving, and openness-one that provides the support and mentorship needed to "safe to fail", to learn, and to grow.

What You'll Do
    • Be a technical leader within the team you work with and within Spotify in general.
    • Facilitate collaboration with other engineers, product owners, and designers to solve exciting and sophisticated problems for delivering various media worldwide.
    • Architect, design, develop, deploy and operate Java services following good design and development practices.
    • Be a leader of the Spotify-wide backend developer community affecting and driving our architecture across the company.
    • Hack on what you want during regular hack days and bi-annual hack weeks.
    • Engage in and improve the whole lifecycle for services- from inception and design, through deployment, operation and optimization.
    • Maintain services once they are live through measuring and monitoring.
    • Scale systems sustainably through mechanisms like automation, and evolve systems by pushing for changes that improve reliability and velocity.
    • Practice sustainable incident response and blameless postmortems.


Who You Are
    • You are an experienced Software Engineer.
    • You know how to write distributed, high-performance services in Java.
    • You are experienced with deploying and operating services on Linux.
    • You have experience working with cloud services (AWS, Azure, GCP) and containerization tools (Docker, Kubernetes).
    • You have experience working with version control systems (e.g., Git) and agile development methodologies.
    • You are familiar with Prometheus and time series databases.
    • You are familiar with reliability best practices like SLOs and SLIs.
    • You have experience or familiarity with Go and k8s operators.
    • You have a deep understanding of system design, data structures, and algorithms.
    • You care about quality and you know what it means to ship high quality code.
    • Experienced in designing, analyzing, optimizing code and fixing large-scale distributed systems.
    • Have a detailed problem-solving approach, coupled with effective communication skills and a sense of drive.


Where You'll Be
    • For this role you will be in Toronto, Canada.