About The Position

About the Role Klaviyo is looking for a Senior Software Engineer to join the Flows Platform team. In this role, you will help build and operate the core engine that powers all automated lifecycle programs at Klaviyo. You’ll play a critical part in delivering robust, high-scale backend solutions that process billions of events, send millions of messages, and ensure our customers’ automations run reliably and without delay. As a Senior Software Engineer, you’ll tackle complex challenges, explore multiple solutions, and weigh business and technical trade-offs to determine the best path forward. You’ll actively contribute to team discussions and help shape important technology decisions. You'll also be responsible for shipping well-designed, thoroughly tested solutions that prioritize reliability and performance. On the Flows Platform team, we focus on the core of Klaviyo’s automation engine, ensuring that hundreds of millions of actions per day are processed accurately and efficiently to power user workflows. Our work revolves around the core backend systems that determine who receives a message and when, handling complex logic for triggering, filtering, and scheduling at massive scale. We also manage the data stores and infrastructure that support these operations, ensuring reliability while we actively re-architect our stack to support the next generation of event-driven features. We are responsible for: Core Execution Engine: The logic for flow triggering, evaluation (filtering/branching), and action execution. We ensure that every event is processed accurately and efficiently. Scheduling & Orchestration: Managing time-based logic, delays, and the dispatching of millions of scheduled actions per day. High-Scale Infrastructure: Owning the execution data stores and pipelines that must run reliably at huge scale. Collaboration is key to what we do. We actively partner with engineering teams across the organization, giving us exposure to diverse parts of the product and opportunities to impact various projects. This keeps us engaged with a variety of challenges and solutions, as we’re always learning and evolving.

Requirements

  • 6+ years of experience in a software engineering role with a focus on backend systems and high-volume data processing.
  • Deep experience building robust services and APIs using Python and Django (or similar frameworks).
  • Demonstrated experience designing large-scale systems, managing technical debt, and making high-level architectural decisions.
  • Distributed systems knowledge and deep experience working with asynchronous task queues (e.g. Celery, RabbitMQ, Pulsar) and understanding the challenges of eventual consistency and distributed state.
  • Expertise in relational databases (MySQL/Aurora) and high-scale NoSQL stores (Redis or DynamoDB).
  • A focus on writing clean, maintainable code, participating in code reviews, and leading robust testing practices (unit, integration, and load testing).
  • A passion for coaching junior engineers, conducting code reviews, and fostering a collaborative and high-performing engineering culture.
  • Experience working in fast-paced environments and collaborating with other engineering teams to solve cross-functional problems.
  • Experience with Infrastructure as Code (Terraform) and container orchestration (Kubernetes).
  • Experience building cloud-native solutions, ideally on AWS.
  • Experience using AI coding tools like Claude Code or Cursor to accelerate development.

Nice To Haves

  • Experience with Event-Driven Architecture and streaming technologies like Pulsar or Kafka.
  • Background in building platforms that support other engineering teams.
  • Background in digital marketing, customer data software, or building analytics products.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service