And then they stand the chance of losing anywhere from 20 minutes to an hour of productivity thanks to your interruption.
Part of the reason remote work appeals to so many of us is because we don't deal well with the constant stream of interruptions that occur in many office environments.
I don't believe this is the case for everyone. There are some individuals capable of working productively in a noisy environment all day while sleeping only 3-4 hours per day. But I think such individuals are rare, and you're doing yourself and your organization a disservice if you think all developers can work this way effectively.
Now, where's the consideration for everyone else on your team? That seems to be the one thing missing from all these counter arguments, yet it's the crux of the matter.
I'd like to respond to some of your other comments:
If I had to endure a culture where this was acceptable:
> Why aren't you answering your phone? Why haven't you responded to that email I sent you 5 minutes ago? Are you even at your computer right now? Hello???
I wouldn't work there for very long. This mentality of "butts must be in chairs" flies against the notion that software engineers are professionals and should be treated as such. This nagging is a great way to lead to a broken, angry engineer.
That said, I agree with your premise:
> Team productiviy > your individual productivity. It's that simple. Do you think your team members interrupt you just for the fun of it? No, they interrupt you because they need your help to accomplish something.
But there is a fine line between nagging and actual necessary interruptions that is deepened by remote work. Asking a professional why haven't they responded to the email you sent 5 minutes ago, to me, is crossing the line and if everyone on the team has to endure that kind of behavior then individual and team productivity will both suffer. I've experienced being micromanaged and it's terrible and it's definitely not conducive to my productivity. The rest of the team seemed the same way and thus the team productivity suffered as well. Creative thinkers need uninterrupted time to plan, think, and execute.
I agree that it's distracting and irritating at times, but that's the nature of working with other people.
Anyway I'm reserved about the very thesis that office life is particularly full of distractions. At home office you might have spouse and kids who are even less understanding of your "zone" than your coworkers. If you are single it might be neighbors driving their renovation project with hammer drills at work hours. You probably have a TV, game console, your guitar, your pet, and basically have to rely on self-discipline with that.
I have discovered, however, that since I do not work for an emergency room, my context-switching-skills are rather undervalued by the free market. The value I generate for clients and employers is very much correlated to my ability to train clients & colleagues to let me focus on solving one problem completely before moving on to the next problem.
I find when you describe the effect of interruptions in terms employers understand — "working this way costs you money, both directly, because I charge a not-insignificant amount per hour, and indirectly, because there are opportunity costs to my working on emergencies instead of farther-reaching goals" — they will become your allies in fighting off interruptions. If you just complain that interruptions are distracting and irritating, well, you're just gonna get a prima-donna label for yourself.
I love working as a team. My creatives can make something look more visually appealing in a few hours that I could in a few months. I can develop the functionality in a few days when they wouldn't know where to start. We all have our strengths. But creative work is inherently a selfish, individual act requiring concentration, and interruptions, in most instances, don't help the team meet their goals.
However, when she's reviewing patient charts and imaging to prepare for a procedure, that requires absolute focus, and she will isolate herself completely for hours and not talk to anyone no matter what. So, there is a time for collaboration, but there is also a time for focusing on one task to the exclusion of everything else.
Developers don't need to continuously collaborate. Even brain surgeons spend a lot of time reading up on papers and research and interruptions do not help them.
> Another field study compared interruptions in paired, radically-collocated and traditional, cube-dwelling software development teams, and found that in the former interruptions were greater in number but shorter in duration and more on-task (Chong and Siino 2006). Close proximity improves productivity in all cases." -- http://conway.isri.cmu.edu/~jdh/VRC-2008
From adrianhoward's post above.
- was actually working in cubicles in the same room and could overhear each others conversations.
- used email and a very basic text-based chatroom built in 2002 as their primary means of communication, as well as the telephone. Doesn't sound like a sophisticated setup to me.
- did not use any screen sharing software or VOIP software like google hangouts or skype and no mention was made about version control software, wikis, project management software ala Asana or Basecamp, or any other of the modern tools we developers use today.
They mention that "Team Pair" benefited greatly from pair programming, which any remote worker (including myself) can tell you is more than just possible using the tools of today, but perhaps even better than hovering over someone's shoulder in the instances where the software allows you to take control of the other person's screen.
From the study:
"On Team Solo, by contrast, intrusions were both functional and social in nature. Intrusions were longer and generally involved movement – team members physically visited another team member’s cubicle."
Again, their "remote" team is actually just a team in the same room but separated by cubicles. They state that the reason the interruptions were lengthier for Team Solo was because of the physical distance between the team members. In my experience, when team members are truly remote, the interruptions drop significantly in both length and frequency.
You have linked to a very old study that determined that working in an open-plan office is better than working in a cubicle-based office. You either didn't read the study, or are not understanding how this clearly does not apply to truly remote workers and the topic at hand.
The tools people have today to collaborate remotely are much better than they were in 2002, and getting better every year. Unless you can point to a recent study that actually compares truly remote workers using modern tools to co-located employees I'm going to go ahead and say that the evidence is weak at best.
Do you require that local employees drop the task they're working on to respond immediately to any question from anyone and completely lose focus on real work just to save you from a minute of reading some documentation?
Either this is an absurd double standard, or your office is a terrible environment for doing any sort of independent focused work (which may well be just fine, if your office doesn't do that sort of thing, but that's what most people who work remotely are going to be doing).
Yes, remote and physical team members must have a mobile webcam that they bring with them on all breaks. The webcam must have RFID tags built into it, and their homes and frequent break locations must be equipped with RFID scanners to verify the location of the camera and prevent any funny business. No exceptions, ever.
Also, when people ask questions they never EVER preface them with "Let me know when you have a second".
Seriously, are you in third grade? Can you read something and not interpret it literally? The Greek knew reduction to absurdity was a shitty argument more than 2,000 years ago... how come you still haven't figured it out?
From adrianhoward above:
> Another field study compared interruptions in paired, radically-collocated and traditional, cube-dwelling software development teams, and found that in the former interruptions were greater in number but shorter in duration and more on-task (Chong and Siino 2006). Close proximity improves productivity in all cases." -- http://conway.isri.cmu.edu/~jdh/VRC-2008
Right now I have a few work-from-home days a week and I find I'm enormously productive on those days due to lack of interruptions. If the company cannot sacrifice face time and trust for higher developer productivity (even in the name of teambuilding) then I wouldn't want to work there.
Team productiviy > your individual productivity. It's that simple. Do you think your team members interrupt you just for the fun of it? No, they interrupt you because they need your help to accomplish something. As a resource to the team, you hurt it's overall performance by making yourself less availble.
Team productivity is the sum of individual productivity though. Having all of the individual productivity disrupted is going to lead to lower team productivity.
I think Joel said it best 13 years ago: http://www.joelonsoftware.com/articles/fog0000000068.html
===
"Here's the simple algebra. Let's say (as the evidence seems to suggest) that if we interrupt a programmer, even for a minute, we're really blowing away 15 minutes of productivity. For this example, lets put two programmers, Jeff and Mutt, in open cubicles next to each other in a standard Dilbert veal-fattening farm. Mutt can't remember the name of the Unicode version of the strcpy function. He could look it up, which takes 30 seconds, or he could ask Jeff, which takes 15 seconds. Since he's sitting right next to Jeff, he asks Jeff. Jeff gets distracted and loses 15 minutes of productivity (to save Mutt 15 seconds).
Now let's move them into separate offices with walls and doors. Now when Mutt can't remember the name of that function, he could look it up, which still takes 30 seconds, or he could ask Jeff, which now takes 45 seconds and involves standing up (not an easy task given the average physical fitness of programmers!). So he looks it up. So now Mutt loses 30 seconds of productivity, but we save 15 minutes for Jeff. "
This is generally untrue in my experience. Team productivity is usually limited by a bottlenecks and silos where progress stops. It seems counter-intuitive but you really can go faster as a whole by slowing some folks down. You don't get faster as a whole until you get your critical bottlenecks in the process faster.
This isn't through any fault of their own, but they just can't be "in the loop" as much. Most communication takes way too long to type out in e-mail or IM, so you need to get them on the phone -- but calling and getting transferred, and then they're not at their desk, etc., is just too much of a pain. There's a HUGE difference between waiting until you see that someone is at their desk, and repeatedly remembering to keep trying to call them -- or sending them an e-mail to call you, and then you're out.
They can't see when someone on your team is having a little difficulty and instantly help out, turning someone's hour task into 5 min. They're not involved in the informal meetings behind someone's screen where a feature is changed slightly. They're just missing out on a lot of "informal" information that is crucial for productive development.
And even over the phone, I find it's much more difficult to explain things and make sure they're understood crystal-clear. Sometimes you need to see the understanding in their face. Sometimes you need to draw, sometimes you need visual aids, sometimes you need to pull up a web page, but it's too much work to pull up videoconferencing or something.
In the end, all these problems are "technically" surmountable, sure, but I've never seen it work. Maybe remote work would be fine in a waterfall-type development model, but with modern-day "agile" development, it just doesn't work as well for collaborative teams.
You're confusing people who are bad at communication with working remotely being bad.
Maybe you've never worked in an office environment with someone who has the same issues, but they're by no means alleviated merely by having their ass in a particular chair.
> Or are you just so special that you deserve all that extra effort?
From the employee point of view: Is your business so special I should sell my house, pull my kids out of school, and move so I can work for it? Do you really want to pay me the 50% pay differential I'd need in order to live in your higher-cost-of-living and lower-quality-of-life area? Is your (presumably internet-focused) company so incompetent it can't manage to use the same systems that we use in our day to day work and life to communicate?
> I'd welcome a remote employee under one condition: They're required to be on a constant video call so their on-site team members can see and talk to them at any time.
Completely laughable. Do you have closed circuit TV recordings of everywhere in the office?
I'm actually working with a distributed team that does this. Everyone is on a shared video conference eight hours a day. If you want to talk to someone you look at your video conference team to see if they are at their desk, on the phone, or talking to someone else. If two people need to talk without disturbing others, they mute their video conference mic and jump on Skype. You can still see them, get their attention, etc. but you don't have everyone talking over each other on the main video conference channel.
It actually works a lot better than I expected.
Curious, is it just a window with all the other video feeds that you keep in the background? Or a thumbnail version of to the side? Or a second monitor? I'm curious as to the difference between it being always visible, or something you have to pull up.
People make those choices knowing it limits their career options. Since when are companies expected to accomodate every lifestyle and location employees might desire? That's pretty self-centered.
> Completely laughable. Do you have closed circuit TV recordings of everywhere in the office?
Why would you need closed circuit TV for team members who are all sitting in an office together? Is there something difficult to understand about tying to create an on-site presence for a remote employee? There are companies that already do it.
Companies make the choice not to hire remote workers knowing it limits their hiring options. Since when are workers expected to accomodate every workplace and management decision an employer might desire? That's pretty myopic.
> Why would you need closed circuit TV for team members who are all sitting in an office together? Is there something difficult to understand about tying to create an on-site presence for a remote employee? There are companies that already do it.
My point is that it's beyond the pale for anything reasonable. You don't record your offices 24/7 or install keyloggers on your computers, I hope, why would you expect anything different remotely? Can you really not measure effectiveness and communications skills except via panopticon?
Onsite Employee: "Hey, got a second?" Me: "Yep" Video chat commences
It's a horrible work habit to get into to interrupt someone like that, but sometimes it's necessary. Plus, sometimes it's nice to just chitchat with your coworkers, just like you would in an office setting.
The bottom line is, I'm good at my job and if you're not willing to let me work remotely, you are welcome to discriminate based on geographic presence and eliminate 90% of qualified employees and I'll just go work for the increasing number of enlightened companies that have figured that they can get better talent by making telecommuting a reasonable option. Not all awesome engineers live within a commutable distance to a major metropolitan hub.
WTF? What kind of person checks their email every 5 minutes and gets any work done?
> If I need to ask a teammate a question, I turn my head slightly to the left and ask them.
How is that a sign of productiveness? If anything this is an argument for working remotely. Read PG's essay on Maker's Schedule: http://www.paulgraham.com/makersschedule.html
Avoiding this is the primary reason I like working at home. Getting distracted by things like that are a productivity killer for me.
Teams are more productive when they're in the same location. That is a fact. Your individual productivity may suffer at times, but the team will do better overall if you all work together in one location.
I, too, am much more productive working at home. So much so that I started working from home 3 days a week and eventually just switched to remote work. I understand the need for team productivity but there are ways to solve it that don't require constant face time. When I, as a remote worker, had to hire employees to work for me at the office, I made sure to hire people who were good enough not to require constant supervision and did not need to ask a question every 5 minutes. After the initial orientation, I made sure to be available by email, IM, phone (in that order) which worked out just fine.
I think part of the reason for the strong differences of opinion is that both can be right. The right team, colocated, can be very productive. However, I have seen many colocated teams fail, sometimes horribly. Conversely, I've seen remote teams do extremely well also. In fact, all remote teams I've worked with have done quite well. Obviously some of that may be due to their motivation, skills, experience, etc. But the fact remains. As I say to everyone who asks, remote work is not for everyone. We're used to the norm of working on location, but that, too, isn't for everyone.
"you'd have to be pretty ignorant to claim remote workers are able to communicate as well as on-site workers. If I need to ask a teammate a question, I turn my head slightly to the left and ask them. They respond immediately."
And here's why, Skype overcomes this problem... I've worked remotely in plenty of team situations where I've sent a chat message, and got instant response, consistently.
When I get a Skype message in these situations, the only reason I wouldn't respond is if I wasn't at my desk for the same reasons someone wouldn't be at their desk in a face-to-face office situation.
I think, as a business community, we just need to get more and more comfortable with remote working arrangements, and implement policies that could cover the various productivity issues (if you don't respond to a message within 'X'... this happens etc...).
I also think we have to remember there are productivity issues in the face-to-face office scenario as well, when people get together they tend to "talk around the water cooler," they tend to "go out for drinks, then call in sick the next day" etc... and other social-oriented productivity issues.
Not all productivity issues are bad either, if someone working remotely doesn't answer a chat message in 7 seconds, they might be improving themselves in some manner. ;)
The "Hello???" kind of attitude toward peer engineer communication is akin to a mobile phone notification or a blinking chat icon, all enemies of organized thought that leeds to maximum quality output in minimum time.
That sounds like an incredibly frustrating work environment.
I mean for them, not for you.
Communication is extremely important when working in teams, and you'd have to be pretty ignorant to claim remote workers are able to communicate as well as on-site workers. If I need to ask a teammate a question, I turn my head slightly to the left and ask them. They respond immediately. Sure, you can set up some sort of always-on video or teleconferencing, but do all new, growing companies have the know-how and resources to implement that for multiple remote workers? Or are you just so special that you deserve all that extra effort?
Small, early stage companies also seem to be focusing a lot on developing a company culture these days. Remote workers don't fit into that strategy very well, if at all.
I'd welcome a remote employee under one condition: They're required to be on a constant video call so their on-site team members can see and talk to them at any time.