Senior Software Engineer - Channel Processing

Klaviyo Klaviyo · Enterprise · Boston, MA · Engineering

Software Engineer role focused on building and operating scalable, highly-available distributed systems for Klaviyo's core engagement product, processing billions of messages daily. The role involves owning features, collaborating across teams, and improving system performance and scalability.

What you'd actually do

  1. In this role, you will own and build features/services that hundreds of thousands of Klaviyo customers rely on daily to drive their business forward.
  2. Work on crafting our highly-scalable, highly-available campaign pipeline that processes and delivers hundreds of millions of messages daily growing to billions scale.
  3. Collaborate radically with teams and stakeholders across Klaviyo on designs, implementations, and engineering practices.
  4. Learn new technologies, bring them to the team and apply them to evolve our systems to the next level.
  5. Help us improve our experimentation and development processes, and mentor other engineers on the team.

Skills

Required

  • 4-6+ years of experience in a software engineering discipline
  • architected, built and delivered at least one complex system
  • Experience on large-scale system architecture, technologies and patterns
  • Good understanding of system pros/cons and use scenarios
  • Ability to apply system design with appropriate tradeoffs
  • Digging into performance and scalability issues
  • System monitoring and alerting techniques
  • Coaching and mentoring team members
  • Working on small, high-performing autonomous agile teams

Nice to have

  • Python
  • Django
  • React
  • MySQL
  • Redis
  • Memcached
  • Apache Zookeeper
  • Apache Pulsar
  • AWS (EC2, RDS, Aurora)
  • Terraform
  • Jenkins

What the JD emphasized

  • architected, built and delivered at least one complex system
  • large-scale system architecture
  • performance and scalability issues