We are not a feature shop. We are creating a company that is redefining an entire industry. That takes teams of people locked in step and aligned on the same vision. People that understand that the success of the company is defined by nothing more than the sum of their actions. Those actions should be guided by principles that illustrate how we should be interacting with the processes, systems, data, and people that we impact everyday as we march towards achieving goals that other groups would never attempt.
Mindful data today. Better solutions tomorrow.
Vision
All members of R&D are using data to make better decisions everyday. All functional areas circle back and analyze/reflect on the data created by new features.
Expectations
When you are trying to understand something, look at the data. Data should be considered at all stages of the product lifecycle. Business decisions are made with data, not just gut and intuition. Consult data specialists when questions arise.
Examples
- Problems are presented and prioritized with data. The solutions have outcomes that are answered with data
The product launch is not the finish line.
Vision
All innovation is done with the big picture in mind that will lead to where the company wants to be.
Expectations
Pick the right process for the right problem. Set a vision. Then define the path towards it. Treat a project like an expedition. Define your north star, fail fast, and learn from the voyage.
Examples
- MVP concerns are met
- Risks are identfied and addressed
- User experience is postive (enough to promote adoption)
You own what you launch.
Vision
Quality is owned by the entire department. Production problems are proactively addressed ahead of any other work. Production issues are handled equally across all contributors. Early learnings are the research and product teams responsibility to curate, but everyones responsibility to add to and understand. QA supports and focuses on quality, but is not exclusively responsible for it. Developers own the deploy process, are able to deploy at will, ensuring appropriate observability and instrumentation. Usability is central and everyone is responsible for advocating for our users.
Expectations
Any production issues involving something you were a part of need to be treated with the highest priority. By definition, something you already built is more important to the company in terms of priority than anything you are about to build. Things should be built to last and scale, but if a problem does arise, it should be handled immediately by those with the most knowledge on the subject. This will minimize business impact and lead to a higher quality product.
Leave it better than you found it. Engineers own what they launch, but we are part of #oneteam and working towards the same goals. Ensuring maximum business impact is a team responsibility.
Examples
- A production issue arises and an engineer realizes that they have knowlegde of that area of the application. Despite working on an important new feature, they drop what they are doing and move their attention to fixing the production issue.
- While coding a new feature, an engineer realizes that a related class is causing an n+1 query. Insead of ignoring it because they didn’t write it. They take a moment to refactor the class and ensure proper test coverage.
Work together. Win together.
Vision
Winning takes a full team. We empower more innovative and comprehensive outcomes by making sure the right people are in the room when decisions are being made to reach collective goals.
Expectations
Before you start a project ensure you know who is responsible, accountable, and who should be informed. Establish common rituals with the team you all believe in. Clearly outline the mission, desired outcomes and responsible parties for a successful collabotion. If issues arise, talk to the person directly. We expect team members to communicate blockers often and openly, to better work towards our outcomes, and resolve issues and conflicts swiftly on one on one. You don’t have to love every decision, but follow through with it once it’s made like you do.
Examples
- When kicking off a project, be sure to workshop it with members of each discipline to see if there’s interest.
- Set clear goals when collaborating with others. Are you looking for ideas, suggestions, feedback, concerns? Set the right tone to not waste time!
- Refer back to mission goals frequently in conversations.
- Target end date and work backward to establish the constant rituals for the team (ex. syncs, check-ins, metrics follow-up)–even if that end date needs to be moved as project progresses.
- Reading all of the principles. Please make a PR to remove this bullet and Mendocino Farms is on me.
- Decision makers sets a review session so that everyone understands and is on the same page (outlined mission, outcomes, and responsibilities to refer back to).