I doubt it, the correlation does not imply causation.
My hunch is that the people graduating from college are the kind of people that would find it easier to find a job anyway.
Basically, it uses men who were eligible for the Vietnam draft (who enrolled in college in greater numbers than they otherwise would have, to avoid military service) to demonstrate that success from college graduates is more than a "these people are the ones who were already going to succeed" thing.
Keep in mind that there's a natural unemployment rate in any economy. The natural unemployment rate is typically made up of two components: people in-between jobs and people with out-dated skills.
In programming, we'll always have (in any month) some % of workers moving from one job to another (either because they quit, the company they worked for went out of business, or they were laid off - because the company performed badly or their own poor or poorly perceived performance.)
And, in programming, there will always be some set of people who find themselves out of job because the company they were working for no longer needs their Delphi or COBOL or other outdated skill (not to say there are not jobs for those Delphi or COBOL programmers, but there are less and less of them, on average.) Those programmers have to get re-trained, etc.
These two groups make up that 4% - which is around the natural unemployment rate for the economy as a whole on average over the last 70 years (it's around 4-5).
If the unemployment rate was above this (basically at the national avg of close to 9) for programmers, then the difference would be cyclical - missing jobs based on the recession. Because it is so low, I;m wondering if it's we can conclude that programming (in today's economy, at least) is recession-proof.
This is sort of a no-brainer. I'm pitched by recruiters about once a week, and they're all for far away positions - typically SF area, but other areas too. I can't sell my house any time soon - the market just isn't moving - so I'm somewhat held hostage by geography. This doesn't mean that I can't travel onsite and visit your office regularly, nor does it mean skype and phone don't work out here in the sticks :)
Telecommuting requires the entire team or ideally the entire company be set up to work like that - just having one guy out in a different state or country on his own doesn't work very well in most cases. I understand that. What I don't get is why more companies aren't structuring themselves to take advantage of remote workers.
If you have strong procedures in place to deal with remote/offsite workers (fulltime or not), you can more easily integrate short term labor when you need it - you'll have the shared workspaces, file transfers, documentation, version control, etc, already set up and ready to let new people in as needed.
This seems like this would be a competitive advantage that more companies should be looking at. Maybe they will be in the coming years as the impact of underwater mortgages and geography-locked workers starts to impact the broader tech labor market.
Many of the people involved have been involved in other operations before. "Strong procedures" should be a prerequisite for funding (for those seeking funding), no?
Yes, though for the market price there should always be buyers. And you already made the loss on your house, and your books would reflect this if you marked-to-market.
By sticking around in a depressed area your are just depressing your earnings.
(It's something different, if you have to come up with cash to pay off your mortgage; instead of just being able to keep paying the normal rates after you sold your house.)
Like many things, the value of your home is only loosely tied to it's market value. It's also expensive to move across the country, and more expensive emotionally to leave your friends behind.
No, but if you sell your house you need to come up with the difference between what you sell it for and the amount still owing on it in cash, don't you?
>> What I don't get is why more companies aren't structuring themselves to take advantage of remote workers.
Lots of companies _are_ structuring to take advantage or remote workers. It's called outsourcing. After all, why pay high rates for a remote-US worker when you can pay low-rates for a remote Chinese or Indian worker.
Sure, you're smart, and bright, and a hard worker, but there are a billion Indians, and more Chinese - I'm sure we can find _someone_ smart and keen AND cheap...
Telecomputing and outsourcing are the same thing. If you promote one, then you promote the other.
What workers don't realize is that there is a massive advantage in going to the office. It's the only thing separating you from that other guy. Take that advantage away at your own peril, but don't come crying to me later when your job has moved 10 000 miles away.
This is a good argument to bring up but I think it will have the opposite effect.
Right now if you look at e.g. India, there are lots of outsourcing companies but workers don't stay long at these places. They get in, get experience and then move on somewhere they can make money. Usually somewhere in the west.
If telecommuting were to take hold, yes that would mean I would be competing with people from e.g. India. But guess what: I already am. The biggest difference would be that people from India wouldn't have to move to the west for years, build up their income and then move back. They could stay in India if they wanted.
The thing is, remote work puts even more of a premium on communication and reading between the lines than office work. These are challenges for people who grow up with a different language and culture. So for now, native English speakers tend to have a big leg up and can charge more for projects in English-speaking areas, which tend to have the most good projects. Perhaps the tables will turn in the future.
I used to work in NYC but I've been working from home for a couple years now for an agency based in NYC (I live in CT now). I make good money but I've been offered a 20k+ raise and other bonuses to work in the city. Barely considered it.
Startups that demand relocation to NYC or SF are a total show stopper here. Many of us are held hostage by geography-- maybe you own a home, maybe you have kids in a school they're flourishing in, maybe your parents need help. If you're a family man you won't like spending your wife and children's time in Bay Area or Metro NYC traffic. But here's the thing: the technology most startups use means they can transcend geography to an extent.
I do not underestimate the value of having a team in the same location. It does affect morale and company culture. But with the right people and the right technology those issues are quickly going to wind up in the rearview mirror. When I look at a company, I want to see if they are set up to do remote work, or are they landlocked?
amen to this. With the money startups manage to pull in you can find a very nice town to settle in and absolutely pamper your staff - and still have lower costs than SF or nyc.
A particularly good selling point for getting the more experienced developers with family. Come work for us in friendly brattleboro Vermont! (I've been there, it's like Gilmore girls in real life). Bonus if you're within train distance of the city you can get the best of all worlds.
I think there's a difference between attracting and keeping (productive). High salaries can lead to a 'golden handcuffs' scenario where the company can flounder, do stupid things, mistreat employees.. and they'll stick around for the cash.
I think paying well is a good idea, but it's not a complete strategy and I don't think it actually is as likely to bring the lifestyle satisfaction that telecommuting can for many people.
I would love to do more remote work, but then I hear horror stories about people having problems not being around people. Feelings of isolation set in after a couple of months, and people end up going to a gig where they are around people. To those doing remote work, is this common?
The biggest benefit of a co-working space is that you are in more control of when you want to be around other people. You can always go home when you need pure isolation.
At your employer's workplace, you don't have that control. You can be interrupted at any time by anything.
You don't appreciate that flexibility until you have to use headphones and music to drown out your co-workers' inane personal conversations.
I haven't found that to be the case, but then I have my life set up such that I don't need work to fill a social outlet. I have my wife, two dogs, friends and neighbors to socialize with when I feel the itch.
I'm one of those people who left a telecommute job to work in an office. The walls definitely closed in on me and I felt increasingly isolated, and I had to get out. I think it was when I realized that I was sitting around my apartment for 23+ hours a day that I started looking for a new position.
I think there's something inherent in working with people around you that you can't really replicate online. Being able to go over and talk to someone and ask them a question is invaluable when compared to having to message/email someone and wait for them to respond. It took us far longer to get sprint planning done (we were also doing Scrum) over the phone because no one wanted to talk, and that's easier to shrug off when you're at home. There's some level of team building that's missing when you telecommute - you don't go out for lunch with people, or have any sort of real social interaction.
Honestly I think it's up to the team/company to help work through those issues. We set up a chat system so we could talk during the day and that did seem to help for awhile, though.
You can definitely get in a mode where you need to pull yourself out of the house, but I never get lonely.. Mostly because I communicate with my coworkers constantly. Probably more than I have at most brick-and-mortar operations. We idle in a Skype chatroom all day long, and I participate in at least a half dozen skype calls a day.. sometimes ones that become just two hour co-coding sessions.
The real need to get out is just a need to spend some time in the sunshine, or walking.. funny little things that happen on accident when you're commuting :)
It's definitely an issue, and one that can be difficult to overcome. Since I'm splitting my time between my full time job, and working on Appleseed almost full time in the off hours, the last year has been short on social interaction, and I've felt the effects. That Oatmeal comic really hit home a few months ago when I went to a party a few months ago and found myself feeling very socially awkward. Not nervous, just a little bit clueless about what to do and how to do it.
I'm a very social person, so it was a little bit jarring how quickly those skills could atrophy.
But there are remedies. Scheduling social time is important, and not seeing as "wasted" time, but an actually necessary task for your mental health. Working in coffee shops when you need to, going for walks when taking breaks, etc. And going to a co-working space once in a while doesn't hurt.
I've worked at home since 1996 and there is no way in hell you'd drag me back. I never had a problem with isolation, but then I have kids. Isolation for me is a goal, not a fear.
In this, as in all things, your mileage will certainly vary. If you're a type-A people person, you should probably stick with a social context. Although (as elsewhere noted) you'd be surprised how much social interaction you can have online at home these days.
I've been telecommuting for almost six years now and the thought of going back to an office is terrifying. I would end spending 2+ hours in traffic, be separated from the things that matter to me most (wife, 2yro, two German shepherds) that also provide a bit of refresher when things aren't going well. Good luck playing ball with your dog in an office.
Having been at an all-telecommute shop i can say that we ended up doing far more work than most teams. 10pm email conversations with the CEO were normal.
Easy, get up, do a bit of work. Have breakfast, spend it with the family. Do some more work. Play with dog. More work, then lunch. Another task, then break time with the boy. A bit more work, then dinner. Family time, kid/wife goto bed, stay up and do a bit more work.
I found it far easier to do that, than to veg out in the office when I needed a break to go out, see the sky, walk around, breathe, etc.
Also, this was fairly early on, sphere was a new company and we were having growing pains. And its not like it was a nighlty thing, more along the lines of often enough to not be weird, but it wasn't often.
Also, before we were quasi-detelecommuted (meaning hires in NYC that went to the office) when something broke, everyone would pitch into fix regardless of hour. After the original peeps (well, most of us) left, the replacements (in the office) had an office mentality. That is, anything that happened after hours wasn't their problem.
Maybe that works better for them, but not for me. Doing things my way got more of my awake/alert time for actually doing things, and the flexibility it imparted helped keep me sane. Offices and rigid schedules drive me batshit insane.
I've been telecommuting for almost six years now and the thought of going back to an office is terrifying. I would end spending 2+ hours in traffic, be separated from the things that matter to me most (wife, 2yro, two German shepherds) that also provide a bit of refresher when things aren't going well. Good luck playing ball with your dog in an office.
Having been at an all-telecommute shop i can say that we ended up doing far more work than most teams. 10pm email conversations with the CEO were normal.
I've been working purely from home for the last 3 years now, where my clients have all been in other countries. I'm not an intensely social person but about 2 years in I had a period where I did feel really isolated.
In my case, though, I solved this by getting out to twitter/tech meetups and other activies (e.g. I'm speaking at a conference in Amsterdam in June). This occasional socialization is enough for me, though your mileage may vary. Also, it might help that I work in a very social open-source field where I can have continuous contact with other developers and community members.
I must admit, I would hate to go back to regular commuting. In my previous life I only had a 40 minute total commute but even 40 minutes is really valuable nowadays!
I have a suspicion that there's enough people in the SF area (and a couple of the the other "big" markets) that will actively fight against telecommuting, specifically because it will lower wages in those areas.
As someone else posted, yes, I understand the value of a team being in the same room. But that value comes at a premium price, and it's one which may not always be worth paying. However, given the boom/busy/buyout cycle in the bay area (as an example), enough of the same workers can move from company to company as the companies are merged, bought out, or close, that this keeps the talent supply close enough to what is needed to make it harder to embrace telecommuting. You just need a few more people to fill in a few gaps, right? They need to be on site, or they're not a 'team player', or just not serious about their career in tech if they don't want to move to the valley! (have heard this before).
If the majority of companies out in SF set themselves up to embrace telecommuting, that would mean it would be easier to fill that next position with someone from Idaho, Kansas or Utah. That would mean the company could pay a lower wage. Why would the culture of startup workers want to embrace something that will end up driving down their salaries?
how does that work? the people paying the salaries would surely love to get someone who can do the same work for less, and the people receiving the salaries aren't the ones who make the decision as to whether a new hire can telecommute or not.
i think you're attributing far too much cunning and big-picture thinking to developers. specifically, the logic chain here would have to run "this dude is telecommuting, which means that he can live somewhere cheaper than sf, which means that he can accept a lower salary, which means that salaries across the board will tend to drop, which means that my salary will be affected, which means i'd better shaft him". i'm not saying that a malicious developer can't whisper into the right ears and get someone into trouble, but it's usually because of some more directly personal dislike or jealousy.
The majority of those mid-level workers are going to be mid-level workers at another company in the next couple of years. Encouraging ease-of-replaceability via telecommuting (which also will likely be a lower-cost for the org) isn't in their interest, because when they go for their next position, the culture of the area may be more open to remote workers, making it harder to get a job, or make as much as you were making before.
From an investors standpoint, of course they'd like to spend less, but many no doubt get a thrill out of bragging about how they're able to attract the top-paid talent, stealing person X away from company Y, etc. Few investors would likely be bragging about how they've achieved 20% cost savings by introducing a culture of remote US workers.
Similar to most dept managers, if you show you can get the same results with less money, you'll get less money in your budget next year. No one likes to do that, so while there's incentives to save money, there's also incentives not to save money.
I don't think this is something most people there obsess and strategize about day after day. I do suspect some of the savvier ones do understand that the easier they make it to bring in remote workers, the easier they will be to replace. When you stress the whole culture of the region as being 'the place to be', you make it harder to justify remote workers because "they're not here, they don't 'get it'".
I've spent the bulk of the past 8 years telecommuting, even when I've had full time positions locally. It requires a strong commitment to communication and the experience to recognize when the communication is failing so you can get off your ass for a face to face meeting or phone call. I also ending up working a hell of a lot more hours than I would if I just had a desk job. But I wouldn't have it any other way.
I don't give a shit about your corporate culture or your ping pong table or your office politics or your ego battles, I only care about solving problems and producing solid solutions. Telecommuting lets focus on doing just that while leaving all the other nonsense behind.
Agreed. I haven't been in the market for a job in a very long time, but the quickest way to lose my interest in your position is to tell me I can't work from home. After almost fifteen years, I can think of no other way. (Especially in my case, where my colleagues are all spread across the globe, anyway).
I have telecommuted for several gigs and positions. The most difficult situation to deal with is when most of the rest of the company doesn't telecommute, so everyone is not in the habit of cluing you in to what's going on. You may have all the tools required to establish and maintain decent communications, but they often don't bother to adopt any of it for their end. I even remote-developed for a large networking company with enormous communications facilities designed to solve problems like that -- but they had me fly over to headquarters all the time instead.
Thanks for bringing up that bit about being left out by coworkers. It reminded me of a passage from "Being Geek". Luckily the book is largely compiled from blog posts and here's the relevant post by Rands on the inadvertent exclusion faced by lone telecommuters attached to onsite teams: http://www.randsinrepose.com/archives/2009/04/15/the_pond.ht...
I worked from home for the past couple of years and now work in an office and have to communte everyday. But i have to say i like working in a space with other engineers to discuss ideas and concepts and energy more as sitting alone at home.
I suppose for the premium amount you are being paid, as compared to the Indian worker, being physically present is a requisite. I cannot say, I disagree with the logic myself.
I cant say anything for your management, but my management (actually my immediate boss), is very reasonable. Being a developer himself, he understands what programmers need to be productive. He allows remote work, time to time. In time is as late as 11:30 AM (which is also just because, we have standup that time). In all, a very reasonable person to work for/with/under, who believes in not micro-managing people.
However, co-locating has its own benefits, and I suppose thats why he does not hire remote workers (for permanent positions). We have hired remote contractors in the past, and they worked fine to good, but it required lot of effort on collaborating.
I love Chicago, you just can't beat this city for the kind of value you get for the price. The closest competitor is New York in terms of food and culture, but the costs are astronomically higher.
When I'm contacted by a job recruiter for a position that pays more, but requires moving to somewhere like Mountain View, I will rarely entertain the idea. Sure, I'll fly into the office, I'll do it quite regularly actually, but there's no way I'm picking up and moving to a city with considerably less to offer, yet which costs substantially more.
I understand the value of social capital, and working with people face to face. But how often does that really need to happen? As developers, our job is ultimately to write code, and that can happen anywhere.
I see several comments saying more companies should be hiring remote workers, building their culture to support it, and why aren't they doing it?
It's interesting to see the numbers in this article.
What's remarkable is that, even after two years of flattish compensation, technology professionals are willing to sacrifice $7,800 on average to work from home
The article speaks as if this is a huge amount, but as a chunk of total salary, it's probably 5-15% for most tech jobs. So the question for employers is, is it worth an extra 5-15% in salary to have your team work together in person?
That's not a huge amount. Say you have a mere half-hour commute = 1 hour a day x 250 working days a year, your $7800 turns into $31.20 an hour for the most boring work you'll ever do - even a truck driver usually gets to see different scenery from day to day.
And that's if you manage to live a mere half-hour from work, which in any major city is seriously unlikely.
If you're good at tech, why would you take a second job as an automobile driver for chump change?
Exactly. One of the few clear-cut results of happiness studies is that commuting really, really sucks. I can understand why telecommuting might not work for some companies, but there's rarely an excuse for not offering flexible hours, so you can at least dodge rush hour by coming in earlier or later.
I agree, but the comment was turning the table around and looking at it from the employer's perspective.
If enough employees continue to be willing to commute for a mere 5-15% more in salary, then employers will continue to, quite rationally, pay them to do so.
It's also worth keeping in mind that if you commute 20 miles to work and get 25 mpg, that's more than $1600 per year on gas, so the cut is not quite as big as it looks (though it is still there).
And if you have a family you might get by owning a single car instead of two. I used to live within walking distance of work and we had one car for two years. That's a huge savings.
On top of that you usually can cut out quite a bit on child care costs.
I left a job I had for 5 years that allowed me to telecommute for contracting where I was expected to be in the office but made about 160% of what my full time salary was. After about a year of that I returned to my previous job and much lower salary to get the benefit of telecommuting once again.
With a family, the benefits of telecommuting (at least to me) are just far to valuable.
Depending where you're trying to bring developers to, I think you might have to offer even more than that. Maybe if your business is in the Valley, Portland, Seattle, NYC, Chicago, you can find developers willing to come in to the office for a $10k/yr premium over telecommuting positions. But in some less popular parts of the USA talent is much thinner on the ground, and I think you might have to offer even higher compensation to get your pick of the best local people and/or to get people to relocate to your second tier city. (And of course relocating your company to the Bay Area is going to cost "a lot," to put it mildly.)
I figured working from home would be great for the first month, and then I would start going mad. And when I asked who was going to pay for my chair, desk and computer, and who would pay the heating, lighting, ADSL and air-conditioning ... it looked like I was going to be out of pocket too.
You don't already have a chair, desk, computer, and internet access at home? Air conditioning may cost more, but you'd no longer be paying high gas prices to drive to and from work (which I'm assuming your company doesn't pay for now?).
In Australia you the employee can get a tax deduction for work expenses. If you work from home you can claim partial rent, partial electricity bills, partial internet and so on.
Whereas if the employer pays for these things, they may have to levy a Fringe Benefits Tax on the value of the payments at the top marginal tax rate.
In total dollars it is sometimes cheaper to bump the salary and let the employee actually do the taxman dance.
Of course, I am not a lawyer, not a tax accountant and I don't work for the ATO. Seek advice, YMMV etc.
In the past 4 hours I have exchanged ones and zeros with people and computers in New Jersey, Pennsylvania, Florida, Arizona, California, Germany, Singapore, and India.
And got 3 "office days" worth of work done.
And I haven't even brushed my teeth yet. :-)
You know what telecommuters say, "Once you've deployed a killer app in your pajamas, you can never go back."
Don't you find it gets a bit lonely after a while?
I've been working as a full-time programmer from home for about a year and a half now, and it's beginning to get a bit weird. Aside from not having physical coworkers, I don't leave work, go home and do something else, because work is always all around me. There's this never-ending pattern of 9-5 quickly becoming 2 PM - 8 AM, until I finally pull an all nighter and it resets.
It doesn't help that I'm 100% passionate about what I do...!
I almost never _have_ to go into work (though my boss has requested that I spend some time there because others tend to need me for things), but the thought of being alone for a whole day gets me out the door. I love what I do, but people are interesting too.
I worked for more than 10 years from home in the mountains above SV with a client in Chicago. I had a wife and 3 school age kids. We had rules and a discipline: when I was in my office, I was not available for chatting, discipline, or other home things. I worked mainly 8 to 5 and the personalities of the family members were such that it worked. If I wanted a hacker fix, I would go to some meeting in the valley,
I was the last survivor of a 30 person development office. That in itself was eerie.
> Don't you find it gets a bit lonely after a while?
At work we spend 80% of the day pairing over voip and SSH. It's ironic because I moved from California to Seattle because I got tired of telecommuting all by my lonesome from down there, but these days with pairing it doesn't bother me at all.
We are all Emacs users, and we share tmux sessions on Vagrant VMs over SSH. (It's like GNU Screen, but a lot more convenient for sharing.) We usually stick with the same pair for about a week and rotate among our 10-man team, though each person has areas they're more proficient in. We use Skype for VoIP (though Mumble works better in some cases) and IRC for chat.
I haven't done much in-person pairing, but I think the main difference is not having to share a keyboard. Each person can use a system they're comfortable with; no fuss about dvorak vs qwerty, Kinesis vs Natural 4000, standing desk vs sitting, or Ubuntu vs Macosecks. It does mean you need to use auditory cues to indicate who is in control of a given session. The biggest drawback is probably that you can't share a web browser over SSH, but since we are doing backend coding it doesn't affect us.
For me it's been a huge win. We do also have week-long meetings a few times a year to bring the whole team together in-person to promote the team's cohesion. But working from home is great; as long as I'm able to switch things up occasionally by working from a coffee shop a couple times a week, I'm happy.
That sounds like a really great setup. I'm going to have to try this out one day. I've never really considered the specific benefits remote pairing would have over in-person pairing...generally the only things considered are the downsides.
Obviously, some of the things you mentioned with in-person pairing can be alleviated. At my current client, our setup includes multiple keyboards and mice. A friend of mine uses his own keyboard with a hardware switch to go between dvorak and qwerty.
You mention not being able to share a browser which makes me think of the times where it would have been convenient to look something up for a moment while my pair experimented (two pronged problem solving approach... :).
Also, what kind of pairing patterns do you use in this setup? Ping Pong TDD, driver/navigator, etc... ?
> You mention not being able to share a browser which makes me think of the times where it would have been convenient to look something up for a moment while my pair experimented (two pronged problem solving approach... :).
Definitely. Occasionally we'll read docs in w3m, but often it's good to go async on looking up some boring details.
What we do is probably more driver/navigator since whomever is hosting usually has better latency. The remote guy can still get around just fine, but it's just barely noticeable enough to give an edge to the host. Since we work in a language that makes it easy to do strict FP, (Clojure) test-first is not as important as it would be in an imperative language, though we do have pretty good coverage.
Agreed, same experience here. That's why (shameless plug) http://letslunch.com has saved my sanity: now I can meet peers (entrepreneurs, engineers, geeks like me) for lunch.
I find that scheduling activities with other people that start at around the time that you want to finish work is very effective at enforcing sane working hours.
I meet a friend to go climbing two nights a week, which pretty much forces me to stop working at a certain time two days a week. Having those two days anchored seems to help stop the other days drifting into other time zones.
I've been working from home for the last 9 months, and my experience has been that you have to be disciplined about working hours.
Initially my sleep cycle (and therefore working hours) shifted by a couple of hours, so I'd get out of bed about 11am, and start work somewhere around 12, which effectively meant I had an hour before I stopped for lunch at 1, and then ended up working until 9 in the evening.
If I were single I could probably be quite happy with that, but it meant I only really got a couple of hours with my wife before she went to bed. That alone gave me the motivation to get back into the habit of starting work at 9, and finishing between 5 and 7.
I'll also second the comment by the person who said that it helps to have something planned for the evening, if only to force you into stopping work by that time.
I only recently started telecommuting and I'm blown away by how much more productive I am. I actually attribute this to the fact that I do NOT work crazy hours. I take pretty frequent, but real breaks. I browse HN a lot less now and sit in the sun a lot more and when I do sit down to work I can pump out code amazingly fast because I'm gasp actually refreshed. If I'm exhausted I can take a nap, in an office I'd have to just push through and get nothing done rather than actually getting refreshed. Additionally the reward for getting work done faster is much greater, if I can get what I need to get done completed early in the afternoon then the day is mine, but in the office it simply means it's time to "look busy". I think the long term effect of this reward system is to be as productive as possible, the only person's time you're wasting is your own.
Also I've found that communication is better. In an office I find people often assume that proximity equates communication, but with distance you know you have to make an effort.
I was reading a study a while back about how an absurdly high percentage of total jobs could be done via telecommute but aren't. It's crazy to think about how many millions upon millions of dollars in fuel costs and reduced emissions could be saved by having more telecommuters. Not only that, but companies could save so much money by having reduced or no office space/electricity/etc. Plus they'd get the added benefit of increased worker satisfaction in most cases.
What you said, plus the employee commute time - I have actually turned down a (nominally) better paid job offer to accept a (nominally) lower one. The pay is lower, but the almost instant commute means I actually earn more per (work + commute) hour. On top of that I also save on fuel, car wear and tear and road jam frustration.
In my experience, the number of people that actually have what it takes to telecommute effectively is extremely small, and most of those are self-employed already.
Of those that want to telecommute and have a steady job, very few can actually handle the responsibility and the lack of stimulus from co-workers for longer periods of time. Flexible hours, working from home on a regular basis, sure, no problem, but actual full time telecommuting requires a lot of commitment, discipline and communication skills.
I routinely have people begging me to work for them, but probably 4 in 5 clam up when I specify that -- while I'm happy to spend as much time with them as necessary to get the specs and make everyone comfortable -- I will not sit in their office to do the programming.
I can not, for the life of me, understand why that is such a sticking point with so many people. Fortunately I have enough people who are willing to work with me anyway that I can forget about the ones who don't, but it seems mind-numbingly obvious to me that if you're desperate for the skills I have, you should be willing to work with a requirement that doesn't cost you anything.
As near as I can fathom, it's a psychological thing. Remote people don't seem like they're part of your "empire" as you look out across the office and see all the busy beavers hunched over their computers.
But they rarely are able to tell if I'm slacking off in the office either. They can't tell the difference between me working on their code or my own fun side projects.
It's a sticking point because being virtual is much different than being co-located, especially when only one member is virtual. If you don't have the experience in managing or working with a virtual group, you're going to be reluctant to get into it.
Aside from some good anecdotal pieces here, research shows that communications are the critical factor of successful telecommuting. Trust is based on communications, and you can't work effectively in an organization without trust.
I think you're on to something with "only one member is virtual" and previous experience.
Communication is essencial and harder to manage if just one member is virtual. So, it may not be worthwhile to manage just that one member differently, hence the requirment for "on-site" programming.
I've been on projects with a mix of telecommuters and people who have to work on-site, and communication is no more an issue than with any other configuration. The only problem with a 'mixed' team is that you can get resentment among people who are required to go to the office every day, but that's a problem of company policy.
Face-to-face communication is enormously disruptive to engineers, to the extent that -- even when I worked on-site -- I would spend 90% of my time communicating with other engineers over IM. At one company, I worked across the desk from another engineer, such that I could reach out and touch him. Yet we'd say good morning to each other, and we'd go to lunch together frequently, but the entire rest of the time we'd communicate via IM.
Engineers need to talk with the management and clients for three reasons: 1) To get the specification 2) to clarify the specification during development and 3) to get feedback during testing/qa. The only component of that which needs to happen during development is #2 and seeking clarification is engineer-driven, so if the engineer doesn't have a problem with picking up the phone or sending an email or scheduling a meeting (activities I do constantly with clients) then it's not a significant barrier.
One fourth type of communication between management and engineers is what I like to call "comfort talk": management hovering around engineers asking for "status updates," or small-talking about an unrelated project, or asking for an explanation of some technical point or the other, or fishing for some decision that needs to be made so that he can make it himself.
I call this "comfort talk" because most of it is useless but it makes the manager feel involved in the project. They don't want to do it over IM because IM doesn't give that same comfy feeling, and they can do it by phone, but there's a mental barrier to picking up a phone that makes them reconsider if it's important. It's much easier to roam over to an engineer and hover behind him until his concentration breaks.
Of course "comfort talk" is (almost never) beneficial to the engineer or his productivity. In fact it's the enemy of productivity. I still have to put up with a good deal of it by phone when working remotely, but far far less than I would in person (due to the mental barrier). The reduction in this "communication" is a godsend to me but makes the relationship feel less comfy for the manager, so once again we’re talking about psychological issues on the part of management.
I think this is because some people run on "manager time" and they like being able to poke in every hour or so just to check up, or bug you with something different that's so urgent it just popped up.
I live in Missoula, MT and I'm not willing to move because my family is here, and I love the city. Programmers here are willing to take a pay cut to stay, and I know several that telecommute to out of state jobs that pay better than most local companies. I telecommute too, but my employer is local.
I'm sick and tired of companies being super picky because I don't know their technology stack or maybe just one element, they don't even offer a technical test these days.
I wont learn Cassandra or Scala because they are popular on super-webscale sites, I did, though, learn Haskell, Node, MongoDB, Redis, Python, Ruby, not because they teach that in college. I think that tells you I can learn other technologies.
But I get a feeling - in many interviews I've had in the last couple of month - they get disappointed when I tell them I don't know Scala, Cassandra, Hadoop...
Most good programmers I know (they're not genius level, nor most of the people here) are willing to relocate wherever you are, but they might not know the super-awesome-webscale technologies you use because they work for actual businesses that charge customers and don't need a billion uniques a month to be profitable.
Instead of bitching about the lack of talent (and there are many programmers like me) be willing to train people on your weird-ass technology stack.
While interviewing recently I realized that I was spending ~20 hours per interview picking up pieces of the software stack that I haven't worked with before. The cognitive burden that a candidate has to bear is very real.
I think he means that he's not going to learn it himself independently because he doesn't use it for work, and he's learning/using other technologies for his personal projects. And all technologies are more useful to him currently than the one's for building billion visitors/month sites.
I love learning new things, but to be honest I don't find a good use case for e.g. Hadoop, at least not in my personal projects. Nor they are attractive to me. And it's not because I'm not into non-mainstream tech, because I am into R, Haskell, Redis (yes I know some of you might consider them mainstream).
Lets say you don't have a super-model-girlfriend but you want to know everything about them... Some people like to do that I don't.
181 comments
[ 2.3 ms ] story [ 215 ms ] threadI would have guessed that tech unemployment would be lower than the national average, but 4% is really low.
Basically, it uses men who were eligible for the Vietnam draft (who enrolled in college in greater numbers than they otherwise would have, to avoid military service) to demonstrate that success from college graduates is more than a "these people are the ones who were already going to succeed" thing.
In programming, we'll always have (in any month) some % of workers moving from one job to another (either because they quit, the company they worked for went out of business, or they were laid off - because the company performed badly or their own poor or poorly perceived performance.)
And, in programming, there will always be some set of people who find themselves out of job because the company they were working for no longer needs their Delphi or COBOL or other outdated skill (not to say there are not jobs for those Delphi or COBOL programmers, but there are less and less of them, on average.) Those programmers have to get re-trained, etc.
These two groups make up that 4% - which is around the natural unemployment rate for the economy as a whole on average over the last 70 years (it's around 4-5).
If the unemployment rate was above this (basically at the national avg of close to 9) for programmers, then the difference would be cyclical - missing jobs based on the recession. Because it is so low, I;m wondering if it's we can conclude that programming (in today's economy, at least) is recession-proof.
Inflation is 3-4%.
Telecommuting requires the entire team or ideally the entire company be set up to work like that - just having one guy out in a different state or country on his own doesn't work very well in most cases. I understand that. What I don't get is why more companies aren't structuring themselves to take advantage of remote workers.
If you have strong procedures in place to deal with remote/offsite workers (fulltime or not), you can more easily integrate short term labor when you need it - you'll have the shared workspaces, file transfers, documentation, version control, etc, already set up and ready to let new people in as needed.
This seems like this would be a competitive advantage that more companies should be looking at. Maybe they will be in the coming years as the impact of underwater mortgages and geography-locked workers starts to impact the broader tech labor market.
Most startups/tech companies don't necessary have that.
By sticking around in a depressed area your are just depressing your earnings.
(It's something different, if you have to come up with cash to pay off your mortgage; instead of just being able to keep paying the normal rates after you sold your house.)
Though I do see that it is a problem, if you have to come up with the margin call in cash when you sell the house.
Lots of companies _are_ structuring to take advantage or remote workers. It's called outsourcing. After all, why pay high rates for a remote-US worker when you can pay low-rates for a remote Chinese or Indian worker.
Sure, you're smart, and bright, and a hard worker, but there are a billion Indians, and more Chinese - I'm sure we can find _someone_ smart and keen AND cheap...
Telecomputing and outsourcing are the same thing. If you promote one, then you promote the other.
What workers don't realize is that there is a massive advantage in going to the office. It's the only thing separating you from that other guy. Take that advantage away at your own peril, but don't come crying to me later when your job has moved 10 000 miles away.
Right now if you look at e.g. India, there are lots of outsourcing companies but workers don't stay long at these places. They get in, get experience and then move on somewhere they can make money. Usually somewhere in the west.
If telecommuting were to take hold, yes that would mean I would be competing with people from e.g. India. But guess what: I already am. The biggest difference would be that people from India wouldn't have to move to the west for years, build up their income and then move back. They could stay in India if they wanted.
http://www.amazon.com/Job-Went-India-Pragmatic-Programmers/d...
I do not underestimate the value of having a team in the same location. It does affect morale and company culture. But with the right people and the right technology those issues are quickly going to wind up in the rearview mirror. When I look at a company, I want to see if they are set up to do remote work, or are they landlocked?
Nice term.
I love this term. Maybe I'll use it on my resume.
A particularly good selling point for getting the more experienced developers with family. Come work for us in friendly brattleboro Vermont! (I've been there, it's like Gilmore girls in real life). Bonus if you're within train distance of the city you can get the best of all worlds.
Maybe if we called it 'cloud commuting', CIOs would buy in.
I think paying well is a good idea, but it's not a complete strategy and I don't think it actually is as likely to bring the lifestyle satisfaction that telecommuting can for many people.
At your employer's workplace, you don't have that control. You can be interrupted at any time by anything.
You don't appreciate that flexibility until you have to use headphones and music to drown out your co-workers' inane personal conversations.
I think there's something inherent in working with people around you that you can't really replicate online. Being able to go over and talk to someone and ask them a question is invaluable when compared to having to message/email someone and wait for them to respond. It took us far longer to get sprint planning done (we were also doing Scrum) over the phone because no one wanted to talk, and that's easier to shrug off when you're at home. There's some level of team building that's missing when you telecommute - you don't go out for lunch with people, or have any sort of real social interaction.
Honestly I think it's up to the team/company to help work through those issues. We set up a chat system so we could talk during the day and that did seem to help for awhile, though.
The real need to get out is just a need to spend some time in the sunshine, or walking.. funny little things that happen on accident when you're commuting :)
It's definitely an issue, and one that can be difficult to overcome. Since I'm splitting my time between my full time job, and working on Appleseed almost full time in the off hours, the last year has been short on social interaction, and I've felt the effects. That Oatmeal comic really hit home a few months ago when I went to a party a few months ago and found myself feeling very socially awkward. Not nervous, just a little bit clueless about what to do and how to do it.
I'm a very social person, so it was a little bit jarring how quickly those skills could atrophy.
But there are remedies. Scheduling social time is important, and not seeing as "wasted" time, but an actually necessary task for your mental health. Working in coffee shops when you need to, going for walks when taking breaks, etc. And going to a co-working space once in a while doesn't hurt.
In this, as in all things, your mileage will certainly vary. If you're a type-A people person, you should probably stick with a social context. Although (as elsewhere noted) you'd be surprised how much social interaction you can have online at home these days.
Having been at an all-telecommute shop i can say that we ended up doing far more work than most teams. 10pm email conversations with the CEO were normal.
I found it far easier to do that, than to veg out in the office when I needed a break to go out, see the sky, walk around, breathe, etc.
Also, this was fairly early on, sphere was a new company and we were having growing pains. And its not like it was a nighlty thing, more along the lines of often enough to not be weird, but it wasn't often.
Also, before we were quasi-detelecommuted (meaning hires in NYC that went to the office) when something broke, everyone would pitch into fix regardless of hour. After the original peeps (well, most of us) left, the replacements (in the office) had an office mentality. That is, anything that happened after hours wasn't their problem.
Maybe that works better for them, but not for me. Doing things my way got more of my awake/alert time for actually doing things, and the flexibility it imparted helped keep me sane. Offices and rigid schedules drive me batshit insane.
Having been at an all-telecommute shop i can say that we ended up doing far more work than most teams. 10pm email conversations with the CEO were normal.
In my case, though, I solved this by getting out to twitter/tech meetups and other activies (e.g. I'm speaking at a conference in Amsterdam in June). This occasional socialization is enough for me, though your mileage may vary. Also, it might help that I work in a very social open-source field where I can have continuous contact with other developers and community members.
I must admit, I would hate to go back to regular commuting. In my previous life I only had a 40 minute total commute but even 40 minutes is really valuable nowadays!
I have a suspicion that there's enough people in the SF area (and a couple of the the other "big" markets) that will actively fight against telecommuting, specifically because it will lower wages in those areas.
As someone else posted, yes, I understand the value of a team being in the same room. But that value comes at a premium price, and it's one which may not always be worth paying. However, given the boom/busy/buyout cycle in the bay area (as an example), enough of the same workers can move from company to company as the companies are merged, bought out, or close, that this keeps the talent supply close enough to what is needed to make it harder to embrace telecommuting. You just need a few more people to fill in a few gaps, right? They need to be on site, or they're not a 'team player', or just not serious about their career in tech if they don't want to move to the valley! (have heard this before).
If the majority of companies out in SF set themselves up to embrace telecommuting, that would mean it would be easier to fill that next position with someone from Idaho, Kansas or Utah. That would mean the company could pay a lower wage. Why would the culture of startup workers want to embrace something that will end up driving down their salaries?
True, but they can whisper into the right ears every day, 9 - 5. And it's quite easy to negatively impact a coworker's productivity, if you so wish.
From an investors standpoint, of course they'd like to spend less, but many no doubt get a thrill out of bragging about how they're able to attract the top-paid talent, stealing person X away from company Y, etc. Few investors would likely be bragging about how they've achieved 20% cost savings by introducing a culture of remote US workers.
Similar to most dept managers, if you show you can get the same results with less money, you'll get less money in your budget next year. No one likes to do that, so while there's incentives to save money, there's also incentives not to save money.
I don't think this is something most people there obsess and strategize about day after day. I do suspect some of the savvier ones do understand that the easier they make it to bring in remote workers, the easier they will be to replace. When you stress the whole culture of the region as being 'the place to be', you make it harder to justify remote workers because "they're not here, they don't 'get it'".
I don't give a shit about your corporate culture or your ping pong table or your office politics or your ego battles, I only care about solving problems and producing solid solutions. Telecommuting lets focus on doing just that while leaving all the other nonsense behind.
However, co-locating has its own benefits, and I suppose thats why he does not hire remote workers (for permanent positions). We have hired remote contractors in the past, and they worked fine to good, but it required lot of effort on collaborating.
When I'm contacted by a job recruiter for a position that pays more, but requires moving to somewhere like Mountain View, I will rarely entertain the idea. Sure, I'll fly into the office, I'll do it quite regularly actually, but there's no way I'm picking up and moving to a city with considerably less to offer, yet which costs substantially more.
I understand the value of social capital, and working with people face to face. But how often does that really need to happen? As developers, our job is ultimately to write code, and that can happen anywhere.
It's interesting to see the numbers in this article.
What's remarkable is that, even after two years of flattish compensation, technology professionals are willing to sacrifice $7,800 on average to work from home
The article speaks as if this is a huge amount, but as a chunk of total salary, it's probably 5-15% for most tech jobs. So the question for employers is, is it worth an extra 5-15% in salary to have your team work together in person?
In many cases it is.
And that's if you manage to live a mere half-hour from work, which in any major city is seriously unlikely.
If you're good at tech, why would you take a second job as an automobile driver for chump change?
If enough employees continue to be willing to commute for a mere 5-15% more in salary, then employers will continue to, quite rationally, pay them to do so.
I left a job I had for 5 years that allowed me to telecommute for contracting where I was expected to be in the office but made about 160% of what my full time salary was. After about a year of that I returned to my previous job and much lower salary to get the benefit of telecommuting once again.
With a family, the benefits of telecommuting (at least to me) are just far to valuable.
[Posted from Santiago, Chile....]
[Posted from Lima, Peru....]
[Posted from Monterrey, Mexico....]
Whereas if the employer pays for these things, they may have to levy a Fringe Benefits Tax on the value of the payments at the top marginal tax rate.
In total dollars it is sometimes cheaper to bump the salary and let the employee actually do the taxman dance.
Of course, I am not a lawyer, not a tax accountant and I don't work for the ATO. Seek advice, YMMV etc.
Why not quit after the first month then?
And got 3 "office days" worth of work done.
And I haven't even brushed my teeth yet. :-)
You know what telecommuters say, "Once you've deployed a killer app in your pajamas, you can never go back."
I've been working as a full-time programmer from home for about a year and a half now, and it's beginning to get a bit weird. Aside from not having physical coworkers, I don't leave work, go home and do something else, because work is always all around me. There's this never-ending pattern of 9-5 quickly becoming 2 PM - 8 AM, until I finally pull an all nighter and it resets.
It doesn't help that I'm 100% passionate about what I do...!
I was the last survivor of a 30 person development office. That in itself was eerie.
At work we spend 80% of the day pairing over voip and SSH. It's ironic because I moved from California to Seattle because I got tired of telecommuting all by my lonesome from down there, but these days with pairing it doesn't bother me at all.
Specifically, are you sharing a screen session with VIM in a terminal or what?
Do you rotate pairs or is it always the same person? How would you compare your remote pairing setup with live, in-person pairing?
I haven't done much in-person pairing, but I think the main difference is not having to share a keyboard. Each person can use a system they're comfortable with; no fuss about dvorak vs qwerty, Kinesis vs Natural 4000, standing desk vs sitting, or Ubuntu vs Macosecks. It does mean you need to use auditory cues to indicate who is in control of a given session. The biggest drawback is probably that you can't share a web browser over SSH, but since we are doing backend coding it doesn't affect us.
For me it's been a huge win. We do also have week-long meetings a few times a year to bring the whole team together in-person to promote the team's cohesion. But working from home is great; as long as I'm able to switch things up occasionally by working from a coffee shop a couple times a week, I'm happy.
Obviously, some of the things you mentioned with in-person pairing can be alleviated. At my current client, our setup includes multiple keyboards and mice. A friend of mine uses his own keyboard with a hardware switch to go between dvorak and qwerty.
You mention not being able to share a browser which makes me think of the times where it would have been convenient to look something up for a moment while my pair experimented (two pronged problem solving approach... :).
Also, what kind of pairing patterns do you use in this setup? Ping Pong TDD, driver/navigator, etc... ?
Definitely. Occasionally we'll read docs in w3m, but often it's good to go async on looking up some boring details.
What we do is probably more driver/navigator since whomever is hosting usually has better latency. The remote guy can still get around just fine, but it's just barely noticeable enough to give an edge to the host. Since we work in a language that makes it easy to do strict FP, (Clojure) test-first is not as important as it would be in an imperative language, though we do have pretty good coverage.
I meet a friend to go climbing two nights a week, which pretty much forces me to stop working at a certain time two days a week. Having those two days anchored seems to help stop the other days drifting into other time zones.
Initially my sleep cycle (and therefore working hours) shifted by a couple of hours, so I'd get out of bed about 11am, and start work somewhere around 12, which effectively meant I had an hour before I stopped for lunch at 1, and then ended up working until 9 in the evening.
If I were single I could probably be quite happy with that, but it meant I only really got a couple of hours with my wife before she went to bed. That alone gave me the motivation to get back into the habit of starting work at 9, and finishing between 5 and 7.
I'll also second the comment by the person who said that it helps to have something planned for the evening, if only to force you into stopping work by that time.
Also I've found that communication is better. In an office I find people often assume that proximity equates communication, but with distance you know you have to make an effort.
http://news.ycombinator.com/item?id=2202187
Had some interesting comments...
Of those that want to telecommute and have a steady job, very few can actually handle the responsibility and the lack of stimulus from co-workers for longer periods of time. Flexible hours, working from home on a regular basis, sure, no problem, but actual full time telecommuting requires a lot of commitment, discipline and communication skills.
I can not, for the life of me, understand why that is such a sticking point with so many people. Fortunately I have enough people who are willing to work with me anyway that I can forget about the ones who don't, but it seems mind-numbingly obvious to me that if you're desperate for the skills I have, you should be willing to work with a requirement that doesn't cost you anything.
As near as I can fathom, it's a psychological thing. Remote people don't seem like they're part of your "empire" as you look out across the office and see all the busy beavers hunched over their computers.
Aside from some good anecdotal pieces here, research shows that communications are the critical factor of successful telecommuting. Trust is based on communications, and you can't work effectively in an organization without trust.
Communication is essencial and harder to manage if just one member is virtual. So, it may not be worthwhile to manage just that one member differently, hence the requirment for "on-site" programming.
Face-to-face communication is enormously disruptive to engineers, to the extent that -- even when I worked on-site -- I would spend 90% of my time communicating with other engineers over IM. At one company, I worked across the desk from another engineer, such that I could reach out and touch him. Yet we'd say good morning to each other, and we'd go to lunch together frequently, but the entire rest of the time we'd communicate via IM.
Engineers need to talk with the management and clients for three reasons: 1) To get the specification 2) to clarify the specification during development and 3) to get feedback during testing/qa. The only component of that which needs to happen during development is #2 and seeking clarification is engineer-driven, so if the engineer doesn't have a problem with picking up the phone or sending an email or scheduling a meeting (activities I do constantly with clients) then it's not a significant barrier.
One fourth type of communication between management and engineers is what I like to call "comfort talk": management hovering around engineers asking for "status updates," or small-talking about an unrelated project, or asking for an explanation of some technical point or the other, or fishing for some decision that needs to be made so that he can make it himself.
I call this "comfort talk" because most of it is useless but it makes the manager feel involved in the project. They don't want to do it over IM because IM doesn't give that same comfy feeling, and they can do it by phone, but there's a mental barrier to picking up a phone that makes them reconsider if it's important. It's much easier to roam over to an engineer and hover behind him until his concentration breaks.
Of course "comfort talk" is (almost never) beneficial to the engineer or his productivity. In fact it's the enemy of productivity. I still have to put up with a good deal of it by phone when working remotely, but far far less than I would in person (due to the mental barrier). The reduction in this "communication" is a godsend to me but makes the relationship feel less comfy for the manager, so once again we’re talking about psychological issues on the part of management.
I'm sick and tired of companies being super picky because I don't know their technology stack or maybe just one element, they don't even offer a technical test these days.
I wont learn Cassandra or Scala because they are popular on super-webscale sites, I did, though, learn Haskell, Node, MongoDB, Redis, Python, Ruby, not because they teach that in college. I think that tells you I can learn other technologies.
But I get a feeling - in many interviews I've had in the last couple of month - they get disappointed when I tell them I don't know Scala, Cassandra, Hadoop...
Most good programmers I know (they're not genius level, nor most of the people here) are willing to relocate wherever you are, but they might not know the super-awesome-webscale technologies you use because they work for actual businesses that charge customers and don't need a billion uniques a month to be profitable.
Instead of bitching about the lack of talent (and there are many programmers like me) be willing to train people on your weird-ass technology stack.
I know Scala, Cassandra and Hadoop, execute across all of the SDLC, as well as just flat out code, and available I might add. Telecommute only.
I love learning new things, but to be honest I don't find a good use case for e.g. Hadoop, at least not in my personal projects. Nor they are attractive to me. And it's not because I'm not into non-mainstream tech, because I am into R, Haskell, Redis (yes I know some of you might consider them mainstream).
Lets say you don't have a super-model-girlfriend but you want to know everything about them... Some people like to do that I don't.