Working from home is very tempting, especially when you’re remote developer. Before starting PyPie I had a chance to try this for around three years- more than enough to evaluate it in all aspects. What I realized might go against what people usually think about remote work.
I found many hidden pros and cons of both sides in the battle of «office vs home» which eventually made me change my mind and rent a small office that transformed into PyPie later.
Working from home seemed fantastic but not for long
Firstly, it’s nearly impossible to explain to your family how critical it is to stay focused. Especially if you have kids, you’re literally forced to be available 24/7 for them. It’s subconscious stereotype:
you’re at home = you’re free
and it has effect on you as well: it’s hard to separate work and personal life when you’re at home. Eventually without strict time management remote developers spend more time working but their performance degrades and it slowly destructs their family relationships.
Staying in «comfort zone» slowly makes it more narrow
This is another effect we underestimated. You simply start getting out of shape in all senses (and I’m not talking about gaining weight), slowly losing «soft skills», become less social, less stress-resistant and less disciplined. This starts slowly but has a snowball effect and what originally seemed like a life for the elite eventually makes you burn out and holds you back in growing professionally.
Remote implies being «out of the loop»
Unless company makes serious efforts to prevent that, remote employees often feel that they aren’t part of what happens in the company. Distributed teams are prone to losing «momentum», involvement, motivation and feeling of responsibility for the project in whole rather than parts each one works on. Obviously, this can’t be healthy, that’s why
Companies must practice regular scrum meetings
Besides just keeping everybody on the same page it brings minimum communication required for everyone to stay involved and motivated.
And as a professional you must discipline youself, train hard, get out of comfort zone on a regular basis, communicate more, and get in bed on time. In our personal experience we seriously underestimated those effects of working at home.
Benefits of working co-located we used to take for granted
Working remotely we also figured out that we didn’t appreciate so many pros of working in the office:
All developers in our team have their own unique experience and specialize on some technologies deeper than others do. It’s awesome when you can just wave to someone and ask for an advise when all your teammates are located in one room.
This «shared expertise» is exactly what makes whole team worth more than sum of each team mate. It’s priceless.
And this is just one side of the incomparable communication level you could get thanks to working closely.
Colleagues become friends
Everyday in the office we discuss work, news, jokes, computer games, even personal stuff, have lunch together, etc. Without extra efforts or time we have lots of fun during the work day. It was our mistake to underestimate how important this is to stay social. I’m convinced that this level of relationships and unity simply isn’t reachable for distributed teams.
Transparency & discipline
Another benefit of working in the office- seeing everyone working and having progress on the projects you won’t question anyone’s performance and won’t even think about idling- everyone would notice that.
Transparency makes discipline easy
It doesn’t require any special efforts, you just have less that type of awkward questions like «what are you doing right now?». Everybody work hard just because others do the same.
Projects aren’t locked on particular developers
Usually in our team developers are dedicated to one project. This is not a rule written in stone but this gives best performance with lowest stress level. At the same time, thanks to daily scrum meetings, code review and just talking over the day, everyone is aware of what’s happening in the projects of others currently. Everybody are on the same page and see the big picture.
Everyone is unique but no one is critical
This is a key for the ability to bring extra forces quickly if required or cover a teammate on vacation.
Sometimes we do work from home
And it’s not contradicting with what was said above! We’re flexible enough to enjoy benefits of working remotely from time to time.
For example we work at home on Fridays: this is a traditional remote day in our team, we use it to work on something requiring solid time period of focus and silence, and also it’s a small trick to encourage everyone to take their laptops to home to have better chances for someone to be around in case of critical alerts during the weekend. Of course it’s best to work on something big enough and more or less isolated from anyone else’s work.
Also normally we don’t go to the office we catch a flu: if we’re good enough to work but don’t want to infect the others we just to stay at home. Profit!
Conclusion
Initially, we decided to rent an office just to cope with effects of remote work, it turned out to be the first and important step of creating our company.
Working remotely is awesome for a short period of time, so we didn’t reject it completely, but anyway we decided to base our company on office and get benefits of both.
Have your own story? Feel free to tell it: arseniy@pypie.com