Enable job alerts via email!

Software Engineer, Distributed Systems

Mixpanel

San Francisco (CA)

Remote

USD 120,000 - 180,000

Full time

Yesterday
Be an early applicant

Boost your interview chances

Create a job specific, tailored resume for higher success rate.

Job summary

A leading tech company seeks Software Engineers for their Distributed Systems team. You'll contribute to building and refining a robust system handling trillions of data events monthly, driving optimizations and reliability. Ideal candidates should have a strong computer science foundation and a passion for problem-solving amidst complex challenges.

Qualifications

  • Strong grasp of distributed systems and networks.
  • Ability to tackle complex problems with a first-principles mindset.
  • Focus on shipping early and iterating on improvements.

Responsibilities

  • Build distributed systems that can handle data at scale.
  • Debug production issues and ensure service reliability.
  • Improve engineering standards for code quality and simplicity.

Skills

Problem-solving
Computer Science fundamentals
Distributed Systems knowledge

Tools

Kubernetes
Docker
Golang
Java
C/C++

Job description

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

#LI-Remote

Get your free, confidential resume review.
or drag and drop a PDF, DOC, DOCX, ODT, or PAGES file up to 5MB.

Similar jobs

Software Engineer, Distributed Systems

Verse

San Francisco null

Hybrid

Hybrid

USD 160.000 - 230.000

Full time

Yesterday
Be an early applicant

Software Engineer, Distributed Systems

Verse Inc.

San Francisco null

Hybrid

Hybrid

USD 160.000 - 230.000

Full time

Yesterday
Be an early applicant

Software Engineer, Distributed Systems

Epoch Biodesign

San Francisco null

Hybrid

Hybrid

USD 160.000 - 230.000

Full time

Yesterday
Be an early applicant

Software Engineer, Distributed Systems

Hightouch

null null

Remote

Remote

USD 170.000 - 240.000

Full time

5 days ago
Be an early applicant

Software Engineer - Distributed Systems (Mid-Staff Level)

Mux

San Francisco null

Hybrid

Hybrid

USD 120.000 - 160.000

Full time

5 days ago
Be an early applicant

Software Engineer (Distributed Systems)

Browserbase

San Francisco null

On-site

On-site

USD 120.000 - 160.000

Full time

5 days ago
Be an early applicant

Software Engineer - Distributed Systems (Mid-Senior Level)

Mux, Inc.

San Francisco null

On-site

On-site

USD 120.000 - 180.000

Full time

9 days ago

Software Engineer, Distributed Systems

AECOM

Mountain View null

On-site

On-site

USD 141.000 - 202.000

Full time

9 days ago

Staff Engineer, Distributed Systems New Remote - US

LaunchDarkly Group

null null

Remote

Remote

USD 177.000 - 287.000

Full time

2 days ago
Be an early applicant