Senior Software Engineer - Backend
Klaviyo Inc., Boston, MA, United States
Klaviyo is growing fast and we have openings for all skill levels across all of our teams. Learn more about our engineering culture at https://klaviyo.tech.
We love tackling tough engineering problems and look for Engineers who are passionate about building, owning, and scaling features and breaking through any obstacle or technical challenge in their way. We push each other to move out of our comfort zone, learn new technologies and work hard to ensure each day is better than the last.
Klaviyo operates a real-time data platform written in Python and built for massive scale on Amazon Web Services (AWS). Engineers come to Klaviyo with experience in a variety of languages and from a number of disciplines.
Team Overview
The Groups Team is responsible for the segmentation and audience creation functionality in Klaviyo. We process and store all of our customer’s data about their customers (profiles) and we allow them to group those profiles into audiences with our powerful segmentation engine. They can then send messages to those audiences or use them as a basis for reporting and analytics. We process billions of segment updates in real-time every day.
Please note this role is based in Boston, MA and requires 3x/week in the office.
Responsibilities
As an engineer on this team, you will be responsible for designing, building, and maintaining systems to support core product areas in Klaviyo. You will work with a cross functional team to help refine feature specifications, write technical design documents, create system infrastructure, write high quality code, and operate large scale systems in production. You will also review other engineer’s designs and code, and provide technical mentorship to other engineers on the team and in the broader engineering organization.
Team Tech Stack
- Python
- Django
- MySQL
- ProxySQL
- ClickHouse
- Kafka
- ZooKeeper
- Redis
Required Skills
- Highly skilled in using at least one modern programming language
- Bachelor's degree in Computer Science or equivalent experience
- 8+ years of experience in a software engineering discipline
- Significant experience with full stack application development
- Able to communicate well
- Able to work with others on a team
- Able to learn continuously and adapt to a high growth environment
- Able to stick with and solve difficult problems
Preferred Skills
- Experience with distributed systems
- Experience performance tuning and scaling systems
- Experience with OLTP and OLAP databases
- Schema design
- Normalization / denormalization trade-offs
- Performance
- Operations
- Experience with high volume data processing and storage systems
- Experience using Linux operating systems