For GitLab, being an all-remote company did not start as an intentional decision. It was a natural evolution as our first team members started choosing to work from home.
Traditional, on-site companies often take processes, camaraderie, and culture for granted and allow it to develop organically. But in an all-remote company, you have to organize it. This can be hard to do at first, but then as you scale it becomes more efficient, while the on-site, organic approach can quickly fizzle out.
Now that we're a much larger team spanning the globe, we've learned a lot at GitLab about how to collaborate effectively and strengthen our culture, all while working remote. Take a look at how we make it work.
We facilitate informal communication
Making social connections with coworkers is important to building trust within your organization. One must be intentional about designing informal communication when it cannot happen more organically in an office. All-remote companies need to facilitate these interactions for their teams.
Remote work is also what led to the development of our publicly viewable handbook, which captures everything you'd need to know about the company. If you can't tell, we like efficiency and don't like having to explain things twice.
Each department and team's quarterly goals, or "objectives and key results" (OKRs), are also clearly documented in our handbook for visibility across the company. We check in on these goals monthly, so there's as much transparency as possible around what each team is accomplishing.
We're often asked, "But how do you whiteboard without everyone physically together?" We use Google Docs for collaboration. Every meeting has a Google Doc agenda, which is used for documenting discussions, decisions, and actions. Everyone in the meeting can add notes at the same time, and we even finish each other's sentences sometimes.
By brainstorming in text instead of drawings, we're forced to clearly articulate proposals, designs, and ideas, with less variance in interpretations. A picture may be worth a thousand words, but it's also open to as many interpretations as there are people viewing it.
With Google Docs, we use indentations to go more in-depth on a given topic. This method retains context for comments, discussions, and ideas, even if someone wasn't present for the original conversation.
Docs instead of water coolers
Documentation also helps with transparency, which is critical to remote work. While decisions made around office water coolers may be familiar in traditional workplaces, input is limited to those present.
Those who are not present feel left out, and you're missing an opportunity to hear different perspectives.
The GitLab way of working is more inclusive. By documenting everything, no one is left out of the conversation and a diverse set of perspectives can be heard, not only from GitLab team members but also from customers and community contributors.
We're transparent about hiring and compensation principles
We've published our hiring process, including example screening questions, in our handbook.
While this may be unique, we see it as simply staying true to our transparency value. The process shouldn't be a mystery.
Letting candidates know what to expect allows them to focus on whether the role and the company are right for them, while we evaluate that too.
As an all-remote organization with team members and candidates around the world, it's also important that we're as open as possible about our compensation principles.
That's why we created a compensation calculator that helps determine compensation for more than 200 regions globally.
Hiring globally as an all-remote company has many advantages, including bringing diversity to our team. But it also poses unique challenges because many countries differ in their rules, laws, and regulations.
There are others who join and travel the world with remote coworking and coliving organizations.
Many of our team members appreciate the ability to still be able to work while visiting friends or family away from home.
Even for those who typically work in their home office, this flexibility means they can do things like run errands on a weekday, take their child to school, spend more time with family, or walk their dog during the day.
We have a channel on Slack called #office-today where our team members can share photos of their work location or view on any given day.
Time away from work
It's important to clarify that being able to work from anywhere does not replace the need to take time off of work.
We recognize how crucial it is to build in time where you can mentally take a break from your work, and as a company, we encourage our team members to do that. Learn more about how time off works at GitLab.
“I work closely with our executive team here, and they have been so supportive and encouraging when family-related conflicts arise. They are constantly reminding me that “family first” is our mantra, and give me ease of mind to take time away when needed. Sid, our co-founder and CEO, told me if it’s a beautiful day out and I just want to go enjoy it, I should do that. Moments like these make me so proud to be a part of the GitLab team."- Cheri, Manager, Executive Assistant
Tips for leaders and other companies
In the GitLab Unfiltered video above, Darren (GitLab) and Anna-Karin (Because Mondays) discuss a number of challenges and solutions related to remote work, transitioning a company to remote, working asynchronously, and defaulting to documentation.
Here are some best practices that may help your all-remote team be successful.
Managing your team
Don't require people to have consistent set working hours or say when they're working.
Don't encourage or celebrate long working hours or working on weekends.
Encourage one-on-one video calls between people (as part of onboarding).
Host periodic summits with the whole company to get to know each other in an informal setting.
Be transparent about your hiring process and practices so that interviewing time can be spent evaluating the candidate's ability to do the job.
Don't limit yourself to only hiring people who have a passion for remote work. Start by looking for candidates who align with your company values and the role itself.
Assign new hires a buddy so they have someone to reach out to in their first weeks.
Define clear goals and performance indicators for each role from the start so that you can measure success once you've hired someone for the role.
Tips for employees
Arguably the biggest advantage of working remotely and asynchronously is the flexibility it provides. This makes it easy to combine work with your personal life, although it might be difficult to find the right balance.
Our team members often share their best advice about working from home, and you should ask your coworkers about what remote work tactics work best for them. Here are some tips you might find helpful:
Find your routine
You may work better with a consistent workday routine, or you may find that it's best to determine when your waves of peak productivity are, and design your work day and routine around them. These may shift and change depending on the season, holidays, family schedules, etc.
Take small breaks throughout your working hours to keep your creativity or productivity going.
If you worked at an office before, you might be missing your default group of coworkers at lunch. Now that you have the flexibility to choose what you do with that time, reach out to a friend and ask them to lunch.
“I think you need to throw the concept of 'nine to five' out the window and actively experiment to find what schedule lets you make the most of your time.
I often find the midday slump to be so real, so if I'm feeling this way I step away for a while and then come back for a few hours in the evening when I generally feel supercharged.”- Tanya Pazitny, Quality Engineering Manager
Balance work and life
Explicitly plan your time off so that you'll intentionally take time for yourself.
When you're not working, disconnect by turning off Slack and closing down your email client. At GitLab, this only works if all team members abide by the communication guidelines.
Enable the "working hours" feature on your calendar so that team members in other time zones know not to schedule meetings during times when you're not working.
Remote teams are less likely to know what's going on in each other's daily lives, so it's important that you're able to express yourself and ask for help when you need it.
Make the most of your video calls so that you can build relationships with your team.
Decide where to work
Designate a space that's used solely for work so that you can mentally switch from home to office. Don't have a separate room to use as an office? Consider using a screen or partition to physically divide the space.
Make sure you have the equipment you need to be productive (for GitLab team members, here's a helpful guide).
Join a coworking space or meet up with someone else who works remotely to cowork in person.
If you have family or roommates at home while you're working, consider setting boundaries with them about your workspace to reduce interruptions.
Create an ergonomic workspace
The goal of office ergonomics is to design your workspace so that it fits you and allows for a comfortable working environment for maximum productivity and efficiency.
Since we all work from home, GitLab wants each team member to have the supplies and knowledge they need to create an ergonomic home office.
Here are some tips from the Mayo Clinic how on how arrange your work station.
Chair: Choose a chair that supports your spinal curves. Adjust the height of your chair so that your feet rest flat on the floor or on a footrest and your thighs are parallel to the floor. Adjust armrests so your arms gently rest on them with your shoulders relaxed.
Keyboard and mouse: Place your mouse within easy reach and on the same surface as your keyboard. While typing or using your mouse, keep your wrists straight, your upper arms close to your body, and your hands at or slightly below the level of your elbows. Use keyboard shortcuts to reduce extended mouse use. If possible, adjust the sensitivity of the mouse so you can use a light touch to operate it. Alternate the hand you use to operate the mouse by moving the mouse to the other side of your keyboard. Keep regularly used objects close to your body to minimize reaching. Stand up to reach anything that can't be comfortably reached while sitting.
Telephone: If you frequently talk on the phone and type or write at the same time, place your phone on speaker or use a headset rather than cradling the phone between your head and neck.
Footrest: If your chair is too high for you to rest your feet flat on the floor — or the height of your desk requires you to raise the height of your chair — use a footrest. If a footrest is not available, try using a small stool or a stack of sturdy books instead.
Desk: Under the desk, make sure there's clearance for your knees, thighs and feet. If the desk is too low and can't be adjusted, place sturdy boards or blocks under the desk legs. If the desk is too high and can't be adjusted, raise your chair. Use a footrest to support your feet as needed. If your desk has a hard edge, pad the edge or use a wrist rest. Don't store items under your desk. GitLab recommends having an adjustable standing desk to avoid any issues.
Monitor: Place the monitor directly in front of you, about an arm's length away. The top of the screen should be at or slightly below eye level. The monitor should be directly behind your keyboard. If you wear bifocals, lower the monitor an additional 1 to 2 inches for more comfortable viewing. Place your monitor so that the brightest light source is to the side.
Note: If you develop any pains which you think might be related to your working position, please visit a doctor.
Dedicate time for health and fitness
It's sometimes hard to remember to stay active when you work from home. Here are some tips that might help:
Try to step away from your computer and stretch your body every hour.
Go for a walk or do a short excersise for at least 15 minutes a day.
Do something active that can be done within a short amount of time like rope jumping, lifting kettlebells, push-ups or sit-ups. It might also help to split the activity into multiple shorter sessions. You can use an app that helps you with the workout, e.g., 7 minute workout.
"Getting out of the house before I start my day is very important for me.
Either walking the dog or going for a swim to clear my head and get the blood flowing.”- Daniel Gruesso, Product Manager
Try to create a repeatable schedule that is consistent and try to make a habit out of it. Make sure you enjoy the activity.
It can also help to create a goal or challenge for yourself, e.g. registering for a race.
Eat less refined sugar and simple carbs, and eat complex carbs instead. Try to eat more vegetables. Don't go to the kitchen to eat something every 15 minutes (it’s a trap!). Keep junk food out of your house.
Have a water bottle with you at your desk. You will be more inclined to drink if it's available at all times.
Try to get enough sleep at night and take a nap during the day if you need one.
At GitLab, we want to ensure each team member takes care of themselves and dedicates time to stay healthy. You can also join the Slack channel #fitlab to discuss your tips, challenges, results, etc. with other team members.
Contribute to this page
We recognize that the whole idea of all-remote organizations is still
quite new, and can only be successful with active participation from the whole community.
Here's how you can participate:
Propose or suggest any change to this site by creating a merge request.