A little while ago, we decided to define and document ezCater's pull request culture in an effort to streamline onboarding and facilitate collaboration as our team doubles, quadruples, and beyond in size. Clearly communicating both how we operate and also why we do things the way we do, sets people up for success from day one. We're proud that new hires are able to contribute to the codebase during their first week and are always looking for ways to simplify onboarding.
Along the way, we realized that our underlying philosophy on pull request practices reflects more than just the pull request process itself and encompasses a greater shared code culture. So, we elected to pivot slightly and distill this philosophy into a set of core Code Culture tenets.
As an engineering team, we share a philosophy on how we approach creating. We then encourage each squad and each individual within them to boldly follow whatever processes work best for them. We aren't prescriptive about it. We hire talented folks that we trust and empower to do amazing things!
So what's ezCater's Code Culture?
Deliver Continuously: Make small and targeted changes that can be reviewed, merged, and deployed in less than four hours.
Keep It Simple: Code is read many more times than it is written. Think about the next engineer maintaining or reverting your code.
Embrace Ownership: You own your code from inception to deployment. Follow it into production when YOU decide it is ready to merge.
Blame Free: Mistakes are expected, respected, inspected, and corrected. Don’t catastrophize. How we handle mistakes defines us.
Be Pragmatic: Make appropriate trade-offs when building as a Pioneer, Settler, or City Planner.
Flexibility Wins: Pick your battles. Embrace change. Don’t fall in love with your code.
Collaborate: Give clear, concise, direct, and empathetic feedback. Receive feedback willingly and with appreciation.
Remove Friction: Follow the existing conventions of a codebase. Check the README and CONTRIBUTING. Document decisions.