“See, when they ask you about the culture, tell them, ‘I know it well’” Propaganda, Daywalkers
We’ve all heard that workplace culture is important and, with the experience of my relatively short career, I can attest to that fact. I’ve had numerous lunch-table discussions about company culture ranging from the now-cliché bashing of Silicon Valley lavishness to singing praises of how awesome LinkedIn’s culture is.
However, one thing I feel is almost always missing from these discussions and articles is a focus on the minutia; the minor details that really define a company’s culture. We talk about culture in trendy terms like “startup culture” or “a culture of transformation” and like to equate awesome perks, such as free food, with a vibrant company.
On the day-to-day though, these “easy targets” don’t really define a company’s culture. Sure, they can be contributing factors, but culture is a manifestation of the beliefs and customs held by the employees of the company. That means you don’t have a culture of transformation by having a culture of transformation; you have it by your employees acting in such a way that transformation manifests itself regularly.
Another way of thinking about this is that culture is created bottom-up and not top-down. You can’t mandate your way into a healthy culture, but you can work with your peers to create one.
Bottom Up Culture: Code Reviews
Recently, I’ve had quite a few talks with various co-workers and superiors about different aspects of the Web Development culture at LinkedIn. We have a great culture among our developers but as the organization grows and changes we are actively trying to make sure we don’t lose aspects of it that we value. One of the topics that comes up frequently in regards to these conversations is around our process of code reviews.
For those of you unfamiliar with software development, code review is the process through which we get peers to review the code we’ve written for things such as style, correctness, and completeness. It’s a topic which has been talked to death with many differing opinions.
A process as mundane as reviewing code is not something you’ll likely hear highlighted as part of a company’s culture. And yet, for any tech company, it is almost definitely a part of their culture.
You see, the reason this area keeps appearing in our discussions is that how our developers approach code reviews speaks volumes about how they view their roles (are they learning during the process or doing it because they have to?), what they think about craftsmanship (are they concerned with quality code?), and how they interact with their team (do they try to sneak code in late at night or do they wait for good feedback?). All these aspects help make up the culture.
I, for one, want code reviews to encourage our developers to learn during the process, to strive for quality code, and to build constructive relationships between team members. This, however, is not something that we can simply mandate to happen.
If we want our code review process to be a great aspect of our culture, then we need to ensure our process is good and work together to make sure we are getting the benefits that we desire to see.
Culture Is Dynamic, Not Static
What this all points to is that company culture is tremendously dynamic. It can change with the coming and going of people (especially those heavily involved in the culture) and this brings great opportunities and challenges.
In the year and a half that I’ve been at LinkedIn, I’ve seen the web development culture change in many subtle and some not-so-subtle ways. I picture all these cultural factors functioning in a way similar to Conway’s Game of Life; they are constantly in play with each other, with various aspects of the culture coming to life or dying over time. It’s not a couple big, inflexible initiatives, but a bunch of small, day-to-day things that make up your culture.
This is good and exciting because it means you constantly have opportunities to revisit and reenergize the culture in your team, organization, and company, but it also means that we need to give attention to all the things that make up company culture. We have to look for alternatives and improvements for those cultural aspects that are not so great and care for and support those things that do make the culture great.
After all, a culture is only as good as its contributors.