Scaling culture through Principles
Putting company values into action: the AMBOSS Product and Engineering Principles
At AMBOSS, our product and engineering teams have been doubling every year. Today, the teams are over 100 people combined (and we’re hiring). While scaling is a challenge for any tech company across many aspects, for example technology, product, and hiring, arguably the hardest thing to scale is culture.
Going from having everyone sitting together in one room, through the rapid pace of hiring new people where one room is suddenly too small, your ability to scale culture is stretched thin. The Coronavirus situation added even more strain by removing a natural way to share and adopt culture — in person communication.
Culture entails a lot — from how you work, to how you celebrate, to how you eat lunch together. Within the scope of this article, I want to focus on the part of culture that involves a shared mindset and way of working (together).
In the AMBOSS product org, we want to optimize for having autonomous, high performing, mission oriented teams that make a difference in our mission to empower all doctors to provide the best possible care.
In the previous paragraph, I threw around a lot of buzzwords that you’ve probably heard when speaking about product oriented tech companies. But as a company scales, actually creating the organization that delivers on these buzzwords becomes the major competitive advantage — or the singular point of failure for your company.
Next to ensuring your teams have a clear mission, your teams and people need to be empowered to make decisions without relying on leadership for decision making and execution. Values and principles are a set of tools that support that.
Values and Principles
Values are important beliefs, usually abstract and high-level concepts that capture a broad range of aspects encoded in a culture. Meike, our Director of Operations, recently spoke about how and why we defined our values. At AMBOSS, they form the strong foundation of everything we believe in and keep the company healthy — that’s why we call them the AMBOSS Immune System.
The AMBOSS values are:
- We are generous team players
- We value substance over style (“Mehr Sein als Schein”)
- We are hungry for impact
To make these abstract values more concrete, we defined actionable principles that serve to guide people and teams on their journeys to becoming autonomous and having impact at scale.
Our Product and Engineering Principles
“Start it. Then own it.”
We don’t believe in an attitude of “that’s not my job” when it comes to building great products.
Autonomy is our standard. And that means we support, monitor, operate, and retire everything we build — we own them from beginning to end.
Autonomy goes hand-in-hand with ownership. This becomes an important aspect as any company has more and more ground to cover. The number of ideas, features, services and domains around product teams rarely reduce as an organization grows.
We try to support as much self organization and autonomy as possible inside our company through teams, chapters, and guilds. On the flip side, that comes with shared/implied ownership.
There are dozens of examples from within AMBOSS where this applies and is successfully adopted. It happens with every service that teams deploy. But it also happens outside of service operations.
A good recent example was our end-to-end tests that were responsible for fragile delivery pipelines. They were starting to be accepted as the status quo, and are an example of where shared responsibility failed. One of our engineers decided to take ownership and tackle the issue.
Further to reimagining end-to-end testing at AMBOSS, they worked with different stakeholders to get general buy-in via training, process, and mindset, inside the frontend chapter to make sure the topic gets handled and solved.
“Elevate each other and the team.”
We are eager to experiment, research, and explore new technologies, tools, and ways of improving our product and its delivery.
Everyone should get the support they need and we actively fill in for others or team up to overcome obstacles.
“Say it positively, but concretely.”
We invest heavily in communication: communicating early and often ensures that work isn’t done in a vacuum. It’s important to us that our feedback is honest, specific, and actionable — this way, receiving feedback is always an opportunity to grow.
We all have a responsibility to voice our ideas or concerns in a productive and constructive way to create an inclusive culture that supports diverse opinions.
These two principles probably became even more important during the recent Coronavirus situation, since implicit communication was eliminated. We no longer had coffee machine meetings, chats inside of meeting rooms and chance hallway encounters.
Before the Coronavirus situation, we were already investing in good feedback channels since communication is at the core of our people development and culture. We hold regular feedback workshops where we train new and existing employees at AMBOSS on how to give direct and constructive feedback.
It’s also integrated into our individual career ladders, 360-degree feedback sessions, and 1-on-1s. And while every team works differently and has their own working agreements, regular retrospectives are done on each team. We also do retrospectives on a chapter, guild, and project level. We practice Postmortems and ensure feedback is shared and processed to continually learn, grow, and adapt.
“Decide with impact.”
As a team, we apply critical thinking and actively question how we provide value to users. We are explorative and pragmatic problem-solvers — we (in)validate assumptions on product value by providing transparency through data and metrics.
We value decisions that create a positive impact for our users and accept short-term disadvantages in favor of user advantage when necessary.
“Move quickly and iterate.”
Focus your work on the most valuable solution first and strike the perfect balance between planning and doing: code that never ships has no value.
Fail fast, learn fast: deliver products iteratively, experimenting with and consolidating learnings from past mistakes to avoid making them in the future.
For engineering, that means KISS and being strongly aware of the Pareto principle (sometimes referred to as the 80/20 rule) when designing solutions and making decisions. Good examples that combine these principles are some of the experiments created by our growth team.
We wanted to do more tests on our registration user journey. Our sign-up page was still on our legacy tech stack that few people in the team knew, and used a server side rendering which had no integration into our A/B testing frameworks.
The team quickly deployed a new frontend application for our sign-up flow using our standard technologies that everyone was familiar with, while reusing best practices and frameworks for A/B testing and data. However, our auth microservice was still being developed by another team, and the register logic was tightly coupled with the legacy application.
The solution we went with was to leverage the existing legacy solution (a simple HTML form with a REST endpoint) by creating an adaptor layer which allowed us to use the legacy form as a kind of API.
This allowed us to push forward and deliver value without having to wait for the ‘proper’ implementation. As soon as this ‘proper’ implementation was available, it was easy to swap the ‘legacy form API’ with the real one. Our new UI application would never know the difference, but was already implementing the latest lessons learned from the A/B tests into its scope.
Working with Values and Principles
As with our values, writing down and formulating our principles for the first time didn’t mean they didn’t exist before. People and teams applied them implicitly — the way our culture was naturally scaling.
By documenting our values and principles and making them explicit, we want to become an even stronger team, shaping and evolving this part of our culture. This makes it easier for new and existing employees to internalize and have them become part of our company DNA.
To achieve this, it’s important that once you have written down your principles they don’t become just another README.md people ignore. I try to revisit them often and ask myself at the end of the day/week/month: Did I live by and apply them for the decisions that matter?
I also try to make them part of as many conversations as possible, referring back to them consciously when making important decisions. I also make sure to have them top of mind when discussing things that didn’t go well during retrospectives or Postmortems.
If people make what feels like great decisions without you, it’s a good sign your principles are being adopted and are working.
Well defined and applied principles on top of company values can be the foundation for a lot of items that can be derived from them. They can also be a key enabler for people and teams to support autonomy and ownership.