Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Businesses Communications Programming Technology Politics

If the Programmer Won't Go To Silicon Valley, Should SV Go To the Programmer? 294

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.
This discussion has been archived. No new comments can be posted.

If the Programmer Won't Go To Silicon Valley, Should SV Go To the Programmer?

Comments Filter:
  • Exactly this. (Score:5, Interesting)

    by fyngyrz ( 762201 ) on Saturday January 03, 2015 @03:27PM (#48726099) Homepage Journal

    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.

    • Re: Exactly this. (Score:5, Interesting)

      by Anonymous Coward on Saturday January 03, 2015 @03:44PM (#48726171)

      If these companies were hiring a cook they would require 3 years experience working on an Ace cooktop, 5-years experience with Acme Food Supply, and be able to demonstrate the restaurant's recipe for their signature meat dish before being considered.

      Companies didn't come into existence with their particular toolsets: they learned them, and quickly. Then they refuse to consider hiring anyone who doesn't already know them in depth.

      • If these companies were hiring a cook they would require 3 years experience working on an Ace cooktop...

        Worst analogy ever.

        When the culinary staff screws up, they can set fire to the kitchens or put employees in the hospital. Experience and credentials matter here.

        • And yet, we trust that the chefs will be able to learn a new stove.

          • Re: Exactly this. (Score:5, Insightful)

            by Shados ( 741919 ) on Saturday January 03, 2015 @04:56PM (#48726543)

            Because it doesn't take very long, and the chef is likely to still be working there in 2 years.

            In software engineering, the average time you can reasonably expect someone to stay working for you, regardless of salary or conditions/perks, is about 2~ years. Much less in startup hotbeds like SF.

            Now, let say you have some reasonably complex stuff, not too crazy, but not trivial either...maybe you use slightly less common languages (let say Scala over Java...not obscure, but not everyone learns Scala in school), and it takes 4 months for someone to be able to be left alone and do their thing (I'm making numbers up) They still won't be amazingly familiar with your particular business/domain and the ins and outs for a year, and because humans generally always improve with time, they'll be at their peek at the end of the 2 year.

            If you hire someone who already knows your technologies, you might be able to reduce that 4 months to 2 months instead. That's 2 more months of peek productivity at the tail end when your engineer is at their best. That could translate in hundreds of thousands, of even millions of dollars depending on the size of your business.

            And that is why everyone's hunting down pre-trained people. Of course, then you have to weight that with the cost of not hiring anyone at all, and decide whats best.

            • because humans generally always improve with time, they'll be at their peek at the end of the 2 year.

              Not wishing to poke fun, but do you have any references for that? I'm not sure what you're trying to address.

              • by Shados ( 741919 )

                hmm? maybe I worded it wrong? All I mean is that if you assume people are always getting better at things they do 40 hours a week, the day they decide to leave your company, is always the day they're the best at what they do (within the context of their employment for you).

                I didn't mean people peek after 2 years specifically.

            • Re: Exactly this. (Score:5, Insightful)

              by ATMAvatar ( 648864 ) on Saturday January 03, 2015 @06:10PM (#48726917) Journal

              Because it doesn't take very long, and the chef is likely to still be working there in 2 years.

              In software engineering, the average time you can reasonably expect someone to stay working for you, regardless of salary or conditions/perks, is about 2~ years. Much less in startup hotbeds like SF.

              ...

              And that is why everyone's hunting down pre-trained people. Of course, then you have to weight that with the cost of not hiring anyone at all, and decide whats best.

              That's largely of the tech industry's own doing.

              It is well-known amongst programmers (and anyone else who cares) that the only way to be paid the prevailing wage is to job hop. Employers refuse to give regular raises to keep their coders in step with market salaries. Furthermore, employers do not invest in their employees - training must be done on a person's own dime and their own time. In a worst case, the tools and technologies used in a workplace will stagnate, causing people to leave just so they're not left behind in the industry as a whole.

              This would quickly change if the tech industry executives put more effort into retaining good people and less time into screwing them.

            • Re: Exactly this. (Score:5, Insightful)

              by melchoir55 ( 218842 ) on Saturday January 03, 2015 @06:20PM (#48726971)

              This is the point of view of PHBs who don't understand human behavior at even basic levels. Humans have things like trust, loyalty, nesting instincts, and all the other things that make staying at a company for many years a reasonable expectation. There are software development shops *in the bay area* which have low turnover rates for their staff. Of course, in order to take advantage of those characteristics, you need to the prime them.

              You cannot treat people like cogs in a machine and expect them to treat your organization like anything but a machine to draw resources out of until they can find something better. There is a prevailing attitude among people who run software shops that their people are there to be abused and taken advantage of as much as possible. I left one of those organizations early in my career for something much better, and the difference in my own sustained productivity levels really astonished me. I didn't realize how hard I was dragging my feet out of spite, apathy, and god knows what other negative emotions fostered by maximizing the alienation of your workforce.

              PHBs think they're killin' it when they hire someone they know is worth 90k and pay them 60k. In fact, that person is probably hanging out until they can find a better job, and because they know they are doing that, they are contributing at the bare minimum level they think is necessary. Since it is impossible to quantify the productivity of an engineer (no matter how much you try to micromanage), this is NEVER a win for the company. And, no, seeing them in their chair for 50 hours a week doesn't mean they're doing more than 20 minutes of work.

              • ... let alone whether the work they're doing is any good.

              • by Shados ( 741919 )

                Except the reason people are jump hopping has nothing to do with money. It used to be that way during the dotcom recovery, but today? Its been quite a few years since I honestly heard someone hop for money reason. And yes, there's always the occasional exception... Oracle has a low turnover rate in some of their offices. Mainly because its the only big name company that will hire some of these people, so they don't dare leaving.

                But in the bay area? Most people hopping are doing it from startup to startup. N

                • Nearly everyone I know in the Bay Area leaves for better pay, not "boredom" as you claim. The larger companies in the Bay area, and the elephant in the room I have yet to see discussed, were found guilty of illegally colluding to keep wages artificially low just a few months back. This impacted the wages of everyone in the bay area, like it or not (that is the nature of Capitalism). You can bet that there is still collusion, but people are going to be a lot more careful about their deals for a while. Th

      • Re: Exactly this. (Score:4, Interesting)

        by m00sh ( 2538182 ) on Saturday January 03, 2015 @09:30PM (#48727859)

        If these companies were hiring a cook they would require 3 years experience working on an Ace cooktop, 5-years experience with Acme Food Supply, and be able to demonstrate the restaurant's recipe for their signature meat dish before being considered.

        Companies didn't come into existence with their particular toolsets: they learned them, and quickly. Then they refuse to consider hiring anyone who doesn't already know them in depth.

        I've seen certain fortune 500 companies advertise software engineering job positions that do not require any experience, do not list any requirements (except high school) and job description is as vague and all-encompassing as desire and ability to write software. That does not make getting that position easier to get.

        The biggest unwritten requirement is if you'd want to spend and interact 40+ hours a week with that person. That is why most women programmers no matter how inexperienced will always get hired very easily. Programming ability matters very little when the guy is a weirdo and awkward to deal with.

        Not that I'm implying you're a weird or anything, but when a guy walks in the door, people fear for the worst. Until you get to know someone, guys think other guys are creepy or bad. Thus, it is very easy to get a friend hired in your company but if a friend doesn't want to give you the recommendation in his company, that probably means your friend doesn't like you and wouldn't care to work with you.

        Despite what Slashdot and their parent Dice would like you to believe, job hunting is largely done through connections. If you are reading job requirements and fuming over not enough experience and what not, you're probably exhausted your contacts. Employers also fear the worst of the applicants coming through random job searchers and will scrutinize them more than if they came through connections.

        It is blatantly false that companies will not consider hiring anyone who already doesn't know the tool in depth. The biggest tool to learn is the company software repo, the business and culture of the company which is the least documented. Any commercial tool can be learned in weeks or months since there are thousands of resources on it. Learning the company source code base and all the ways the company works is the hardest part.

        My psychology book said that in most cases people make up their minds unconsciously and then go find reasons to justify it. I read somewhere (and it could be completely false) that an interviewer decides to offer a job or not very quickly and spends the rest of the time confirming it. I have found that it's the weird things that get people hired. If they were in the same fraternity, attended the same university or some other commonality. I hate to say it but if a team leader is Chinese, you will find that a lot of junior Chinese developers and this is because ethnicity is a super-obvious observation. Sometimes, entire teams have hidden commonality like an fraternity, an ex-employer or a university.

        Anyway, I've been turned away from many jobs that I was qualified for and had the technical skills for. But, if I want to land that job right after an interview, I have to have connections or be a super-charming person. Everyone thinks they are geniuses in their own right but others think differently. The most qualified candidate isn't the one who always gets hired. In the end, in software development, it is the team effort than the individual that matters.

    • No, definitely not exactly this. Remote working really doesn't work well. Especially remote working across 8 time zones (i.e. you only actually get to chat to each other for 1-2 hours a day)

      • by bondsbw ( 888959 )

        you only actually get to chat to each other for 1-2 hours a day

        You act as if this is a bad thing.

        Remote working really doesn't work well.

        Actually it can, assuming everyone doesn't need hours of direct supervision. Of course, I don't really want to work with many of those types anyway.

        I telework and everyone else is an hour ahead of me. It works out fine. One of the reasons is because my bosses aren't douchebags and they allow for flex scheduling. And they don't schedule too many meetings, meaning I actually have time to work on the things that they pay me to do.

        Especially remote working across 8 time zones

        Of course 8 time zones can be problematic,

      • Especially remote working across 8 time zones (i.e. you only actually get to chat to each other for 1-2 hours a day)

        This is just the kind of thinking I was speaking of. It makes no sense whatsoever when you actually consider it, yet people throw it up as if it was a real thing you had to worry about.

        If someone hired me and was X time zones away, I would simply adjust my hours by X, or X +/- Y as they considered useful to them. This is no different than, for instance, having to work the night shift (or any

      • No, definitely not exactly this. Remote working really doesn't work well. Especially remote working across 8 time zones (i.e. you only actually get to chat to each other for 1-2 hours a day)

        Remote work CAN work great, if you're doing it right.

        I've worked with people who did it right. Everybody had a grand time and produced a great product.

        When it doesn't work well, it can be awful. But don't blame the process, blame the people who don't implement it well.

      • I worked on a project for several years where the team was split between Boston, Sydney, and San Francisco. It actually wasn't all that hard for us to communicate and keep in sync. It probably helped that the SF and Sydney folks were on flexible schedule, while only the Boston team were cubicle slaves chained to their desks 9-6.

        FWIW, scheduling wasn't really any harder with SYD included than it was for just SFO and BOS.

      • You "Only" get to chat 1-2 hours a day? If you are chatting for more than 2 hours a day, you aren't working.

    • Re:Exactly this. (Score:5, Insightful)

      by AK Marc ( 707885 ) on Saturday January 03, 2015 @04:22PM (#48726339)
      There is a shortage of programmers in the US. There aren't enough of them, in my locality, that will work for what I'm willing to pay. That's a national emergency.
      • by Grishnakh ( 216268 ) on Saturday January 03, 2015 @06:37PM (#48727031)

        Exactly. And it's not just programmers, it's other laborers too. I have a small business and I really need to hire some competent employees. I'm willing to pay them $0.50 per hour. Why can't I find anyone willing to work for that???? We need to eliminate these minimum-wage laws and let me import workers willing to work for that!

    • by Kohath ( 38547 )

      All of these things have pluses and minuses. Rather than picking a side and defending it, companies should regularly weigh the benefits versus the costs of these choices and watch for opportunities that might tip the scales away from the current policy.

    • by cshotton ( 46965 )

      To put a finer point on it, Graham is willfully blind to the simple fact that H-1B engineering talent is viewed as a pure commodity to be consumed, discarded, and replaced by investors. VC-backed management teams are actively encouraged to keep wage pressures down by acquiring good talent at rates that are far below what they'd be if they weren't kept artificially depressed by the pool of non-US workers. The real truth is that "great" programmers are not scattered randomly throughout the human population. T

      • Re: (Score:2, Informative)

        by Anonymous Coward

        If Graham really wants the exceptional programmers, you don't bring then over on the H-1B, you use use the O visa and there is no quota for that program. Of course, that is not want he wants. The fact of the matter is there are not that many exceptional people in the world. The ones that have been identified and convinced to come over to the United States, have done so.

        The H-1B was created as a stop gap measure, to fill actual shortages for 3-6 years while America trains its residents to meet its own needs.

  • ...so they can keep an eye on you, so they can 'manage' you.

    There's a whole lot of BS in this world, and many of the people that sling the BS best can't really do much else. They talk a great game, but they produce little to nothing. The problem with this is some endeavors, like writing software in a collaborative setting, make it difficult to measure the contributions of the individuals that are supposed to be applying themselves. It's not so easy as simply counting lines of code or commits or functi
    • by wierd_w ( 1375923 ) on Saturday January 03, 2015 @03:39PM (#48726155)

      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.

    • They talk a great game, but they produce little to nothing.

      I wonder if the two skills are generally mutually exclusive.

      Any thoughts?

      • by TWX ( 665546 )
        More people talk a great game without producing than talk a great game and actually produce.
    • No, they want you there so that they can talk to you, have face to face meetings with you, and have casual chats. Because all of these things are where actual decisions get made. Having one half hour Skype chat a day, in the 1-2 hours that you're online at the same time just does not cut it for getting everyone pulling in the same direction.

      • by BarbaraHudson ( 3785311 ) <barbara.jane.hudson@nospAM.icloud.com> on Saturday January 03, 2015 @04:27PM (#48726375) Journal

        No, they want you there because they are incompetent at managing, so they've got to have endless meetings and interrupt you all the time to justify their existence. The whole "management is giving people a task, the tools they need to solve it, and making sure nobody else gets in the way" mentality is GONE.

        We complain about "hover parents", but micromanagers (or "hovermanagers) are just as toxic.

        • by unimacs ( 597299 )
          As a programmer and now a manager I want people in close proximity to each other to facilitate communication with each other, project sponsors, and end users. I also want staff that communicate well. This often leads to better results in less time. It's not that projects can't be successful any other way, I just consider it more ideal. No situation is perfect. I also recognize that staff may also need the opportunity to be free from office distractions so I support working from home as needed. Hopefully nex
          • I want people in close proximity to each other to facilitate communication with each other, project sponsors, and end users

            Telephone, email, text, chat, I'm sure they know how to use at least one of these ...

            • by unimacs ( 597299 )
              Workable but not as good as face to face communications. It's just not. Also does not facilitate the add hoc conversations that take place or allow for simple things like going out to lunch.

              Telephone, chat, text, email all have their place and have their own advantages. I use all of them. But exchanging information over chat or email is like having a crappy dialup connection vs. Gigabit ethernet. Sometimes it's good enough but a lot of time you can accomplish more in a 2 minute face to face conversation
              • If you want face-to-face, use skype or another video chat program. It's been shown [interruptions.net] that takes about 15 minutes to "recover" from an interruption . Now when you personally wander over to a developer and interrupt him/her "just to see how it's going", you've burned 15 minutes. It's why so many devs find themselves at their most productive at night, when nobody is interrupting them.

                An interrupt is defined as "any distraction that makes a developer stop his planned activity to respond to the interrupt’s initiator". There were three types of interrupts defined: personal visits, telephone calls and emails. Personal visits and telephone calls caused 90 percent of all interrupts and email caused the rest. The results showed the effort spent on interrupts required approximately 20 minutes for each occurrence, including the time spent handling the interrupt, and that the average developer receives three to five interrupts per day. This consumes roughly 1 to 1.5 hours per day of the developer’s time.

                • by Shados ( 741919 )

                  Devs (like a lot of people in any profession) are pretty damn good at interrupting themselves. People checking their personal email, sport team result, some unrelated chat room, etc. If you watched most devs without them knowing you're looking, without office related interruption, I'd be surprised if half of them went for 30 minutes without interrupting themselves.

            • by TWX ( 665546 )
              Except that it's easy to ignore the telephone, e-mail, text messaging, and software-based chats, especially when one is out shopping or playing video games or working on personal stuff out in the workshop.

              I'm starting to wonder if maybe more employees, rather than less, need to be made hourly and not exempt from receiving overtime. Employees that do not supervise less than four other employees, for example, regardless of what they actually do for a living, that personally own, not as a retirement fund,
              • Bosses would never go for it, because it will mean paying overtime - LOTS of overtime. They keep their jobs only as long as they can get the maximum effort from their underlings for the minimum expense.
        • No, it's not manager to engineer communication that's the problem. It's engineer to engineer communication. That is far far more important, and the thing that gets lost.

          • No, it's not manager to engineer communication that's the problem. It's engineer to engineer communication. That is far far more important, and the thing that gets lost.

            It doesn't get lost if you've got good people. But you know the saying - 1st-rate people hire 1st-rate people, 2nd-rate people hire 3rd-rate people. If you're not hiring people who can communicate with each other, you haven't hired 1st-rate people, so maybe the root of the problem is the hiring process?

    • by AK Marc ( 707885 )
      Management is hard remotely. Management is more than telling someone what they need to do by the end of the day. Having the ability to have more frequent casual conversations easily allows managers to better plan deadlines (Bob hasn't asked for time off, but is talking about a planned trip 6 months from now, so don't schedule anything then that Bob is required for - the corporate answer is deny Bob's leave request when it comes time, as he didn't place it early enough for anyone to plan around, but he did
    • by sjames ( 1099 )

      A manager that CAN'T look at those things in a telework setting isn't looking at those things locally either. All he does is look at whose butt is in the chair and whose isn't. In other words, telework presents a problem for a manager that doesn't know how to do his job in the first place.

      Consider, two guys sitting at their respective desks. Both in the same posture, both have their fingers flying across the keyboard. Both participate equally in the weekly post-pre-meeting meeting. One of them asked dumb qu

      • by jmcvetta ( 153563 ) on Saturday January 03, 2015 @06:34PM (#48727011)

        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.

  • It's funny because you can't just mash some numbers together and be like, "FACTUAL STATISTICS!"

  • Huh??? (Score:4, Insightful)

    by bhcompy ( 1877290 ) on Saturday January 03, 2015 @03:38PM (#48726145)
    SV makes up only a small percentage of software dev firms. They're located all over the place. Instead of going to work in SV, why not work in Irvine? Santa Monica? Denver? Seattle? Phoenix? Huntsville? Hoffman Estates? etc etc etc?

    And that's not even getting into the fact that many software dev firms allow you to work remotely. Who cares about working at Microsoft or Google if you can work at ADP or Northrop and live much cheaper?
    • Who cares about working at Microsoft or Google if you can work at ADP or Northrop and live much cheaper?

      The problem there is that then I'd have to work for ADP or Northrop.

    • Re:Huh??? (Score:4, Informative)

      by Shados ( 741919 ) on Saturday January 03, 2015 @04:28PM (#48726391)

      For scaling teams.

      The vast majority of people won't relocate. People in the tech world are more likely to want to, and people in 3rd world countries are very likely to want to, but in general, people won't.

      So if you need to hire 50 great engineers, your best bet is to go where the highest concentration of them are. Even having to compete with hundreds of other companies, its still better (the ones you lose to others can be made up by poaching). If you go and open up shop in the middle of nowhere, you'll never fill up a large team. Now some of the cities you mentionned are ok (ie: Seattle) too. SV isn't the only spot, of course.

      Telecommuting only works for a small percentage of top of the top, because phones suck, there's no great videoconference solution out there (No, i know which one you're talking about, it sucks. No, that other one sucks too), and text-only communication makes you lose all the non-verbal, making such communication inefficient for complex matters (it works great as a complement though).

      End result: companies need to open up shop in hot spots, and pay the insane amount of $$$ for both real estate and inflated engineer salaries. A few positions can still be filled by remote workers of course, but not the whole thing. Hell, even companies with international offices in the same timezone (ie: a NYC financial with an office in Montreal) have issues with those. It works to some extent, which is why they do it, but its far from ideal.

    • Because basically all the top tech firms are either based in SV or have a very large presence there? And in a industry where changing jobs and job instability is just the name of the game, having the ability to easily find other work opportunities is basically a necessity?

      While we're at it, why not make your film studio in Montana? Why not open a car factory in Bora Bora?

      • Basically all the top tech firms have offices outside of SV as well, as well as all the top Fortune 500 firms, all of which need software developers, all the top biotech firms, financial firms, aerospace firms, etc etc. All of them need software developers in one capacity or another. They're located all over the place.
  • by tepples ( 727027 ) <tepples.gmail@com> on Saturday January 03, 2015 @03:40PM (#48726159) Homepage Journal

    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 [jmargolin.com]. 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.

    • Finally, the dynamics of interrupting another team member for a quick answer to a quick question differ between working in person and working remotely.

      If they can't bug you right away,
      That's a good thing, I would say.
      Don't let them interrupt you 10x a day.
      They'll try to solve problems themselves.
      Do some research, hit the bookshelves,
      Think things through, stretch themselves.
      In the process they'll pick up their game
      Not wait like zombies, which is a shame,
      Or crying "I don't know," which is lame.

      Burma Shave

  • by PhrostyMcByte ( 589271 ) <phrosty@gmail.com> on Saturday January 03, 2015 @03:41PM (#48726165) Homepage
    No matter what your industry is, some PHB is going to get into a position where they feel out of control and unproductive if they can't get instant gratification popping in on their people to micro-manage them. In-person meetings are a must for these people.
    • That's partly what killed our office. Unfortunately, the PHB that did the deed was the owner of the company, and we eventually found him to be a lying ass hat. Tip: don't lie to database analysts, they are used to digging for data and finding inconsistencies.

  • business logic in your website theme, wtf.

  • by King_TJ ( 85913 ) on Saturday January 03, 2015 @04:03PM (#48726259) Journal

    I was just talking to some people yesterday about the popular trend in offices to build open floor-plans in lieu of the traditional cubicles and dividers.
    Even Google embraced the open floor-plan concept, yet I can't find much evidence from people working in such an environment that they find it an improvement?

    Basically, people are remodeling in this style because it's viewed as more trendy and insightful. Never mind the fact that the old way was probably done for good reasons and to solve real problems. (Open floor-plan offices have serious problems with noises, distractions and a lack of appropriate places to go make a phone call with a client or vendor. They remove the privacy of the individual worker, causing everyone around to see every little thing you do. Duck out for a smoke break or to use the rest-room? Everyone immediately sees how long you're not occupying your seat and can make judgements on your behavior.

    Same thing with this argument of using remote, "work from home" employees vs. making people come in to a central office. There are, IMO, many good reasons to expect your employees to be physically present in a central workplace each day. (Companies like Yahoo, who tried letting people work from home, decided to ban the practice when it turned out to be a failure for them.) Truthfully, I love having the ability to work from home in my own job - but I do computer support and systems administration work. Realistically, I usually wind up coming in to the office and only working from home about one day each week. In my situation, I'm (thankfully) given permission to make judgement calls about when it's most sensible for me to come in, vs. stay home. If I expect it will be a day of nothing but phone calls, helping users via remote access to their machine, and working with cloud based services we use? Then sure, I can do it from home. Many other times though, I'm expecting a package to arrive with a part to replace for somebody, or I'm just able to provide people a better level of service if I can look at an issue hands-on with them. (Remote control software is all but useless if you're trying to figure out why they're having monitor issues, for example. It may look fine on YOUR remote session screen even if their display is going bad.)

    I know a number of our creative workers putting together marketing proposals and the like do better work when they're in a group together, in-person. We've given them plenty of tools to collaborate remotely, and sometimes they do. But there are still lots of limitations with the technology, including internet bandwidth issues for some people, meaning their video keeps breaking up or their audio gets choppy on a conference call. And ultimately, you can't celebrate with co-workers for a job well done by remotely taking them out for dinner or a few drinks, either.

    I've become more and more convinced that the best solution is a mix of allowing SOME work from home or remote, and SOME expectation of coming in, in person. You won't be able to keep "best in breed" software development going with a scattered workforce who only collaborates video video chat, IM, email or phone calls.

    • I was just talking to some people yesterday about the popular trend in offices to build open floor-plans in lieu of the traditional cubicles and dividers.

      Actually, it's the open plan offices that are "traditional'. Watch an episode of, say, Barney Miller. Cubicles were this new-fangled innovation, etc.

      Now it's coming full circle ... meh.

      Notice that the bigwigs always had their own offices, either way. With doors even.

    • Open floor plans and cubicles alike indicate that a company doesn't really value the employees who work therein. If a company truly values a worker, they put their money where their mouth is and give that worker a real office. But talk is cheap, whereas real estate is expensive.

  • by davecb ( 6526 ) <davecb@spamcop.net> on Saturday January 03, 2015 @04:18PM (#48726317) Homepage Journal

    It's easy to cooperate with people who are awake and working at the same time as you. Managing projects up and down the US east coast was easy from Toronto.

    If you have people in San Francisco that start 3 hours later, you have to intentionally organize for that time difference. Some people here worked late hours (including at least one night-owl friend who liked to come in at noon), while others cursed the absence of their colleagues. Still other gloried in the absence, and said things like "I get three uninterrupted hours of work!"

    If QA was in Ireland (or India, or both) then people learned to hand off discrete chunks, and get the results in the morning. With people across either the Atlantic or Pacific, you get one meeting a day, so make the best of it!

    One group did time-critical diagnoses, and had three shifts running: Singapore, Grenoble and San Francisco. They passed the same bug around the world, working continually on it until they got done.

    Working in multiple timezones can work well, but only if you plan for it.
    If you don't plan for it, you'd better keep your business in the zone you're in.

  • It is quite easy to make logical arguments for why it makes sense to work remotely. The problem is that the buck stops at your managers desk. If you are fortunate enough to have an enlightened manager that trusts you to get things done then you will likely both benefit.

    Unfortunately there are still a lot of managers that have this rigid, old-school mentality that dictates that they must watch your every move, every day. They are more concerned with what time you come in to work and how long you take for lun

    • by Shados ( 741919 )

      There's more to it than just that though. My current employer was founded by engineers...they know damn well how it goes, and they've been only hiring people they feel they can trust (break that trust and you're out damn quick...but that pretty much never happens. People are pretty honest).

      People work from home (legitimately) left and right, schedules are nearly random (some people come in at 3 pm and work until midnight as their normal schedule, others are in at 5 am and are out right for time for a late l

  • by tlambert ( 566799 ) on Saturday January 03, 2015 @04:29PM (#48726395)

    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.

  • by Marginal Coward ( 3557951 ) on Saturday January 03, 2015 @04:32PM (#48726413)

    I recently attended a talk by Joel Spolsky, of "Joel on Software" and "Stack Overflow" fame, who made exactly the same point as TFS. He said they were routinely hiring people to work remotely at Stack Overflow and using remote technology such as Skype in order to get the best and the brightest - presumably also at the best price, though he didn't actually say that. He suggested this as a future trend that companies were eventually going to adapt to.

    Ironically, he gave that talk at a company that concentrates as many engineers as possible in one location. Oh, and he gave his talk onsite, not via Skype. Go figure.

  • by GoodNewsJimDotCom ( 2244874 ) on Saturday January 03, 2015 @04:33PM (#48726423)
    Little guys like Indie video game companies can't afford studios. They make video games with an artist in one state, and a programmer in another state. The teams can get big, but they get successful software done. Telecommuting saves people tens of grand a year, and I'd take a job for 20-30 grand less a year if I could telecommute. That's the price of gas, time to commute and big time savings on housing. Meetings are even more productive than in face meetings because you both share computers with things like gotomeeting or join.me. You get communication via voice, and can share copy/paste buffers and write code together which is productive unlike face to face meetings where no actual code normally gets done.

    Don't criticize telecommuting if you haven't done it yet. I know it is different(and people are afraid of change), but it is superior in many ways.
    • by Shados ( 741919 )

      As that get widespread, the "big time savings on housing" will be a wash though. Salaries are so high in SF, Boston, NYC, etc, because you have to pay someone that much if you want them to move there, because of housing cost.

      And right now, if someone telecommute for one of those companies, salaries stay roughly the same, because that would be a dick move for it not to be.

      But companies located in low cost areas don't pay nearly as much.... once its the norm to telecommute, they'll pay you accordingly, since

  • I was lucky enough to be hired by a company that lets me work remotely. I get paid what I expect/deserve, and I didn't have to move to San Francisco. I go there about 3~4 times a year just to get face-time with the people I work with. They like it because they don't have to find a space for me, and I like it because I didn't want to move to California.
  • by Marginal Coward ( 3557951 ) on Saturday January 03, 2015 @04:41PM (#48726461)

    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.

    • by melchoir55 ( 218842 ) on Saturday January 03, 2015 @06:58PM (#48727137)

      My best frontend developer is in Germany (I'm in the bay area). I spend about 2 hours a week interacting with him on a really busy week. 30 minutes to an hour normally. At the beginning of a project, I hand him a wireframe and we go over requirements. He asks me questions if anything is unclear. As the project continues, I check on how he's doing once a week. Sometimes I find he is mildly off course and I set him straight, but it is an uncommon occurrence. The stuff he delivers is mostly great, with a few bugs that usually end up getting ironed out the week after the turn in date.

      How do I achieve success with a worker on the other side of the planet?
      - I pay him very well. His wage ends up being about $65 usd per hour (which is high for a frontend developer).
      - I maintain a professional, but friendly relationship with him. He's a person, not my underling, and not a mere resource.
      - I made sure I know what he is good at and interested in. I give him tasks he is either good at or can/wants-to adapt to.
      - I don't engage him in communication unless doing so would be productive, though I do respond quickly if he wishes to initiate communication for any reason.

      This list should seem blindingly obvious to everyone reading this. "OF COURSE you do these things", you folks are saying. Well, I've found that although everyone agrees on the best methods to engage employees, very few people actually follow that course. Many corporations large and small appear to think there are shortcuts around building a strong employee. There are not. If you think there are, you're a bad manager.

  • by Anonymous Coward

    The USA if full of talent that can't get employed because the cost of credentials in terms of time and money is much too high. Kids that excel in programming while in public school are told that after 12 years of a public education, they now need to slog through years of college and build a mountain of debt before they can apply their talent.

    But without credentials, SV won't even look at you -- and they are mostly legally prevented from doing so [forbes.com].

    Lots of foreign labor have the credentials, though, in part

    • by Shados ( 741919 )

      Even Google will take you without a degree if you're good enough... I don't have a degree, and honestly no one has even looked in years. I also don't remember when's the last time I heard it come up during an interview review, and I've worked at a lot of places...

      I mean sure, if you don't have any experience, people will look for SOMETHING to gauge you to see if its worth their time to phone screen you. But you said "the USA is full of talent". If they're talented, actually talented, they got the skills SOM

  • Yes (Score:4, Insightful)

    by bjk002 ( 757977 ) on Saturday January 03, 2015 @05:40PM (#48726771)

    " 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?""

    Yes.

  • by jtara ( 133429 ) on Saturday January 03, 2015 @07:53PM (#48727385)

    No, 95% of great programmers are not in the U.S. But they ARE in high-educated, Western countries.

    We're talking about actual programmers, BTW, not copy-and-paste artists.

  • ...then why are virtually all of the most successful tech companies here?

    Yes, a few exist outside of the US. Not many.

  • If all these immigrants are so beneficial to me, I want a citizen's dividend to prove it and I do _not_ want my citizenship's equity diluted by making "voting share holders" out of these immigrants.

    Oh, you can't provide that for me?

    Take your immigration propaganda and shove it.

"More software projects have gone awry for lack of calendar time than for all other causes combined." -- Fred Brooks, Jr., _The Mythical Man Month_

Working...