On remote work and distrobuted teams
April 15, 2019
The train is very much heading in this direction and more and more companies are considering hiring remote workers. Some are very much for it others are adimitly against it. As with literally everything, there are pros and cons. Those against will think the cons outweigh the pros and vice versa.
I’ve been working remotely for years, this is a little opinion piece on it from my perspective and experience.
This one to me is interesting because I know the number one fear for a manager is the fear of whether or not the dev is actually doing the work. I can completely understand this.
Someone once told me that they had the day off, what they had meant by day off was that they were working from home! If that’s how it works then I haven’t been working for many years!
To elevate this some managers will allow remote only after probation, this to me shows they aren’t against the idea in generally, the worry is about the individual’s ability to work remotely.
The person who thought that “working from home is the same as a day off, wasn’t a developer. I don’t think that developers are the slacking off type. You have to have a certain amount of drive to get to the point of being a developer.
Just completing a degree involves a lot of self discipline and motivation, being self taught is the same. Think about how many hours of unpaid work the developer has put in to get to that point in their careers. Thousands of hours, of self-motivated, unpaid work. And it doesn’t ever stop. A developer has to keep on top of their game, they have to always be learning new things.
You’ll find that developers will often have several side projects, again all unpaid self-motivated hard work. We are talking about people who don’t need to be paid to develop. They’ll be doing it regardless! This isn’t a job people get into who don’t genuinely like doing it. They tend to leave.
Developing software takes many many hours to do. It’s hard complex time consuming work. I think slacking would be hard to achieve because of the sheer number of hours getting anything done would take, usually the work required will take much more time then the deadline given. It always feels like you have to give everything your max to get anything done with development.
I also can’t see someone with an established career wanting to mess it up by slacking. Someone gets to the point of being a senior or lead developer - would they really want to risk it by slacking? I don’t think so.
From the perspective of a developer, this is a big con for working remotely because there is a trust issue. You always feel like your needing to prove that you are working. Say a project is taking a long time to complete because it’s problem after problem, you often get the impression from the manager that it’s because your working remotely and it’s because you aren’t working hard. Because that’s the fear.
When you are sat at a computer and the manager can see you typing away, they can see you working, they can trust that even though it’s taking longer, you are trying as hard as you can to get the work completed.
That is what you don’t get working remotely, no one can see that your working.
I really do understand why a manager would feel this way, but from my side, the lack of trust isn’t good. But that trust can develop, either by working initially on site, having a probation period or just have it develop over time.
I will say though, it’s better to hire someone you trust because some employees will just go on facebook when your not looking anyway… if someone is going to slack, they are going to do it no matter what. You want someone who is passionate about what they do, who wants to work on your project, who will take ownership and want to see it succeed.
Right now for example I am writing this unpaid because I enjoy writing about my interests.
When I last worked in a office I found it really really hard to be productive. The environment just wasn’t conducive to programming. We are talking about work that involves a great deal on concentration. My office open plan and we had call center staff on the same floor to start with, although this did change. The call staff liked to have loud music playing, I have worked in a call center before, I don’t actually get how they could do it. The voice chatter was very noisy.
I ended up having to wear headphones just to down it all out, lyric less music. Sometimes though if a problem takes a lot of mental power, I just need pure peace and quiet, something I just couldn’t get at that job, ever.
At home in my rural village, the worst noise pollution is the neighbours windchimes ( I hate them ), but apart from that, it’s quite. I don’t have any distractions, I don’t have anyone walking up to my desk to discuss something important to their job but unimportant to mine, no one wanting to talk about the weekend. In fairness a little bonding is good for a team, but sometimes you just gotta have long uninterrupted time to work on your code.
Of course not all offices are extreme as that, you might have your own quiet office, but going by others experiences I have spoken to, there is always a certain level of interruption in an office.
For me personally, working from home is the most productive I’m ever going to be.
So team bonding is important. But many of us are very used to talking online via chat and making friends. In this era we don’t need to physically see someone to be friends with them. People date purely via text. It’s not a problem I have had with working remotely with teams. There has been times that I a bonded more with team remotely then people have been sitting next to each other. I’m in no doubt that being in the same office helps with bonding, but it’s not everything for sure. A bigger part of it is personality and treating each other with respect ( not something you always get with developers. )
Remote workers don’t tend to attend those evening bonding events. But I don’t see that as a problem, as I say, it’s not been a problem with me. When your used to communicating with someone by text, speaking to them in person can feel a bit weird to start with!
The importance of faces
This isn’t always important, teams can work well together with never seeing people’s faces. But there are instances where seeing a face relieves tension, it’s a reminder that there is a real human being with feelings at the other end of the keyboard. I would advise that there are either in person team meetups or hangouts with faces every now and again. In fact just voices can make a huge difference - a real human voice, not just letters.
Getting the best people
So this is probably why most managers will choose to have remote developers and is an important consideration. When people are in demand, they will be able to be picky with what they take, meaning that they will go to the companies offering the best benefits. Offering remote work keeps a company competitive in their offering. The best person for the job just might not be local or willing to relocate for the job.
From the developers perspective, getting remote work can be tricky, because you are know competing with everyone and the manager really can pick the ideal person for a job. Managers tend to prefer that you have already had experience working remotely because it proves that you can. It’s much easier to do if you are senior level, really contractor level. If you are junior or mid, it will probably not be that easier to get started.
Being setup for remote work
It’s super important that a company is set up well for remote work and is willing to make accommodations. A bad setup can really impact job enjoyment and productivity. Some companies might just to be able to make required changes without a massive redesign. Just something to bare in mind by a manager or a dev looking to start working remotely. Most of the time, getting it setup shouldn’t be a probably for a IT dept to take care of.
The lack of commute
At 5pm, I’m clocking off, I walk downstairs, make a drink and start unwinding. For the commuter, they are getting in the car and heading into traffic. Being in traffic, being cut up and being on high alert is not good for you. Those on the trains are battling the hoard of people barging on in front of them. Not fun stuff.
Downtime and relaxation is better for your mental well being for a job that is mentally taxing like development and at times can be quite stressful, working remotely allows for a better work life balance and to be in a better frame of mind and more energy for the next day of work.
Your surrounding make a difference to your mental state and ultimately benefits your work and your wellbeing. An office can be a really nice place to be, maybe it’s a shiney modern office looking over the river. Maybe that’s nicer than your place at home. Right now as I write this, I’m glancing occasionally out my window looking at the greenery. It’s peaceful. Nature has been proven to reduce stress levels. When you work remotely you can control your environment so it works best for you. Some people like working from a cafe ( how?? ) some like to work in an apartment looking out over the city. Some like having people around them, working on the same project, others find they work best in quiet home office.
A little contentious this one, I’ll touch on it briefly. Working remotely is a little bit cheaper. A little bit. So for me to rent a room for a month, it can cost around £35 a night. I want a company to hire me to work remotely because I’m a great fit for the job, because I have the skills they need, because I’m experienced and passionate about making great products. The idea of being hired in order to save money, would worry me.
Working remotely comes with a lot of benefits for employers and developers and is the way things are going. It does like anything have its downsides, but not insurmountable ones, but they need to be considered nonetheless. It’s not for everyone and it’s not for every business. But it’s well worth considering and giving a go.