It all started with a post in our internal blog. A colleague shared with us that he has visited a workshop organized by Corporate Rebels. He briefly described who they are and invited every team to try their canvas. I read about them, but they didn’t grab my attention back then. Half a year later, another colleague proposed to do the same. I spent some time reading about the canvas again with an identical result. However, this time I decided to go a bit further and talk to someone who actually did the homework. It helped to improve my understanding a bit, but the conclusion was that the canvas doesn’t probably worth trying.
At this moment, I should probably stop and give a short explanation about Corporate Rebels. It’s initially a blog where, back in 2016, two guys started writing about progressive workplaces. They have so-called Bucket List of most inspiring individuals and organizations. They visit people from the list to interview about their success in getting rid of corporate dogmas and replacing them with innovative ways of leading. Nowadays, they also do presentations, workshops, and events. Recently, they wrote a book.
So, my opinion started changing a few weeks ago when I learned about the book. I think it was in Amazon’s recommendations. The name Corporate Rebels: Make work more fun looked familiar, so I decided to go for it. Basically, the book is an adaptation of their blog posts structured to support the 8 trends. It tells how different organizations, such as Spotify or Belgium department of social security, manage people, and work. When reading, I was mentally applying each case study to my company and my team. Of course, I knew before starting with the book that JetBrains is the best employer ever, and I’m happy to work on GoLand. But I also knew that this judgment is somewhat subjective. To my surprise, we-do-it-too feeling appeared more often than I expected. Below, I want to go through the trends one by one and share thoughts on how they apply to my everyday working life.
Every team at JetBrains is unique. What you find under this paragraph may or may not apply to other teams or the company as a whole. Every team member has their own opinion. They may or may not agree with what I write. And this is all absolutely fine. What I want with this post is to express my reflections on the book and the trends. Take it with a grain of salt.
1. Profit → Purpose & values
For me, JetBrains was never about money. Of course, it’s a commercial company, and we sell our products. But it feels that the only reason to get paid is that it enables the company to improve and create. Our users pay for the value they get. Without steady income, we can’t function thus can’t provide value. So, in the end, the users suffer. This is the situation where both parties depend on each other. The great confirmation of this thesis happened in 2015 when the IntelliJ products switched to a subscription model. Some predicted that no one will buy subscriptions, and JetBrains will soon close. On the contrary, many people supported the company. The number of users continues to constantly grow.
During my 5 years at JetBrains, I never had to choose what to do based on profit. Instead, I always ask myself: how does it align with our mission?
We make professional software development a more productive and enjoyable experience.
If it improves the productivity of the users, if it makes their lives better than it’s definitely the right choice. There’s no money in this equation.
Another point is that the company remains privately held after 20 years of its existence. It’s unclear whether it’s possible to avoid turning towards profit, having a bunch of investors behind. I’d love to learn about such examples. But for now, JetBrains doesn’t have to “return,” so my decision tree remains simple.
2. Hierarchical pyramid → Network of teams
JetBrains currently has more than 1300 employees all over the world. There are many teams of a different size, some of them have sub-teams. At the same time, there are usually no more than 4 levels of hierarchy: employee / team lead / platform lead / CEO. This hierarchy, however, doesn’t always reflect reality. People from different teams can gather to form projects with their own coordinators. A team lead or CEO can have the role of a developer in such a project. It’s encouraged to work on something other than primary responsibilities, be it a 20%-project or another product.
IntelliJ IDEA—the main product—is a part of the IntelliJ platform that has more than 300 people in staff. The platform consists of more than 35 teams, with the majority of them having less than 15 members. The bigger teams work on IDEs such as CLion or PhpStorm; the smaller teams work on plugins such as Grazie or Rust. While teams usually have their own support engineers or technical writers, they still cooperate with other departments when they need something that relates to, say, a website or IT infrastructure.
There are no formal communication rules. Teams are free to establish processes that suit their needs. Typically, YouTrack—the issue tracker-is used to track tasks from bug reports and feature requests to travels and hiring. Slack is a common chatting platform though some prefer emails.
In general, one can describe JetBrains as a self-coordinating bunch of people with rather roles than positions.
3. Directive leadership → Supportive leadership
I’m working on GoLand for the last two years. During this time, I’ve never seen the team leader giving direct orders. Instead, he was always participating in discussions by providing advice or throwing questions. I never thought before that asking the right question can be such a powerful tool for a leader. It motivates people to look for solutions themselves, thus allowing them to grow professionally. At the same time, he was always there to help with technical challenges.
Another essential property of a team lead at JetBrains is the fact that they combine this position with a role in a team such as a developer or, say, a product marketing manager. It allows leading by example. The common problem of many organizations that management separates from the first line doesn’t exist at JetBrains. Team leads are the first line. They write code. They talk to users. And sometimes they’re a bit sad because they have less time to do it.
4. Plan & predict → Experiment & adapt
There’s no general plan that the GoLand team has to follow. Instead, every release that happens once in four months, the team gathers to analyze the past and plan the upcoming cycle. During the retrospective, we try to understand how well we followed the previous plan. Additionally, every team member names points belonging to two categories: things we like and things we need to improve. We combine a list and vote for the most critical topics. We create an action point for each of them and try to fulfill it during the next release.
The planning is somewhat similar to the retrospective. Everyone points out what they think is vital for the next release. We then discuss the combined list and rearrange it according to priorities. The team members assign tasks to themselves. The product marketing manager publishes the plan both internally and externally. The team is free to check the plan at any moment. We also conduct small retrospectives along the way.
JetBrains Labs is an internal incubator. It’s not an organization but a set of processes that help people start, implement, and finish a project. They’re free to devote from 20% to 100% of their time to the project of their choice. Projects don’t usually mean to last longer than half a year. By the end of this time, they should be either finished (successfully or not) or reevaluated. The company provides guidance and all necessary resources. This creates a possibility to experiment with ideas that could be otherwise hard to fit into the usual development process.
5. Rules & control → Freedom & trust
There are not so many rules. New ones typically appear to help employees making a decision in an unusual situation. And even then they’re vague giving freedom of maneuver. For instance, there’s a rule that everyone is free to change the team. The rule sets the deadline to notify the current team. The rest should be agreed between team leads and an employee. More rules apply, though, when a government intervenes, e.g., with taxes or working days limitations.
In GoLand, everyone is free to work when and where it’s comfortable for them. Vacations don’t require prior agreement. One can take a day off at any moment. There’s no control of spending time. People can choose hardware and order books or whatever else they need for work. There’s no budget for these things though expensive or unusual stuff requires a team leader’s approval. This is all possible because of the high level of self-discipline in the team. The downside is that we can’t work with people whom we don’t trust. It imposes strict restrictions on the hiring process.
6. Centralized authority → Distributed decision making
There’s a saying that at JetBrains, every developer is a product manager. This means that everyone is free to choose what they’re working on. The combined effort forms a product. Such an approach works incredibly well in the situation when developers do tools for developers. But sometimes an effort of one isn’t enough. Such cases we cover with marathons. We already had several of them dedicated to performance, quality, and localization. They help to improve a specific area in a short time.
The GoLand team decides its strategy regarding the Go language support as it’s believed that it has a better knowledge of the ecosystem. It still accepts suggestions from other teams and influences the platform in its own interests. Even though there’s no need to formally report, the team tracks its progress and the overall situation. The product marketing manager prepares a yearly report of the product development as well as conducts various researches. We share this information with the whole company.
7. Secrecy → Radical transparency
Team leads participate in weekly meetings where they provide statuses of their teams. The results are published in the internal blog under the name The Gazeta. There’s also a monthly Internal Newsletter that features important internal and external events as well as highlights financial information such as sales dynamics and top deals. Townhall meetings take place from time to time with company updates, and a possibility to ask questions either publicly or privately. They’re very popular among colleagues and always highly awaited.
There’s not much to say about our team. We have daily stand-ups in the written form, so everyone is aware of what others do. Once a week, we meet for a video call to discuss things and sometimes give a demo of the work in progress. Everyone is up to date with information about current affairs, such as hiring. It seems that we just have nothing to hide.
8. Job descriptions → Talents & mastery
Having the flat hierarchy means that positions aren’t that significant. I know people who asked for a job title with a specific name, and they got it. Significant is what people do and what they can do. Skills matter. It’s equally understood by employees and the company. The latter commits to helping to improve them. It pays for conferences and workshops. A hackathon and an internal conference take place annually. It’s encouraged to have projects and give talks that have nothing to do with the regular job. 20%-projects I mentioned before serve the same purpose. Specifically in Munich, the company covers German or English language courses.
Other than that, JetBrains hosts various external meet-ups and conferences. Everyone in the company can arrange their own event, and some do. I once was involved in organizing a talk of an external speaker. It’s an exceptional feeling when one has the whole company’s power for one’s disposal. There was zero bureaucracy involved, so we prepared everything in under 48 hours from a speaker’s invitation to the event.
These are more or less my thoughts that appeared while I was reading the book. Eight out of eight surprises and inspires at the same time. They don’t mean that we can relax and enjoy our progressiveness. Instead, it’s a great challenge to preserve our values and make them survive the rapid company’s growth. At the same time, we still have a big room for improvement. What should we do next? It’s an open question that’s yet to be answered.
When I finished the book, I decided to approach the canvas again. How big my surprise was when I learned that they contain the very same 8 trends. OK, now I understand them. And it seems that I just did my homework.
P.S. At some moment, I dared to think: how cool would it be if Corporate Rebels learn about JetBrains? I’m definitely biased, but it looks like we deserve to be interviewed among other progressive companies. To my delight, I found JetBrains on the list. I think it means that we do it all right.
I've just finished the book by #CorporateRebels. I can't recommend it enough. I decided to write down some thoughts that appeared while I was reading. Beware a lot of inside about working at JetBrains. https://t.co/knOXiQCi7D— Artem Khvastunov (@art_spb) May 16, 2020