If the Programmer Won't Go To Silicon Valley, Should SV Go To the Programmer?
theodp writes: "If 95% of great programmers aren't in the U.S.," Matt Mullenweg advises in How Paul Graham Is Wrong (a rejoinder to Graham's Let the Other 95% of Great Programmers In), "and an even higher percentage not in the Bay Area, set up your company to take advantage of that fact as a strength, not a weakness. Use WordPress and P2, use Slack, use G+ Hangouts, use Skype, use any of the amazing technology that allows us to collaborate as effectively online as previous generations of company did offline. Let people live someplace remarkable instead of paying $2,800 a month for a mediocre one bedroom rental in San Francisco. Or don't, and let companies like Automattic and Github hire the best and brightest and let them live and work wherever they like." Microsoft and Google — which hawk the very tools to facilitate remote work that Mullenweg cites — have shuttered remote offices filled with top talent even as they cry the talent sky is falling. So, is "being stubborn on keeping a company culture that requires people to be physically co-located," as Mullenweg puts it, a big part of tech's 'talent shortage' problem?"
Chris Pepper also recently posted another reasoned rebuttal to Graham's post.
Also, stop being anal about degrees, credit scores, old convictions, age, and health.
There's no programmer shortage. That's utter BS.
There's just a hiring pathology.
I've fallen off your lawn, and I can't get up.
The problem with the latter approach, is that programmers spend time when they arent working, thinking about the problem they are being paid to work on when they are working.
EG, they may have the sudden epiphany while playing super mario brothers, that they have failed to have while sititng in their cublcle, trying so very hard to push that solution out under great duress from their manager.
Or, as archimedes had his epiphanies-- In the tub.
This is not a new thing, and creative problem solving REQUIRES downtime to be effective. The people that insist "You arent applying yourself all the way, therefor I will ding you on your reviews!" are a problem, not a solution.
I can think of a few reasons why some software development companies oppose telecommuting.
Sometimes, an air gap can be the most effective form of information security. By 1985, Atari was already adding electronically locked doors; see posts about "building access" in Jed Margolin's inter-office memos from 1985. And for years, Nintendo required that authorized game developers operate out of a "secure office facility", explicitly excluding a home office. (Source: WarioWorld.com, the home of Nintendo's software development support group) This caused a bit of drama when Nintendo refused to sell a DS devkit to Robert Pelloni's home-based studio and Pelloni ran to the news media. (Nintendo relaxed this a bit in 2011, possibly to meet a threat of competition from iOS, Android, and OUYA.)
In addition, a lot of people still live in areas where affordable, reliable, high-speed, low-latency Internet access needed for telecommuting is unavailable.
Finally, the dynamics of interrupting another team member for a quick answer to a quick question differ between working in person and working remotely.
No. Reciprocal loyalty is dead.
If you work in SV, you can likely walk away from a tech job you can't stand and have another tech job inside a week. Some people can do it the same day.
If you work in Omaha Nebraska, you can walk away from a tech job you can't stand and have another job inside a week. At Pizza Hut.
There's a huge benefit to the worker to being able to switch loyalties quickly in an industry which is notoriously disloyal to their workers; some people's notification comes in the form of them coming back from a trip and finding that their badge no longer opens the door.
There are also economic factors. First, it's very east to relocate from San Francisco to Omaha, because it's an economic downslope. It's very hard to migrate from Omaha to ... well, anywhere ... because it's an economic upslope. The equity in your house or condo will convert out nicely, going one direction, and will end very poorly going in the other.
Finally, there are the social aspects; I'm not just talking about nightlife, or the bar scene, or sexuality issues, I'm talking about having a group of friends and acquaintances with whom you can maintain face to face contact, who are able to help you out in a job search, which simply doesn't exist, if you're looking for a tech job, but don't live in a tech Mecca. It's just not going to happen. So when your company is disloyal to you (read: let go, RIF'ed, laid off, temporarily cut back, or any of the other euphemisms), there's no reciprocity.
Gone are the days you could move to Southern Utah, go to work for Browning Arms, and write IBM 360 assembly code happily until you hit retirement age, and then collect your pension for the remainder of your life, in happy retirement. Even IBM has moved to a cash-balance pension plan, instead of a fully funded pension plan. Jobs for life are a thing of the past. And relocation, when it happens, is generally a long term thing. IF jobs don't last as long as the relocation does, and there are no alternatives: no thank you.
I've had experience working with people remotely, and my experience has been that the problems scale with distance. Specifically, it's easiest to work with someone in your own office, a little harder to work with someone across the hall, harder still to work with someone across the country, and *quite* hard to work with someone across the ocean. By the time you get that far away, timezones become a major problem, and IT systems don't always work well.
From a business point of view, you have to look at the cost versus the benefits. I once worked with a group of people from India who reportedly cost 1/4 of what we cost. But we did some metrics that showed we were 6x as productive, so we actually cost less overall than them. The main reason we were more productive was that our local group was highly experienced in the specialized technology we were developing, whereas the folks in India were brand new to it. Also, the folks in India ran into numerous network and server problems that slowed them down. Evidently, nobody in The Big Corporation realized that they needed to spend money on IT, since this experiment was supposed to be about "cost savings".
Given time, the IT problems might have gotten ironed out, and the Indians might have developed the necessary experience. However, the India group had so much turnover that they never became experienced in that technology as a group. In contrast, we had some Indian folks who worked with us locally, stuck around (at least until they got their Green Cards), and were ultimately as productive as the rest of us.
No. Reciprocal loyalty is dead.
Exactly. Be loyal to people but never to corporations. The corporation will never be loyal back: it will lay you off as soon as it benefits the bottom line.
"First they came for the slanderers and i said nothing."
While ago I worked for a venture-backed company. The code was an awful steaming pile of dog shit. But a few modules were much higher quality than the rest. Logical design, solid implementation, good comments, full test coverage, etc. The programmer who wrote them had only worked for the company a few months before he was canned - apparently management thought he sucked balls.