54 comments

[ 2.9 ms ] story [ 57.5 ms ] thread
In my opinion, the first thing you need to do for this to work is to have a rock-solid clear value add for your employer.

Too many people make remote working arrangements about themselves and that's why they fail (sure, the employer cares about you, but if you act like you're only concerned with yourself, you'll come across poorly). Spend time laying out exactly how your move won't only benefit yourself, but will save the company time, energy & money and even open up future opportunities that you're willing to spearhead. You have to lay out the path so that it's a clear win for them. If you can do that, then you can usually get what you want too.

Sean Ogle had an interesting write up about this here (from his own personal experience) - http://www.seanogle.com/entrepreneurship/approaches-to-quitt...

Personally, my 'value add' is that I won't work for a company that won't support remote developers.

If they value my contributions, they'll have my efforts, if not, they won't.

That might work if you're getting recruited by a company - but if you're already in a "butt-in-seat" arrangement, you're going to have to bring up a value add for them to contemplate changing things (especially if everyone else in the office is happy with their butt-in-seat arrangement).

It's tough to renegotiate a position if you're simply just asking for things and not giving up any sort of consideration or adding some benefit to for the other party.

> It's tough to renegotiate a position if you're simply just asking for things and not giving up any sort of consideration or adding some benefit to for the other party.

Consideration is I don't quit. It's hard but true. Personally I've walked away from a couple jobs when they tried to reel me back in house.

You have to convince management that they don't need management. Good lucky with that.
I work remotely. Management were fine when they worked out they could stuck someone else at my desk :)
One big problems which stops creative people from doing work is management. So essentially it is a good idea to move away from them.
Edit: What I meant was managers who intrude developers with, heya whatsup! are you stuck. Where the best they can do for employees is to shut up.

Also the managers where they dont understand importance of code quality and measure everything by how much closer to the end product they are.

The managers, who dont understand that sometimes the code just rots and developers have strong sense of intuition when this happens. Do listen to them.

The managers who dont understand that complexity of a code increases exponentially with every feature. And telling developers, "oh you just need to add this simple script to the program" can be as dangerous as drunken driving. Ok not as that dangerous, but in case you are making software for autopilots and all.

While I tend to a agree to a certain degree (e.g.: you may want/be allowed to take some days to work remotely on a quarterly basis), there's a reason they saw this principle isn't working and even called back the people from large companies, like Yahoo!. Best buy is another example (http://mashable.com/2013/03/05/best-buy-flexible-employees/). Many agencies still permit this, because they may lose some valuable work force, but most of these decisions were also taken for companies to (re)build a certain culture.

One of the main reasons is that it is hard to build a team / team cohesion if you don't physically interact with the other members. Also, motivation inside a team can be much higher. For newcomers, it's also the desire to work next to the best people from the company.

I'd like to see the tool (which is still TBD on the github link) where you can achieve most of these and have more gains than losses.

> Respond to any inquiry in up to 24 hours in working days (unless explicitly taking day off.)

If this means responding with the finished code, than make sure the inquiries are small enough. If this means confirming availability or that you got the message at all, than why would you need 3 full work days for that?

I guess he means, don't work on the weekend? I.e. respond within 8 working hours, probably.
It doesn't mean responding with finished work, just providing a clear status w/out leaving people in the dark. The time for that should be WAY smaller in most cases. But the 24h margin is a no-panic zone that should cover all timezones
> Respond to any inquiry in up to 24 hours in working days

Acknowledge any inquiry within 5-10 minutes unless on a lunch break. Otherwise it means you are afk.

(edit) To elaborate - there are two issues involved with this. First is that you are unlikely to ever work on a fully self-contained task that doesn't require collaboration with other people. As such having shared work hours is required. Second issue is that of trust. In common tongue "working from home" means "sleeping in, sitting on a couch, going for two hour lunch breaks, etc". It's a way to slack while pretending to be working. I'm working from home, wink, wink, quote-unquote. In a perfect world you would be judged on deliverables and perfectly met deadlines. In real world, you will frequently need to prove that you've been working and that 1 page of code has indeed been a result of a week of research and numerous rewrites.

I'd suggest making several communication channels available, with several priorities.

For example, for me a phone call is something that prefers a quick response, an IM message can wait for some time, and a bugtracker ticket or an email is "I'll reply when I'll have time to do it".

I would put direct email as 'reply asap', usually people ping in irc and if they dont get a response its a direct email. Phone calls are only for very urgent / no point if you dont answer right now, bug tracker is certainly 'when you have time'
Absolutely. Working remotely and responding within 24 hours is a complete non starter. Teams need to work tightly together. I'd even go as far as saying 'acknowledge all messages within 1 minute'.

Being able to talk to people immediately is critical.

(I've been running a remote team for 5 years)

> Teams need to work tightly together. I'd even go as far as saying 'acknowledge all messages within 1 minute'.

If your units of work are so badly partitioned that this is a requirement, remote or local is not really the problem.

(comment deleted)
I'd disagree, just because people should respond fast when needed doesn't mean they get interrupted all the time. In a physical location, you have the option of interrupting someone when necessary, and you have the option of carrying out a real time conversation with quick response cycles when necessary.

Since these things are often necessary, you need to be able to have that happen in a remote environment.

I agree with you though on one important thing - issues of interruption have little to do with remote/local. I try to interrupt people as little as possible either way, but I don't want remote working to sacrifice on real time communication when necessary.

Any developer can tell this is not a good idea. Developers need uninterrupted time of intense concentration.
I am a developer, and having the option to communicate real time with someone doesn't mean they get interrupted all the time.
certainly, but the comment on which i commented wanted me to reply to every query within 1 minute.
In your 5 years running a remote team, nobody has ever taken a bathroom break or a lunch break of more than 1 minute?
Sure, I should have clarified what I mean. Responsiveness in remote environments should be like in a physical office. If you need to, you can walk up to someone and talk to them. Sometimes they're on a break, sometimes they left early, sometimes they didn't come in that day, no problem.

Generally though, you can count on being able to talk to someone when you walk up to their station. When running a remote team, I want people to generally "be around". We work very closely together though, so maybe our needs are not a good example.

As a person working exclusively from home.

Screw you, even if I was sitting right next to you, you have no right to expect a response to your query in a minute. I will get to you when it's the appropriate moment in my workflow, otherwise I'm just running around like a headless chicken all day getting nothing done.

Working time is headphones on time. You do not distract me when my headphones are on.

We are not doctors in an operating room, you can wait 20 minutes. Hell, if I let you wait 20 minutes there's a 90% chance you'll solve the problem without me.

Having also been a remote developer your reaction is extreme. There are definitely times where people weren't available within 5 minutes, but if that were the norm our team wouldn't have been nearly as productive.
I really really don't like going through a 20+ minute interruption cycle every time somebody needs me for two minutes.

I would much rather devote a solid 20 minutes, even an hour, to you than half-arsedly devote 20 minutes spread out over 10 hours in one minute chunks.

As a developer, you either work or you communicate. Try multitasking and your productivity drops. This is not an opinion, but a hard truth that our minds are not meant for multitasking.

Secondly, if someone interrupts you during a highly focused session of coding, there is no way you would reach same session immediately after interruption.

Think of it as Inturruptability Quotient for every task. It can be roughly defined as ratio of time required to reach same state as before to the time required to finish the job. There are some tasks like writing documentation or editing a proposal, where you can reach similar state of mind as you were before interruption fairly quickly.

However for tasks like programming, designing a db or simply thinking abut a hard problem can take even hours to reach the same level. Inturruptability Quotient is sufficiently high here, maybe more than 1 sometimes. Do you even realize how much grave damage it does to productivity.

I think this is an unnecessary over reaction. You're confusing an acknowledgement when someone knocks (basic human communication) and being interrupted all the time.

Acknowledging communication can also be: "I'll be with you in 20 minutes". That gives me the option to (in 95% percent of the cases) respond with "cool" and plan my own time accordingly, and in 5% of the cases to respond with "sorry, we really need to deal with this now, and here's why".

How fast you respond when someone tries to communicate with you has very little to do with remote/local. I love remote environments, they have huge upsides. Not being able to go to real time when necessary though is a major problem.

I'm assuming people will be working from all places around the world, which means different timezones. Maybe one person starts their "shift" just as another one finishes it. You don't want to be wired 24/24. The 24h margin is the longest it can take for an answer before people start getting frustrated. As I mentioned, the average should be way lower, 1-2 minutes preferably, but you can't enforce that at all times when people are working together from different continents. Of course a person who ONLY replies after 24h will be considered unreliable.

Also, you must account for no-interruption working blocks. You must be able to take at least 30 minutes w/out having to answer any IM in order to get sh*t done. That's the main reason why 37signals built Campfire in the first place...

We're (mainly) in Australia, with one worker currently in Belgium an another in Tokyo. Europe checks in to Campfire before breakfast to catch us "live" at the end of the day for an hour or so of realtime interaction. Asking a remote worker to do something at the end of your day and getting it done while you sleep is a win.

When someone's working solo, they still use Campfire to announce what they're doing/thinking: "refactored widget X", "Think I have that validation working". It helps us all understand what's going on. Some of that is just primate grooming behaviour, but we're still primates, so it's useful.

We're working on a new tool at the minute that helps address some of these problems, by having a persistent visual channel with remote people you can tell if they are really away much more easily, it actually solves a lot of frustrations.
> Acknowledge any inquiry within 5-10 minutes unless on a lunch break. Otherwise it means you are afk.

Quite possibly the worst piece of productivity advice I've ever seen. Given that if you're concentrating on a task it takes more than that amount of time to get back your train of thought, if you're doing this regularly during the day you'll get almost zero work done.

http://www.paulgraham.com/makersschedule.html

There are Paul's essays and there is real life.

In real life, if I have a critical bug that falls into remote dev's domain, he'd better be damn sure to take his headphones off and get back pronto. Because that's exactly what would've happened if he were sitting across the room.

Nobody expects a telecommuter to answer right away, but quickly acknowledging a question is a rudimentary communication requirement that goes a long way in building functional team. The "I will get back to you within 24 hours" provision from the linked article is as laughable as it is absolutely ridiculous.

I do work remotely for several years (with infrequent in-person meetings at the office with colleagues), and I'd say in long run it's somehow hard to separate matters and, for example, stay focused on the work, while being at home.

It's certainly manageable, but still requires some fairly strong willpower to manage oneself. Being lazy, sometimes, I would actually perfer to have a distraction-free office envinorment.

So, my suggestion is, don't [completely] deprecate office space, at least for the first 2-3 years.

Watch Greg Wilson's talk "What We Actually Know About Software Development, and Why We Believe It's True" -- he cites research that supports working remotely (http://vimeo.com/9270320).
> don't need to do - Be available at any particular time of a working day

Sorry… but how is anyone supposed to work with you with this attitude.

If I had to work with someone who was never around and I didn't even know if I could contact them for sure without waiting 24h for a reply then I'd be complaining to management to ditch the guy and hire someone who wants to work.

I agree this rule is problematic, and it's not just a matter of attitude. It's practical.

When you work with someone you need to have some time of the day when you know you can contact the guy.

Simply make partial telecommuting hard requirement from your side. I made it very clear at interview that I need some quiet time to keep my productivity. I got hired and now I work 2 days a week from home.

Surprisingly I work for large corporation at 'cubicle sea' and everyone has VPN access and works from home sometimes. My previous job in another large corp had similar policy.

Why is it that big companies get this? In two weeks I'll be going from a nine person company when there's no working from home whatsoever under any circumstances to a ~250k person company where it's supposedly allowed. WTF?
It's because of the relative importance of team cohesion on the output of entire company. In a corporation of 250k people, 1 (potential) slacker is max 1/250k lost output. In a company of 9 it is max 1/9th. It's all about risk management here, managing both probabilities and potential consequences.
If we take the ML estimate, I would say that the 1/9th chance distributes evenly. So it is 1/9th loss for both cases.

I have found that large corporations are able to capitalize better on incremental improvements and responsibilities are more narrow: hence they can tolerate less overall employee productivity.

Also, they might be more experienced at managing people and understand that advantages that working from home bring. For example, taking care of your children so that you live in constant fear of loosing your job :-)

I'd disagree, based on my observations in both environments. Law of large numbers shows that it is easier to hide unusual behavior when number of samples is large and the observer is focused on aggregate-based performance measurement.
Why the downvote? Would you at least polemicize with my argument? My observation comes from working in both a corporation and a small company. What is yours downvote based on?
> Make your location available on each working day (for both reliability and safety)

Does this mean like over Google Latitude or Find my Friends or something? How would that help with safety? It'd help if you can elaborate on this point a bit more. Also, could it be a slight privacy issue with some folk if they accidentally leave it on after working hours are over?

I like the rest of the points you make though. Good luck with convincing your management!

And as a side note, using something like that isn't reliable at all. Say I wanted to go down the pub for an hour, what's to stop me leaving my phone at home so it looks like I'm still about?
Or, what's to stop you from responding to questions while at the pub, but not while you're taking a break at home. Pure geolocation is not ideal for this usage.
That's very true. I just gave that example because relying on a geolocation app (as you said) would not really guarantee your employees are working.
I work in a mixed office, half in/half remote. I'm one of the few people (team lead/admin) that has to be in the office 90 percent of the working hours, which is fine. But I deal with good and bad remote colleagues over the years, so here's some suggestions.

Let me know when you are available, we have shared calendars and other means of indicating status, use them. Respect others time, both work and personal. If I can't get in touch with you for an extended period of time, let me know ahead of time or have a good reason afterwards. Let me know of any critical issues, technical or personal as soon as reasonably possible.

Let me know at you have on your project plate so I can assist or re-balance work loads if necessary. Please keep up with the "paperwork" aka source control, logging, reports, time-tracking and documentation.

If working remotely isn't working out, I've got some offices with doors and a fully stocked break room down the hall. And I'll throw in an extra monitor. :)

In my opinion, you should speak with the management to understand their stance and/or concerns. This can be done formally or informally but I would prefer informally just so they won't have their guard up, preparing to say 'no' to you. After you've understood their needs and concerns, as someone else has already mentioned, clearly defined your value proposition to the management team. Provide some structure/insight into the plan on how it may work, get some research supporting remote working and how it has made a tremendous impact on organizations in terms of creativity and boosting the bottom line. Offer to do a small pilot test if the situation allows for it.

It's a negotiation situation and when you're clear about the other party's interests and concerns, you'll know what's stopping to other party from saying yes. Good luck! I for one enjoyed remote work in the past but probably because I live far out and don't have kids, I find that going into office to see some faces and talking about tech stuff is more fulfilling. That said, who knows how I would feel further down the road.

The formula that works for me, a 10-year telecommuter:

Make people aware of your office hours, and always keep them. This means always starting on-time, taking lunch on-time, and hopefully ending on-time. Anytime in between is fair game for phone calls and Skypes, although of course we want to not distract someone who is getting something done. Any deviations from the agreed-upon schedule are no different from a commuter being AWOL. Don't do it without prior notice.

Skypes get acknowledged and replied to within 0-10 minutes, depending on whether I'm getting something out of my head and into the editor and therefore cannot answer you (or getting something out of somewhere else in the bathroom). But they do get answered promptly. E-Mail gets checked hourly or less (personal preference for me, but I don't permit e-mail to interrupt my workflow).

Also it's nobody's damn business where I'm working from, and unless I'm very comfortable with you, as far as you know I'm working in a quiet home office. Not very many clients ever know I'm using LTE from (sailboat, beach, back of a moving Honda), and they don't need to, because it can be important to maintain the illusion that I too am rotting in a cubicle, not having more fun than they are.

I'd love to see a videoconferencing solution for cheap that dedicates a full wall of your home office (projector and hd camera combo) mirrored to a similar wall at the office, always on. I know there are expensive 100K type solutions out there, but I think a simple kit could be pulled off.

If someone wanted to do a quick face to face, they'd just walk up to your wall and start talking :) Additionally you could link walls with other remote workers or other wall set-ups elsewhere in the main office.

Edit: a mini short-throw projector would work well here

Edit2: for privacy, since this setup would be always on, you could switch to "closed door mode" which would project a wall and door picture instead. Perhaps the camera on the office end could detect using kinect style magic when someone knocks on your "door" :)

One thing that I've learned to do after a few years working remote is always, early in the beginning of the work day, to send an email to other co-workers with a list of TODOS I plan on working during the day and ETAs for each one of them. This way everybody knows what I'm working on and what deliverables to expect from me by the end of the day.

It makes it possible for priorities and adjustments to be discussed before I start working and it makes me feel responsible for deliverables and not for being always online in fear other people might think I'm slacking work.

My personal experience has been that working remotely can actually make you significantly more productive, because you can shut off email and all distractions and concentrate on difficult problems for hours at a time. Just make sure people have your phone number if something truly urgent comes up.

In an office environment you have people wanting to talk to you all the time (almost always about things that could have waited), and you're constantly distracted, which means things take twice as long to get done.

This of course depends very much on the nature of your job. For programming, research, writing etc. the above holds, but for other jobs the situation might be quite different.