Skip to main content

How to Contribute

Cadence is a project with high ambitions and we cannot achieve it without a strong community. We would love for you to get involved and be recognized for your efforts through our official channels.

There are many ways to contribute to the Cadence project including the following list of possible roles but not limited by that list. Join us to be a part of building a modern orchestration engine and feel free to reach out to us if you need help!


Core Team

To have the most influence on the Cadence project, join our core team. We announce open roles in the team in our Slack workspace, Linkedin and other mediums we use (or you can use this query). Apply when there’s an opening and join us. Currently we have offices in Seattle (US), Bay Area (US), and Aarhus (Denmark).


User

This is where our biggest community is and this is how people get to know about Cadence. Here are different ways to become a Cadence user.

User / Consumer

Go to our Github organization and start using Cadence. That’s it! Tell us how your first experience was so we can improve. Get into discussions in our Slack workspace to explain your use case. Get help from our support channels. Feel free to ask for free consultation on your design. We learn a lot from our users and from their experiences.

Alpha Tester

While each release goes through weeks of quality assurance process including unit testing, integration testing, benchmark/performance testing, staging and internal tiered rollout to billions of workflows, alpha testers who get their hands on our public releases as soon as they are out provide very meaningful feedback and catch bugs that might only appear in different set-ups. By being an alpha tester you help the entire Cadence community!

Champion

Champions are the first users or the power users of Cadence in a company. They introduce Cadence to their company and help teams there to get the most out of Cadence. They are the bridge between us and the internal users in their company. By being a champion, we can learn about your challenges, use cases and important feature requests. Then your feedback helps us prioritize addressing your concerns to improve Cadence experience for everyone in the community, more importantly, starting from yourself!

Writer

Another way to help us cultivate our community is to share documents about Cadence! Whether it’s writing blogs or technical articles, recording video tutorials or organizing collaborations; sharing how your experience is with Cadence and how others can benefit from it is a great way to help build a community. This also helps gain public visibility on the personal level.


Technical Contributor

Developer

You can become an individual developer by taking up tasks and projects. If this is your first time and want to see how your experience is going to be, you are welcome to take any issue tagged with “good-first-issue” or “up-for-grabs”. We are happy to explain what needs to be done along with providing more details and pointers, if needed. Your journey starts there and can continue with working on bigger and more serious projects based on your past involvement.

Reviewer

Another great way to start contributing is to code review others send in pull requests. You can help us adopt best practices, avoid bugs and find more elegant ways to implement a certain feature. There are always open pull requests to chime in and provide your technical feedback. This process is also a great way to learn about how Cadence works and how we are trying to improve.

Bug Reporter

Reporting bugs is the perfect way to improve reliability and improve the overall experience of the community. You can report bugs in our GitHub repositories. Depending on your understanding explaining the bug, repro steps and potential fixes would help us address the issue as fast as possible. Feel free to send a PR for the fix if you already know the fix and can write it.

Tech Lead

When you become an expert on Cadence codebase and understand all the moving pieces in detail and at a high level, you can get involved in design and technical direction decisions. You can make more in-depth proposals and influence the project more technically.


Partner

There are several ways to have partnership with the Cadence project.

Partner Company

When you are a company enjoying using Cadence and become a part of our journey by getting more involved and making codebase contributions, you can become a partner with us. We can have exclusive channels and meetings to communicate, plan what needs to be built and execute design and implementation together. This is the way to get the most out of Cadence and always be prioritized based on your needs as well as get more publicity for your company.

Organizer

The Cadence team hosts monthly webinars, joins conferences and presents in different companies. Help us spread the word and become a host for our events! We are happy to present about Cadence or join your webinars, meetups, conferences etc. Collaborative events like these are great for both parties!

Selling Managed Cadence

Cadence is an open source project without monetary concerns. We are proud to use the exact same open source version of Cadence at Uber at scale which maps to thousands of use cases, billions of workflows and over 100K+ updates per second! While we improve the experience with operating Cadence day by day, there are still many companies who would prefer buying a managed version of our technology due to not having resources or just to have a piece of mind.

We currently work very closely with companies selling Cadence as a such offering to help them succeed so we can build a happier community.


Governance

Decision Maker

Cadence is moving to a more open governance structure starting from January 2025! This is a big step to plan together, propose/discuss together, and design together. While the core team will organize the final outcomes, the more you are involved, the more you will be able to influence. To learn about our governance model, please refer to this document.


Expert

Consultant

Consultants are experienced professionals who help others start using Cadence. They can help users set up Cadence for the first time, onboard their domains, design their workflows, and adopt best practices.

Critic

You can provide constructive feedback to the Cadence project to help us do better! A part of being a true open source project is to receive such feedback. Whether it's technical feedback related to design and codebase or other matters, we might be too used to the ways we have been operating on. Seeing the project through a pair of external eyes would help us notice inefficiencies.

Statistician

We aspire to build the most flexible, reliable and scalable orchestration engine. You can help us collect performance benchmarks and compare them against other engines. This will help both the community to make more educated decisions and us to see the gaps with others.

Orchestration Expert

You can help our community compare Cadence to other orchestration technologies holistically. Starting from the onboarding experience, to feature-set; from observability to performance and scale; from intuitiveness/ease-of-use to contribution experience; you can help others evaluate Cadence. Your comparison will also help us improve Cadence even better!