This document captures some of the finer points of our company & team culture that haven't been explicitly documented to date.
Using family-oriented language sets weird expectations for those that you work with. It might sound harsh (or obvious, depending on your perspective) but we're here to solve the metabolic health crisis and we do not owe unlimited, unconditional love to the people we work with.
This means that we trust one another to use discretion and make decisions using good judgement in order to move projects and the business forward.
When and if someone makes a mistake, we respond by learning from the situation and supporting them through it so that they are supported – not reprimanded. We avoid implementing policies and red-tape as a reaction to one thing going wrong one time.
If we tell our team how to live their lives (e.g. You're required to take vacation on these days; we'll give you money to exercise; we'll coordinate your social life for you) without a specific company objective (e.g. lifestyle incentive program makes sense if we get a content deliverable and a learning from it; taking a contiguous week off per quarter enforces good patterns of documentation and redundancy), it feels paternalistic and hypocritical. We'll try to avoid this.
We rely on everyone to maintain and uphold this expectation and to build a positive culture where we accept, support, and work alongside one another in service to our company mission and priorities, and regardless of our differences of thought.
We show acceptance, support, and kindness in various ways: • Woo forum – to celebrate one another doing great work • Flowers – as a sentiment of appreciation or care • Supportiveness – jumping in and helping out when it's needed • Culture kudos – weekly at Friday Forum
Tolerance is also considered a virtue, but it suffers the same sort of diminished expectations forgiveness does. The Emperor summons before him Bodhidharma and asks: “Master, I have been tolerant of innumerable gays, lesbians, bisexuals, asexuals, blacks, Hispanics, Asians, transgender people, and Jews. How many Virtue Points have I earned for my meritorious deeds?” Bodhidharma answers: “None at all”. The Emperor, somewhat put out, demands to know why. Bodhidharma asks: “Well, what do you think of gay people?” The Emperor answers: “What do you think I am, some kind of homophobic bigot? Of course I have nothing against gay people!” And Bodhidharma answers: “Thus do you gain no merit by tolerating them!”
People joining the company frequently say, "I don't want to step on anyone's toes." At GitLab, we should be more accepting of people taking initiative in trying to improve things. As companies grow, their speed of decision-making goes down since there are more people involved. We should counteract that by having short toes and feeling comfortable letting others contribute to our domain.
Anyone can contribute to any part of the company at any time. There are no fiefdoms at Levels and nobody's responsibilities are sacred.
When someone shares an idea, they're putting themselves out there and opening themselves up to criticism, which is a very real risk. It feels bad when that idea gets shot down, and that person is less likely to contribute in the future.
There's nothing worse than getting an ambiguous "no" to a project with no obvious next step for how to unblock it, or passive criticism that has the result of making you look dumb in front of your colleagues. There should always be a clear next step, and everyone is responsible for helping us get there.
To be clear, we're not saying that you should never disagree with someone — in fact, we disagree all the time! But there is a difference between disagreement and passive criticism.
It's critical to set up the company's business model with the right incentives. Any entity that has misaligned incentives will fail in the long-run — or at the very least, operate in a way that is antagonistic towards its customers.
We focus on our members first. This means we don't feel the need to when a competitor releases an updated product, is featured on a podcast we like, or makes a big fundraising announcement. Focusing on our members will help us do the right thing for the long-term.
We should be aware of our environment and competitive surroundings, but avoid focusing on each play that each competitor is making on their respective fields. That's the best way to lose sight of what's going on in our own game.
The Levels team is remote-first. Our communication is default asynchronous, and we try to have as few meetings as possible. Synchronous communication can be distracting when not used correctly; this doesn't mean that we shouldn't meet when meetings are required, but we should be cognizant of not distracting others with synchronous messages when urgent responses aren't required.
The Levels team works remotely and has different schedules – we do not have a centralized office, and believe that people can get their work done from anywhere that they choose.
If someone asks for information that is already documented somewhere, it's not disrespectful to respond with a link to the document or discussion itself. It's not reasonable to expect that everyone has read all the documentation given how much stuff there is to read through, so it's 100% ok to link someone to existing resources. This provides them full context, empower them with information, and reinforce our async culture. For example, "For sure! You can find that documented here (link)"
We document everything thoroughly, every single time, even when it seems repetitive. And then we update the docs the next time to make sure they're up to date.
If you find yourself repeating a task often, you should pause and find a way to make the process more efficient, or remove it from your workflow all together. It's easy to keep doing small easy tasks, but they add up over time and distract from the larger efforts you could be focusing on instead. Consider automating, streamlining, or outsourcing the task to protect your time.
If you find yourself working on a task that someone other than you could probably do just as well, consider outsourcing it. You were hired for a very specific skillset and ability to execute, so administrative or repetitive tasks should be outsourced and managed. This doesn't mean that you can abstract far enough away to not know how the work is actually done, though.
Our time is currently worth more than money. If spending a few thousand dollars for a vendor to provide something will allow us to cut n months off of a project, we should absolutely make that trade. If we can trade money for time, we almost always will. This is an edge we have as a venture-backed startup.
Avoid "the curse of busyness". Being busy is not a badge of honor, but instead an indicator of a failure to plan and manage time effectively. The feeling of busyness is contagious and it negatively affects others on the team, so we place an emphasis on creating a calm work environment – free of fire drills, pings, recurring meetings, and frenetic last minute requests.
You should feel a sense of accomplishment after most workdays, and feel content closing your computer and stepping a way with a sense of calm. We'd rather you spend 5-6 hours in a focused flow state, making breakthroughs and massive progress towards your priorities as opposed to spending 8-9 hours doing a million things but not really getting anything meaningful done.
If we're not experimenting, we're not moving forward. If we're not learning, we're regressing. If we're not being scrappy and finding the path of least resistance, then we're taking too long to ship. If we're not shipping, then we're not moving with velocity.
When we finish a project, we close the loop. When someone makes an intro to us, we close the loop with them a few weeks later and let them know the outcome. When a Member gives us feedback, we close the loop to let them know we implemented it – even if it's 6 months down the road. We do everything we can to close the loop and never drop the ball on communication.
The passive criticism and repeated surfacing of (possible) problems and risks does not feel like a constructive addition to conversation. Passive criticism becomes toxic, confusing, disempowering. - Casey Means
If you're blocked on a project, address it directly and loop in team members accordingly. Let people know that you're being blocked, so that challenges can be resolved quickly.
This applies for the small things, too. If someone needs something from you in order to move forward and and it takes less than a few minutes for you to do, just do it.
Semantic and definitional differences are important and meaningful in that they highlight different areas we may want to consider. The problem is when we get stuck there and exchange too many words and too much time on something that doesn't really matter, or can be changed later.
We should be mindful of this trap and have an escape hatch handy, along time lines of, "Here is the term, and here is the definition of the term — let's all agree that going forward, when we say X, it means Y. Any other use of that term going forward is no longer valid."
From Wikipedia: Disagree and commit is a management principle which states that individuals are allowed to disagree while a decision is being made, but that once a decision has been made, everybody must commit to it. The principle can also be understood as a statement about when it is useful to have conflict and disagreement, with the principle saying disagreement is useful in early states of decision-making while harmful after a decision has been made. Disagree and commit is a method of avoiding the consensus trap, in which the lack of consensus leads to inaction.
As an individual – know that as company priorities shift and as the organization grows, your role and place on the field will change with it. You should be open to your role looking different over time. We'll each do our best to help one another through those changes.
Help to make things better – for each other, for our company, and for our team. We're not afraid of offering each other feedback to improve things; we're afraid of regressing from not wanting to speak out.
As an example, each person who goes through onboarding makes the process better for the next person by offering feedback and insight about ways in which we can improve the process.
Have someone else step in and take over an area, function, role or set of responsibilities so that you can move on and build new things at the company. It's good for them and good for you.
We work efficiently by being expert users of our tools – whether computer, software, or workflows. Being efficient and effective helps you maintain flow and focus and get more done.