This article is a part of the blog post series about How We Run SoftwareMill. By sharing insights on how we operate as a fully remote, transparent, flat and self-organizing company we want to celebrate our 10th anniversary with the amazing community that we’re part of :) This time we focus on our culture. If you’re looking for some other examples of companies building remote culture, read this article that mentions how Zapier, Litmus and Buffer succeed at remote culture building.
Our mission at SoftwareMill is to create the best place to work for developers. This is what was guiding us throughout the last 10 years when we were growing the company. We’ve been 100% remote from day one and in 2013 we became a fully transparent and flat company. The culture we’ve built and continue to build reflects our efforts to bring to life the following formula:
*(100% remote work + flat structure) culture = happiness**
Is culture really a multiplier in this equation? That’s what we think, as it glues everything together and is a key part of our company pursuing the innovative organization model.
Still, it’s quite a vague concept as it comprises of assumptions, habits, behaviors and decisions that are perceived as a part of who we are as an organization. That’s why we’ll share both general assumptions about its key elements at SoftwareMill and some practical real-life examples.
Here’s how it works:
The foundation: trust + flat structure + empowerment
First things first. Trust lies at the heart of SoftwareMill. It’s the basic assumption that we adopted together with the decision to work 100% remotely. Trust removes any unnecessary managerial overheads like micromanaging or checking up on what everyone is working on. Instead of that, we evaluate the results, which are the best indicators of how we work. Read more about the role of trust in our company in the article The real reason you need a screenshot monitoring software to track productivity of your (remote) team.
In 2013 SoftwareMill’s founders decided to switch to full transparency followed by an introduction of a flat structure. We’ve shared some insights on how it works and how we make the decisions. Both transparency and flatness shaped our culture to a large extent as they enabled the third foundation element which is employees empowerment.
When you actually have an impact on every aspect of an organization, when you can put to vote any decision you want and you can work with others on any area of your company, you really feel that you have power to change things. And that feeling is priceless. Even if not everyone gets engaged in actual decisions and work, the empowerment boosts motivation in an unprecedented way.
One of us just recently took the time to suggest a new initiative of supporting our growth and development. A particular format of internal presentations was introduced, followed by a schedule of trainings that will happen based on the answers from the survey among all of us. It’s just one of the examples of how people initiate changes and take ownership of the decisions that are being made.
Taking care of the basics: equipment, health, sport
Although taking care of the equipment or healthcare may seem pretty obvious, the devil lies in the details. First of all, all our employees pick whatever equipment they need and any devices or software that increases their productivity. We cover all the expenses as although we don't have an office, we think that we should take care of everyone’s working environment by providing them with the best possible tools.
As for health and sports, we strongly believe that to be happy you need to take some time to take care of your health and do some sports. We promote healthcare packages and gym membership passes. We also organize contests for the best sportsperson of the year and sports challenges like a push-up challenge. You can check who from our team joined the Hall of Fame by doing 1000 push-ups on this website.
We encourage everyone to have a full body health check-up done once a year by providing small gifts to the ones that did that. We want to show that we value each other’s health and monitoring our health is not just another perk, but a really important thing for each of us.
We put great emphasis on the hiring process at SoftwareMill. We know it’s a long-term investment we won't regret. As trust lies at the heart of our culture we want to be diligent about the new people joining our team, so that we don’t have any doubts when crediting them with the trust. The hiring process consists of a few stages:
- filling out a form,
- screening interview,
- completing a programming task,
- code review,
- technical interview,
- and a final in-person interview.
Our goal is to hire people who are experts in their field, but at the same time fit our culture. That’s why the process consists of a few stages and we get many people from the team involved in it.
The final interview is a lunch with two random team members. It’s very casual, the goal is to simply get to know the person and find out whether we would like to work with them on a daily basis. We found out that it’s the best way to have a final check of the culture fit.
This is the time when we focus on taking care of new people joining our team. First, we know it’s a bit stressful time, so we want to make it really smooth, and secondly, a proper introduction to the company and how we work makes or breaks the company culture. In the end, it’s a sum of decisions and behaviors of all of us. To support the new people throughout the onboarding we introduced a few best practices:
- Each of new joiners gets their own Guardian - a kind of a buddy person who introduces them to the company, explains how we work and in general supports during the first months.
- Every new person joins a project with more experienced team members. That way they’re able to pick up on best practices, habits, and things that are part of our culture through observation.
- Finally, just recently we’ve published SoftwareMill Handbook - a guide for new joiners covering all aspects of how we work that they get before their first day at SoftwareMill. By the way, we will make it public quite soon, so stay tuned ;)
We created a dedicated channel on Slack for new people joining our team to join shortly after accepting an offer. They can ask anything and someone from the team is always there to answer their questions. We also invite new people to join our monthly onsite meetings, even before they formally join the company, as meeting everyone in-person is the best way to get to know the team and get introduced to the company.
Communication is a really complex aspect of every company and it’s even more complex in a fully remote company. Some of the highlights that work particularly well for us are:
- daily all-company video meetings,
- different channels for different communication formats,
- making everything transparent.
You can find these highlights described in details together with all our best practices for communication in the article How We Communicate As a Fully Remote Team.
Every month we gather for an onsite company meeting. We work together, discuss things, make decisions and spend some great time together. Every now and then we try out a new activity like playing drums, skiing or baking Christmas cookies. Once a year we get together with our families for a family weekend away and once a year we go for a company weekend away to get to know each other and have fun.
Tracking employees satisfaction
We ask our team members about their moods twice a day. The answers are optional, but
it’s really important to us to keep up with each of our team member’s emotions. First, during our all-company daily video meeting one of the question is “What’s your mood today?”. Secondly, when logging out, team members are typing on a Slack channel: “out: 1-5” which is a scale reflecting someone’s mood at the end of the day. That way we’re aware of any negative emotions and we act really fast in such cases trying to prevent crises, burnout and escalations.
Once per quarter we run a survey asking people about how they feel in a project and within the company, what they would like to change, etc. It’s a matter of making space for more strategic, overall feedback. The goal is to identify team members who need some support or encouragement to make necessary changes.
Appreciation and feedback
Praising others for great things they did, showing our appreciation and saying thank you are an important part of our culture. We’ve introduced a simple “kudos system” on Slack. Each of us can add a kudos using our Slack bot and once a week the bot posts the summary with all kudos added by everyone. It works well for us as it’s really easy and automated to large extent.
As for feedback, we’re experimenting with the MadLib mechanic that was invented by Gabe Kleinman while working at Medium. Each person receives feedback from a few people. It’s based on a simple form which is supposed to be a narrative story about a particular person. The person giving the feedback fills out the form by completing sentences like: “I can count on (name) for ____.“ or “He directs his energy toward ____, and does so with ____ effectiveness.“ We found it really useful as it’s simple and powerful. You get feedback from a few different perspectives and the form encourages both positive and constructive feedback. Pro-tip: we created a Google form based on the Madlib formula, to that it automates some of the work around gathering feedback.
At the end of the year, the Board delivers a presentation to the whole team where they sum up the whole year. Part of the presentation is a short thank you to some of the employees that contributed in a particular way to the company. What is great is that each person gets a personal thank you for a particular thing they’ve done. It’s super simple, but really rewarding.
Culture of sharing
Sharing the things that we know has been part of our DNA at SoftwareMill from the start. We hold Friday market presentations to share our skills and knowledge internally. We also spread our knowledge within the amazing community we’re part of. We organize Scalar conference, curate Scala Times Newsletter and speak at a bunch (59 in 2018!) of events each year. Check out our presentations YouTube channel.
As we love sharing things we’ve learned, we launched a blog post series This Month We’ve Learned. Every month we publish a post with the things some people in the team learned recently. It’s quick and simple - we just gather excerpts from the team and publish as one piece of content. It turns out to be really popular among our readers :)
We know company culture is not set in stone, as it’s something that evolves but also that get damaged easily. The challenge we’re facing right now is that we’re growing quite fast and more people are joining our team faster than ever before. We know that we need to come up with new formats to spread the culture we’ve created so far. The new set up requires us to spend more time on onboarding new people but also experiment with new methods of exposing them to the most important parts of our culture so that can absorb it faster than just by working with more experienced colleagues. We’ll run some experiments really soon, and let you know how it worked. In the meantime, dig deeper into how we run SoftwareMill by reading the other posts in this blog post series.