Thoughts on remote work as a software developer

In spring 2019 I have joined Spartez as a Senior Software Developer on a remote team focusing on modernizing the Atlassian Jira platform and improving its development efficiency. Today we're a team of 8 remotes - with our Team Lead based at the mothership office in Gdańsk, Poland - working as part of a global collaboration network stretching across Australia, Asia, Europe and the US. Having recently come across the Buffer State of Remote Work 2019 report, showcasing what it’s like to be a remote worker these days based on input from Doist, Hubstaff, Remote-How, RemoteYear, Trello, Workfrom, and We Work Remotely I thought I’d share our perspective on the topic.

Relocation is not an option? Let’s go remote!

Spartez as a company was not created with remoteness in mind. Nevertheless, since day one the organization has been dealing with the issue of remote collaboration, only from a different angle: as a partner site for the Australian-headquartered software enterprise, Atlassian. As our team grows, the vast majority of the now 180+ people at Spartez work on a daily basis at our office in Gdańsk. But finding experienced, skilled & passionate developers is becoming increasingly challenging. Relocation is not always an option, sometimes it’s even a risk factor. In fact, relocation seems to be the number one obstacle to changing jobs in Poland. This is how the idea to form a team with several remote, but all operating in the same time zone, members was born. Being the only such team in the company, we're enjoying quite a unique status, as currently only software developers are considered for remote positions at Spartez.

Meet the Highlanders: the first remote team at Spartez

The remote work for Highlanders began in February 2018 when our first remote developer had completed his 1-month onboarding at the Gdansk office and started working remotely from Kraków. Currently, we’re a team of 8 software developers: Artur Gniadzik, Grzegorz Rowiński, Marcin Mąsiorski, Marek Szczepański, Mikołaj Rydzewski, Mikołaj Żyromski, Tomasz Więckowski and myself, with Leonid Vysochyn as our Team Lead. We collaborate with Spartez on the basis of either contract of employment or B2B from 5 cities in Poland. Being the first such team at the company, we’ve tweaked and designed the remote team experience as we went along, developing what is now a fairly mature remote modus operandi.

Accelerated onboarding, periodic get-togethers and good food

The 4 weeks ramp-up time for each new team member is spent in Gdańsk, interleaved with weekend home travels, the costs of which are covered by Spartez, just as the associated accommodation. If needed, we sometimes split the onboarding time in half, with a remote working week spent back at home to ease the entire experience. From the team's perspective, this relatively short onboarding period requires careful planning and coordination of all necessary courses, workshops and training. The goal is to breathe in as much of the culture as possible, understand the rules behind the organization and essentially, become a part of it entirely. In order to meet as many people as possible, the onboarding period features a series of informal face-to-face lunches with managers, team leaders and other must-to-meet human beings from different teams and projects. Luckily, there are plenty of good restaurants within a 5-minute walk from our office.

Once up and running, the remote team members travel to Gdańsk on a regular basis. The associated travel time can qualify as work time (I love the silent zone in InterCity Premium trains!) and they usually spend 3 consecutive days at the office, while staying at a hotel located 500 metres from Spartez. Each team member plans such trips according to his personal preference but also takes into account travel plans of the other remote colleagues so that they have a chance to go for lunch or to have a beer after work. And of course, all the travel and accommodation costs are covered by the company.

A typical day at the one-man remote posting

Most of us have families and regular daily obligations, so I guess that kind of busts the myth of working remotely solely from some tropical paradise. Nonetheless, cheers to those who managed to cherish the sun and umbrella drinks while working. Some time ago we came up with the idea of sharing our daily routine so that others can understand how we work as a distributed team.

In my case, there’s barely anything that could be called a typical day, but let’s try:

6:20-6:30 - I wake up and I get to my studio with a coffee in my hand and spend the following 20-30 minutes browsing my Atlassian email inbox

6:45-7:00 - kids wake up and we get together for breakfast

8:00 - we leave for daycare

8:30 - back from the daycare, starting work

12:00-12:15 - lunch break

16:30 – finishing work

Last year, in the afternoons and evenings I was taking care of renovating the house we recently bought. I would usually end around 23:00, then spend an hour learning something new (Rust) and go to sleep at midnight.

Now that the renovation is finished, I spend afternoons with my family, slowly unpacking our boxes in the new place, one by one.

Recently, I started speaking publicly at conferences more often. I use the time saved on commuting on preparing my presentations and sending proposals to the various call of papers, in addition to time counted as work time.

What I strive to do is to start my working day as early as possible, since it’s in the morning that I am most productive. Sometimes I manage to get up as early as 4:30 (if I go to sleep early enough) and those are the best, most rewarding days.

Overall, it turns out that for most of us the timetable changes every day in the week and some weeks are different from the others as a whole. Besides the 10:00-15:30 core hours that we're committed to, we adapt our daily work-life schedule as we go along and end up working remotely at different times, from wherever.

The little things that make remote collaboration work

As our team developed, it quickly became apparent that if we were to be effective and form an integral part of the company, the headquarters work culture needs to adjust. Here are a few important aspects that we had to deal with up until now.

  1. At the office, people are used to going to conference rooms to discuss things. If there is a colleague who is working remotely it is considered to be fine to pipe him in on a big screen and expect he can equally participate in the conversation. Unfortunately in most cases it is not that easy. If someone in the meeting room is talking quietly or sitting further away from the mic, it’s very difficult for remote people to hear and understand them. Also, people in the same room provide each other with facial cues on how they are feeling or if they are about to speak. Remotes cannot easily distinguish the faces of people sitting in the room and miss out on those signs.

Solution: If at least one person is on a video call, everyone at the meeting should be on a video call too.

  1. When working remotely you need to be able to easily jump from a chat to a video call. Often typing all the details becomes cumbersome, or chat conversation starts being confusing and you just want a quick talk to clarify things or get quick response. Unfortunately, many people at the office are not used to having impromptu video calls from their desks, either because they do not have headsets or they do not want to disturb others around them.

Solution: Do everything that’s possible to make calls from desks a common and feasible practice.

  1. For a remote worker, it is impossible to see if someone else is in a meeting or at lunch or left home. So while working in a remote team remember to stay responsive, even sending simple quick replies such as "sorry, can’t talk now, will contact you in an hour" makes a huge difference. On a human level, it’s simply a matter of knowing someone cares. It is a good practice to notify your team when you are making a longer break. Setting a status on Slack reflecting your availability e.g. "in a meeting" or "away till 15:00" helps a lot (we even use a Google Calendar app to do it for us).

Solution: Focus on being responsive and let your colleagues know when you are unavailable

  1. One of the biggest challenges of remote working is the lack of social time spent with your colleagues. To compensate this we introduced a weekly Highlanders "coffee/tea/whatever-you-like table" Zoom meeting to talk about non-work related things. It helps to integrate and build relationships between the team members in addition to our periodic meet ups in Gdańsk or at the company big integration events like Christmas and Summer parties. My personal remedy for the lack of social interactions is attending conferences as a presenter.

Solution: Pay attention to team health and invest into building better relationships between the colleagues

If you’re interested in further reading on this topic, I recommend the How To Embrace Remote Work guide by Trello, which is actually one of the resources we share with prospect team members. There’s also the How to build a strong remote team culture piece by Eric Goldschein on the Atlassian blog.

Do you have experience working with a distributed team? Is there something about our practice to-date that you would like to learn about? Share your thoughts in the comments!