Open Source at Uber: A Conversation with Yuri Shkuro, Jaeger Project Lead

Molly Vorwerck
12 min readintermediate
--
View Original

Overview

The article features an interview with Yuri Shkuro, the Jaeger Project Lead at Uber, discussing the development and open sourcing of Jaeger, a distributed tracing system. It highlights the importance of open source in Uber's engineering culture and the community's growth around Jaeger since its inception.

What You'll Learn

1

How to contribute to an open source project effectively

2

Why open sourcing software can enhance community engagement

3

When to consider transitioning from closed source to open source

Key Questions Answered

What are the benefits of open sourcing Jaeger?
Open sourcing Jaeger has allowed for broader community contributions, increased visibility, and support from major companies like RedHat and Google. This collaboration has enhanced the project's capabilities and user adoption, making it a vital tool for distributed tracing in microservices.
How did Jaeger evolve from an internal tool to an open source project?
Jaeger was developed internally at Uber to address the challenges of distributed tracing. It evolved by integrating features from existing tools like Zipkin and OpenTracing, ultimately being open sourced to leverage community contributions and enhance its functionality.
What role did the Cloud Native Computing Foundation (CNCF) play in Jaeger's growth?
The CNCF hosted Jaeger, which provided significant exposure and support for the project. This affiliation helped promote Jaeger at major events and encouraged best practices in governance and documentation, leading to a stronger community and project sustainability.
What challenges did Jaeger face during its development?
Jaeger initially faced challenges due to its dependency on Zipkin, which limited its flexibility. The team decided to remove this dependency, allowing Jaeger to become an independent tracing solution with enhanced features and capabilities tailored for diverse use cases.

Key Statistics & Figures

Jaeger GitHub stars
over 6,000
This metric reflects Jaeger's popularity and community engagement since its open sourcing.
Jaeger commits in 2018
over 13,000
This indicates the active development and contributions to Jaeger during that year.

Technologies & Tools

Some links below are affiliate links. We may earn a commission if you make a purchase.

Key Actionable Insights

1
Engaging with the open source community can lead to unexpected use cases and improvements for your project.
By interacting with users and contributors, developers can gain insights into unique challenges faced by others, which can inform future development and feature enhancements.
2
Documentation is crucial for the success of an open source project.
Investing time in thorough documentation ensures that new users can easily understand and utilize the software, which can significantly increase adoption and community contributions.
3
Fostering a respectful and collaborative community is essential for open source success.
Building a culture that values feedback and collaboration helps create software that is beneficial not only to your organization but also to the broader community.

Common Pitfalls

1
Assuming that simply open sourcing a project will guarantee its success.
Many projects remain unnoticed on platforms like GitHub without proper promotion and community engagement. It's essential to actively promote the project and foster a community around it.
2
Neglecting documentation in open source projects.
Poor documentation can lead to user frustration and decreased adoption. Ensuring comprehensive and clear documentation is critical for user onboarding and community contributions.

Related Concepts

Distributed Tracing
Open Source Software Development
Community Engagement In Software Projects
Microservices Architecture