Braze Senior Platform Software Engineer II at Braze responsible for building and evolving internal infrastructure as a service platform. Focus on automation, reliability, and large-scale distributed systems.
Responsibilities
Platform Software Engineers (PSWEs) are responsible for building, maintaining, and evolving our internal infrastructure as a service platform. Platform engineers are software engineers who apply sound engineering principles, operational discipline, and mature automation to the environments and infrastructure services we provide. We specialize in moving expertise in deploying and operating infrastructure from people to software –whether it be database provisioning and upgrades, Kafka topic management, or some more specific interest in high-scale data or distributed systems.
Our team helps to improve infrastructure reliability via automation and services. It empowers Braze’s other engineering teams to leverage the infrastructure products and platforms we create easily. Braze operates at a massive scale with over 8.5 billion monthly active users across our customers, collecting hundreds of billions of data points each month and sending billions of messages to end-users daily. We use a diverse technology stack rooted in Ruby on Rails, MongoDB, Redis, Kafka, Kubernetes, and more. As a Platform Software Engineer at Braze, you will collaborate with your team and consumer engineering teams to build and continuously improve the infrastructure as a service platform that every other team at Braze depends on.
Partner with Braze’s engineering teams on:
Defining and implementing IaaS productions that will help them build and deploy quicker
Make monitoring and alerting alerts on symptoms and not on outages
Ensure that Braze meets our strict enterprise-grade SLAs with customers
Develop Braze’s embedded frameworks that enable large-scale distributed processings
Design, build, and operate internal software frameworks that power Braze’s asynchronous and background processing systems at massive scale
Evolve and extend frameworks built on technologies such as Sidekiq to reliably execute trillions of jobs per day across a globally distributed platform
Own scaling behavior, reliability guarantees, failure modes, and operational safety of these systems
Provide opinionated abstractions, tooling, and guardrails that allow application teams to use distributed processing safely without needing to manage underlying complexity
Improve observability, debuggability, and operational ergonomics for large-scale job-processing systems
Qualification
You think about systems - interfacesHave an urge to collaborateHave an enthusiastic
Required
5+ years of full-stack development experience
You think about systems - interfaces, boundaries, edge cases, failure modes, behaviors, and specific implementations
Have an urge to collaborate, document, and deliver quickly
Collaborating across the global remote teams, often working asynchronously
Document everything so you don't need to learn the same thing (or plan the same work) twice
Delivering fast to delight our customers–even internal ones
Have an enthusiastic, go-for-it attitude. When you see something broken, you can't help but fix it
Have a desire to solve everyday challenges facing software engineers and automate their toil away
Have an excellent ability to manage multiple tasks and expectations at once
Experienced in working on large-scale API-driven systems
Experienced in application and systems observability
Experience in building/automating Kubernetes-based operators/custom resources