Software Engineer, Distributed Systems

Full Time
San Francisco, CA, USA
8 months ago

About Mixpanel

Mixpanel is an event analytics platform for builders who need answers from their data at their fingertips—no SQL required. When everyone in the organization can see and learn from the impact of their work on product, marketing, and company revenue metrics, they are poised to make better decisions.

Over 8,000 customers, including companies like Netflix, Pinterest, Sweetgreen, Samsara, and Uber, use Mixpanel to understand their customers and measure progress. Our commitment is to provide the most comprehensive and reliable analytics platform accessible and trusted by all.

We are actively recruiting for multiple Software Engineers across different levels for our org!

About the Role

Mixpanel is powered by a custom distributed database. This system ingests more than 1 Trillion user-generated events every month while ensuring end-to-end latencies of under a minute and queries typically scan more than 1 Quadrillion events over the span of a month. Over the last year, our inbound traffic has doubled. As our existing customers grow in volume and we add new ones, we expect this growth in traffic to continue. The Distributed Systems engineering teams are responsible for adding new capabilities and ensuring the smooth operation of the underlying systems.

Responsibilities

Mixpanel's infrastructure runs on Google Cloud Platform. We rely on Kubernetes and Docker for orchestration and containerization of our services. We primarily use Golang for writing services and all internal communication happens via GRPC. We use a combination of C and C++ wherever Golang doesn't meet our performance goals.

As an engineer on the Distributed Systems teams, you'll be responsible for:

  • Working with other engineers to build distributed systems that can handle data at scale
  • Debugging production issues across multiple services and all levels of our infrastructure stack
  • Ensuring reliability and uptime of the services you're responsible for
  • Keeping an eye on how much your service costs every month and removing inefficiencies wherever possible
  • Improving engineering standards and holding a high bar for code quality and simplicity
  • Pushing the boundaries on how our customers analyze their product data

A typical project requires a thorough understanding of how not just your service works but also how it interacts with other components. Here are some projects we've worked on in the past to give you an idea of what to expect.

  • Most of the systems in our stack provide at least once semantics. As a result, we risk duplicating events that flow through them. To overcome this limitation, we added support for event deduplication that can work at our scale. Typical approaches for deduplication don't perform well on large amounts of data, so we had to do something highly custom for our stack. We wrote about this on our engineering blog here.
  • Back in 2019, we migrated our ingestion API service from Python to Golang for better performance and type safety. We had to do this while ensuring that both systems handle data the same way. Because we had to compare, both, HTTP responses and transformed payloads, nothing out of the box worked for us. This blog post talks about how we did the actual migration without any customer visible downtime.
  • In 2021, as our traffic grew almost 100%, the cost of storing data became untenable. Our engineers worked on an incremental way to eventually realize almost $30000 in savings per month.

If projects like the ones listed above excite you, the Distributed Systems engineering team will be a great fit.

We're Looking For Someone Who Has

We have openings across multiple Distributed Systems teams. We're looking for engineers who have:

  • A strong grasp of computer science fundamentals when it comes to dealing with distributed systems and networks. You'll routinely run into issues where "one in a million" chances actually happen in production
  • A knack for problem-solving and thinking from first principles. You don't shy away from any problem, no matter the scale or impact
  • A bias towards shipping early and iterating. We believe in making small incremental changes to existing systems instead of large multi-quarter undertakings

Additional Resources 

  • Engineering Life Page 
  • Tracking events at millisecond granularity
  • Ensuring Data Consistency Across Replicas
  • Saving $30000 a month by improving Garbage Collection
  • Strategies For Effective Data Compaction
  • Monitoring Apache Kafka with JMX Exporter and Kafka Exporter
  • Resharding petabytes of data to improve performance for our largest customers

#LI-JY1

Compensation

The amount listed below is the total target cash compensation (TTCC) and includes base compensation and variable compensation in the form of either a company bonus or commissions. Variable compensation type is determined by your role and level. In addition to the cash compensation provided, this position is also eligible for equity consideration and other benefits including medical, vision, and dental insurance coverage. You can view our benefits offerings here.Our salary ranges are determined by role and level and are benchmarked to the SF Bay Area Technology data cut released by Radford, a global compensation database. The range displayed represents the minimum and maximum TTCC for new hire salaries for the position across all of our US locations. To stay on top of market conditions, we refresh our salary ranges twice a year so these ranges may change in the future. Within the range, individual pay is determined by experience, job-related skills, qualifications, and other factors. If you have questions about the specific range, your recruiter can share this information.

Mixpanel Compensation Range$188,500—$230,500 USD

Benefits and Perks

  • Comprehensive Medical, Vision, and Dental Care
  • Mental Wellness Benefit
  • Generous Vacation Policy & Additional Company Holidays
  • Enhanced Parental Leave
  • Volunteer Time Off
  • Additional US Benefits: Pre-Tax Benefits including 401(K), Wellness Benefit, Holiday Break

*please note that benefits and perks for contract positions will vary*

Culture Values

  • Be Open: When knowledge becomes open, we can come together as a team to collaborate around a shared purpose
  • Customer Focus: Our customers’ success is our success
  • Lead Change: Everyone at Mixpanel has the capacity to make an impact on the business
  • Results Oriented: Driving results in a measurable way ensures we stay focused on the highest impact initiatives
  • One Team: We can’t win without each other

Why choose Mixpanel?

We’re a leader in analytics with over 8,000 customers and $277M raised from prominent investors: like Andreessen-Horowitz, Sequoia, YC, and, most recently, Bain Capital. Mixpanel’s pioneering event-based data analytics platform offers a powerful yet simple solution for companies to understand user behaviors and easily track overarching company success metrics. Our accomplished teams continuously facilitate our expansion by tackling the ever-evolving challenges tied to scaling, reliability, design, and service. Choosing to work at Mixpanel means you’ll be helping the world’s most innovative companies learn from their data so they can make better decisions.

Mixpanel is an equal opportunity employer supporting workforce diversity. At Mixpanel, we are focused on things that really matter—our people, our customers, our partners—out of a recognition that those relationships are the most valuable assets we have. We actively encourage women, people with disabilities, veterans, underrepresented minorities, and LGBTQ+ people to apply. We do not discriminate on the basis of race, religion, color, national origin, gender, gender identity or expression, sexual orientation, age, marital status, veteran status, or disability status. Pursuant to the San Francisco Fair Chance Ordinance or other similar laws that may be applicable, we will consider for employment qualified applicants with arrest and conviction records. We’ve immersed ourselves in our Culture and Values as our guiding principles for the impact we want to have and the future we are building.