News for hackers. Stuff that matters.
Re:Want good programmers? Then pay them. by Apreche on Thursday May 03, 2012 @08:27AM (#3923518)
So true. I get calls from startup recruiters all the time. They don't seem to realize there's this thing called rent. They want to pay with equity. Might as well pay me with lottery tickets.

Here's the minimum I need to even bother talking to a recruiter. That means that for me to accept the offer, it probably needs more than this.

Six figures, 30 vacation days, full benefits, infinite sick days, convince me that you won't be out of business in any short span of time and you won't bounce a check. Also, under no circumstances do I work more than 40 hours a week.

The other thing that gets me is how companies expect you to really want to work for them. The fact is you need me more than I need you. I'm not going to spend my time solving your cute little puzzles and what not. My experience speaks for itself. If you want to hire me, you should be the one jumping through hoops to convince me I should quit my job and work for you. Only the past naive college version of myself thought otherwise.

TL;DR: if you want to hire me, pretend that I am a doctor and you are a pharmaceutical company.

Re:Want good programmers? Then pay them. by elliottcarlson on Thursday May 03, 2012 @09:45AM (#3923802)
I agree with a lot of what you said; but stating that you will under no circumstances work more than 40 hours a week bothers me. I try to get out of the office every day on time - but shit happens, and there are instances where someone needs to fix something or else the company is losing revenue. You want financial stability with a high salary - but aren't willing to help make the company stable. Yes, a healthy work/life ratio is very important to me, but I won't walk out that door in the middle of a crisis.
Re:Want good programmers? Then pay them. by clavalle on Thursday May 03, 2012 @10:58AM (#3924107)
Crisis mode is addictive.

It was fun to play the hero and get 'That One Critical Feature' out of the door for an important demo. It is a rush. Investors like it. Engineers like it. Soon a company is always in crisis mode; pushing hard to get the next great thing out. It becomes the culture.

At one company I worked at the VP of Engineering was the hardest, longest working person I'd ever met and a driver of that culture. No matter how hard or long you worked, he could beat you at that metric without breaking a sweat. There was a lot of pressure to live up to that example. Mostly I didn't mind because solving problems on a deadline is fun. Mostly.

Eventually, inevitably, that lifestyle started catching up to us. Nerves were frayed. Small technical disagreements started to stretch on into weeks long religious cold wars. We started losing good people who had the good sense to see what was happening.

Those of us who believed in the company and product stayed on, even thrived at some level.

After a few years of this something drastic changed. Our VPoE mother died unexpectedly. It hit him hard. He realized that he had been ignoring absolutely everything but the business. Everything. And the culture shifted on a dime. Engineers were no longer /allowed/ to be called on weekends whereas before we had to respond in 20 min. He would make it a point to go out with us after the workday, or even during the workday, to chat about life, the direction of the company, whatever. Most importantly, he ran interference when it came to the clients and laid down and enforced very sane timetables for completion of projects and features. And if there was a delay, it was ok...not the end of the world.

The product did not languish. Things still got done. Turns out clients, for the most part, could not care less how hard and fast we worked. Having good information for when something would be complete was sufficient. Sometimes better because we were not breaking ourselves trying to impress them with impossible deadlines that we would sometimes miss. Good information was better than fast information.

On top of that, the quality of the product improved. Crises mode was used too often as an excuse for shipping half baked product.

Creativity blossomed. Several revenue generating products were conceived and executed in the breathing space we all now had.

People started recommending talented friends to fill positions again...

Altogether, it was just a much better scene.

Now our criteria crisis is much more strict. It is basically "Will someone (client) die or lose their house if this is not done by some certain time?" If the answer is no, go home.

If you are managing people and part of your evaluation criteria, formally or informally, is "does that person work a lot of hours" or if your 'business stability' requires that kind of sacrifice on any kind of regular basis you are doing it wrong.

TL:DR Unless a client is going to die or go bankrupt if you or your employees don't work extra hours, go home.

Re:Want good programmers? Then pay them. by knieveltech on Thursday May 03, 2012 @11:26AM (#3924230)
"The product did not languish. Things still got done. Turns out clients, for the most part, could not care less how hard and fast we worked. Having good information for when something would be complete was sufficient. Sometimes better because we were not breaking ourselves trying to impress them with impossible deadlines that we would sometimes miss. Good information was better than fast information."

This. After years of working at shops where putting out fires was the norm I took a position with a company that handles their client deliverables in the manner you describe. For the first six months I was constantly jumpy, waiting for crunch time to hit and slinking home at 5:00pm feeling vaguely guilty that I was done for the day.

I just couldn't famthom how we could be working on all of the large project initiatives in our pipeline with no screaming clients and no marathon code sprints.

After a year in a sane environment it'd take more than six figures to get me to go back to the soul-eating grind that is so typical in small dev shops.

Re:Want good programmers? Then pay them. by sophacles on Thursday May 03, 2012 @11:43AM (#3924305)
I've seen this too. One company I worked for had a product that was deployed too soon. We as a dev team decided it was time to roll it out when it wasn't. Our fault. This created a crisis mode. It was a rush - live editing code on production servers to save an engineer rollout (nature of the product was one mistake locked us out of the box), seeing small fixes improve conversion by noticable amounts (or reduce the call queue significantly), etc. Bad engineering practice, but it made me understand the cowboy appeal, and I don't think I want to do it again.

However, this resulted in a bit of crisis addiction, followed by burnout. However, the CEO learned that crisis mode was a death march motivator. Suddenly it turned into crisis-this and crisis-that. Every small feature was a "drop everything we'll lose customers" crisis. It started wearing pretty quick. At some point he dropped the crisis act and just stated flatly that "your terms of employment state that you will work as needed, i need you now" the day before I had scheduled time off, and the "crisis" was getting a new feature complete for shipping in a year. Needless to say I got a new job.

Basically, I agree with clavalle - crisis mode if not used exceedingly sparingly can lead to a new set of expectations that will chew up a dev team.

Re:Want good programmers? Then pay them. by someone-else on Thursday May 03, 2012 @12:19PM (#3924452)
One place I worked had an unofficial policy: Every hour of overtime allowed you to take 2 hours off some other time. If there's a crisis, things can get done quickly, but nobody gets overworked, and there's a strong incentive for management to avoid crises.
Re:Want good programmers? Then pay them. by devs1010 on Thursday May 03, 2012 @12:55PM (#3924633)
I think in cases where you may loose a client or seriously damage a relationship it could also be warranted. Honestly, if they give you flex time, I don't mind all that much. At a job I started fairly recently I had to push really hard for a couple of days (put in probably 3 extra hours a day for 2 days) but then they gave me a day off after those 2 days and then the rest of the week I basically was given nothing else to do so it was really relaxed. I think the main thing is they recognize the sacrifice and act accordingly to not burn you out.
Re:Want good programmers? Then pay them. by losvedir on Thursday May 03, 2012 @10:33AM (#3923993)
40 hrs a week doesn't necessarily mean 8 hours a day. I think it's a reasonable demand by someone that if they stay late one day putting out a fire they're free to leave early on Friday or something.

It was sort of like this at one of my previous finance jobs where I was expected to work no more than 60 hours a week (due to their allotment towards me of salary + overtime). Sometimes on Friday I'd get to leave a bit after lunch, which was nice. Although that did mean earlier that week was kinda rough...

Re:Want good programmers? Then pay them. by fishtoaster on Thursday May 03, 2012 @11:57AM (#3924372)
I prefer a system like this. At my current company in fact, it's formalized. We work X hours a week, and if you work any more, it goes to vacation. Actually, you work X - 4 hours a week, every week the entire year with no vacation, such that it you actually work X hours every week, you end up with (52 x 4 =) 208 hours of vacation a year.

So, for example, I'm in crunch mode for the next week working X+3 or X+4 hours a day. And then I'm taking a 2.5 week trip to Nepal a month or so afterwards. Crunch time happens, and we can't afford to thumb our nose at it, but this system means that it can never become the norm.

Re:Want good programmers? Then pay them. by Jabbles on Thursday May 03, 2012 @01:16PM (#3924734)
(X/5)+3 I presume?

Your system sounds good. Do you also have the flexibility of working weekends in lieu of weekdays or at home instead of the office?

Re:Want good programmers? Then pay them. by fishtoaster on Thursday May 03, 2012 @01:49PM (#3924888)
Yeah, you can work from home whenever, so long as you're generally in the office for core hours on weekdays, or let people know that you're going to be out. Eg, I wanted to go camping Fri-Sun, so I worked a few hours on the previous weekends.
Re:Want good programmers? Then pay them. by Apreche on Thursday May 03, 2012 @11:19AM (#3924187)
My family and friends are vastly more important to me than any job, period. I work to live. End of story. If I have to sacrifice that most important thing to me in the whole world, then there is no point. I would rather be a homeless bum with the people I care about doing the things I care about than at any job in the universe.
Re:Want good programmers? Then pay them. by elliottcarlson on Thursday May 03, 2012 @12:50PM (#3924606)
And that's awesome - however I would not hire you. I would never expect someone to put their job before their family. Got a son't game to go to - go to it. Gotta pick up the kids from school one day, why are you still in the office? But I would also expect that if a server is down, or a critical bug is preventing the site from working that I could count on someone to help get things working. Not that you said you wouldn't, but the tone in how you said it would give me that impression. I want to work people who care about their job - it doesn't have to be the most important thing in the world, it should however be part of their passion not because they need to think about the company 24/7, but that I know they will give me their best work.
Re:Want good programmers? Then pay them. by devs1010 on Thursday May 03, 2012 @01:02PM (#3924667)
caring about family more than job != not caring about job

I'm not sure how you get that out of what he said, you could conceivably care more about your job than anything BUT your family which is still a lot of caring, IMO

Re:Want good programmers? Then pay them. by elliottcarlson on Thursday May 03, 2012 @01:20PM (#3924752)
I am looking at it from a prospective employer. As I said, it may not be the case, but stating that he would not work more than 40 hours under any circumstances would lead me to believe this and would cause him to not get hired. He could be an excellent worker, gets all his work done on time and be able to leave on time every day of the year - but in the back of my head I am still thinking about that 40 hour limit and will think that I am completely screwed to be able to use his talents when there is a legitimate issue.
Re:Want good programmers? Then pay them. by Apreche on Thursday May 03, 2012 @01:57PM (#3924940)
It's cool that you wouldn't hire me, because I wouldn't want to work for you, even if you did offer all those nice things. I can see it right in that post "use his talents." I am not a resource to be used. I am a person. We have both agreed upon a mutually beneficial agreement, and either of us may leave that agreement at any time. If you want resources to be used, go to the hardware store.
Re:Want good programmers? Then pay them. by paulhauggis on Thursday May 03, 2012 @03:12PM (#3925265)
Just as much employees are resources to run your business, a job is just a means to an end for me. To fund my startup.

Why should it be any different for me than it is for you?

I can't ever get as passionate about working for someone because at the end of the day, I get 1/1000 of the profits and when push comes to shove, will not be able to make many of the decisions that matter.

My free time is worth everything in the world to me. I don't mind doing extra emergency work once-in-awhile. My problem is that at many companies, this is the norm (because they hire kids right out of college that don't know any better) and you are a salaried employee and will not get paid any extra for it.

This is exactly why I keep this a secret from every company I've ever worked for. From their perspective, I'm a great employee.

Re:Want good programmers? Then pay them. by devs1010 on Thursday May 03, 2012 @03:35PM (#3925366)
I think its important to clarify, do you mean 40 hours, on average, or 40 hours in one week? Meaning, do you want him to average more than 40 hours a week? If so, thats definitely a red flag
Re:Want good programmers? Then pay them. by luser001 on Thursday May 03, 2012 @01:23PM (#3924772)
See the subject line of the article. Are you prepared to pay people one way or other (extra vacation days, on-the-spot cash bonus to take family out to a fancy dinner) for stepping up? No? Why not?
Re:Want good programmers? Then pay them. by ntkachov on Thursday May 03, 2012 @09:53AM (#3923832)
I think he meant that if there is a serious crisis he might stay. Sure, every once in a while a tornado sweeps through your data center. That happens once every other year. "We need you to stay till midnight because a very serious VC is coming in and this project needs to be done" is not a crisis.

Serious stuff happens, it does not happen every other week.

Re:Want good programmers? Then pay them. by jshen on Thursday May 03, 2012 @10:20AM (#3923940)
"under no circumstances do I work more than 40 hours a week."

Should we take him at his word or assume that he isn't precise when speaking? Both are bad signs.

Re:Want good programmers? Then pay them. by Avshalom on Thursday May 03, 2012 @11:28AM (#3924235)
Precision isn't accuracy, and pedantic precision isn't super common in casual conversation anyway.

Look I can't speak for the OP, maybe ze would quit the first week ze's expected to work 40hours and 1 minute. Saying "no more than 40 hours, unless a tornado hits the data center; or my close friend and co-worker's mother dies and he asks me to stay a little late to finish some of his paper work; or a bomb will go off killing a dozen orphans if we stop coding" might be more precise, but it's also less accurate because by listing off every one of a billion unlikely situations in which OP might be willing to work over time it creates the impression that 40 hours is a much more flexible limit than it is.

Re:Want good programmers? Then pay them. by jshen on Thursday May 03, 2012 @11:46AM (#3924321)
pedantic precision should be common for a programmer. This is really easy, he could have said, "I will only work overtime in exceptional cases, and those should be very rare." This is what I usually say in interviews.

"under no circumstances will I work overtime" has a very clear meaning.

Re:Want good programmers? Then pay them. by luser001 on Thursday May 03, 2012 @01:26PM (#3924792)
How is this more precise? You said "rare", and the other party heard "rare", but guys never agreed on what "very rare" was. Believe me, people can have very different ideas about what "very rare" means in this context. :)
Re:Want good programmers? Then pay them. by Apreche on Thursday May 03, 2012 @01:59PM (#3924948)
There is probably some circumstance I would work a little extra. Seriously, you want ever comment on every blog to be written like a legal contract or a game rulebook? I wasn't about to devote an entire paragraph covering every possible scenario where I may or may not work more or less hours. You get the idea.
Re:Want good programmers? Then pay them. by luser001 on Thursday May 03, 2012 @02:23PM (#3925043)
Umm, I was supporting your phrasing. :) i.e., that most people get that you will work extra hours when truly required.

And that even a supposedly more precise phrasing suffers from the problem that the listener may not interpret the words the way the speaker intended them to be.

I personally feel that a categorical statement such as yours is less amenable to misunderstanding than a equivocating one. Thanks.

Anyway, we're generating heat rather light in this subthread.

Re:Want good programmers? Then pay them. by jshen on Thursday May 03, 2012 @02:20PM (#3925036)
rather than implying that the people who took you at your word did something wrong, you should admit that you used a poor choice of words.

As I said, you could simply have said, "I will only work OT in exceptional cases, and these cases should be rare". It doesn't take an entire paragraph to get this point across. You get the idea.

Re:Want good programmers? Then pay them. by jshen on Thursday May 03, 2012 @01:51PM (#3924901)
LOL, do you hear yourself?

The OP said "under no circumstances will I work overtime". Someone says that he really meant "i will sometimes do overtime".

I said, "he could have said I will rarely do overtime, only for exceptional cases".

And you claim that this isn't more precise? Did you pass reading comprehension in grade school?

Re:Want good programmers? Then pay them. by xnxn on Thursday May 03, 2012 @02:36PM (#3925112)
Check your tone, please. I can't downvote, but I don't want to see comments like yours on HN.
Re:Want good programmers? Then pay them. by jshen on Thursday May 03, 2012 @04:28PM (#3925632)
You can check my comment history and see that I don't insult people often. However, sometimes when people are being really stupid the correct response is to call them stupid.

Think about what numerous people are arguing here. OP said, "under no circumstances do I work more than 40 hours a week" and a number of people insist that these words mean "sometimes I will work OT", and that it's perfectly clear. That's stupid.

Re:Want good programmers? Then pay them. by luser001 on Thursday May 03, 2012 @02:40PM (#3925124)
Ok, my phrasing was incorrect. I meant to say "how is it precise enough." You get the last word (if you choose to reply to this).
Re:Want good programmers? Then pay them. by jshen on Thursday May 03, 2012 @04:17PM (#3925571)
Gotcha, and I agree with you on that. Like I said in my comment, this is exactly what I say in interviews, and I haven't had a problem with it yet. If I do then I'll find a new job. After a little practice you can get a feel for reading people and companies and you can usually tell if you are on the same page. I also always ask how many hours on average people work per week, or something along those lines.

Also, I absolutely would not tell a company that I want to work for that "under no circumstances" will I work any overtime. Nor will I hire someone that says such a thing.

Re:Want good programmers? Then pay them. by obtu on Thursday May 03, 2012 @11:23AM (#3924201)
I see some ambiguity: this is the contract negociation; the work may be referring to the entire duration of his employment. Exceptional circumstances are exceptional, and he may choose to give up his Friday then.
Re:Want good programmers? Then pay them. by elliottcarlson on Thursday May 03, 2012 @10:27AM (#3923971)
Exactly - I would completely understand someone insisting on a work/life balance - I want it, and I have no problem with people wanting that; but seeing it worded that way is a red flag to me.
Re:Want good programmers? Then pay them. by marklindhout on Thursday May 03, 2012 @10:57AM (#3924103)
His wording is quite accurate if you ask me. At least, I can completely agree with it.

Life is about living, not about working, after all.

Re:Want good programmers? Then pay them. by megablast on Thursday May 03, 2012 @11:36AM (#3924271)
Well you can do plenty of living when lots of businesses do not hire you due to the fact that they realise sometimes stuff needs to get done. We all want to avoid the constantly crisis mode businesses, but you do this by being reasonable.
Re:Want good programmers? Then pay them. by jeffpersonified on Thursday May 03, 2012 @12:27PM (#3924498)
Agreed. If a business is constantly in crisis mode, something else is wrong, and 40-45 hours a week seems like a good goal to shoot.
Re:Want good programmers? Then pay them. by danssig on Thursday May 03, 2012 @10:33AM (#3923995)
He said 40 hours a week, not 8 hours a day. For example, he could end up working 20 hours for two days in a row. Or he could mean as an average. This is what I do. I may put in a 60 hour week, but I'll be taking time off where I can until I get back to a 40 hour average.
Re:Want good programmers? Then pay them. by moocow01 on Thursday May 03, 2012 @09:56AM (#3923847)
I'd rather suggest that we point fingers at an industry and employers that don't pay overtime for such scenarios before pointing fingers at each other.
Re:Want good programmers? Then pay them. by elliottcarlson on Thursday May 03, 2012 @10:30AM (#3923983)
I've grown accustomed to not getting overtime after over 15 years in the industry, and I make sure that my base salary covers a job where occasional overtime is possible. Should it be different - of course - but if you know that you are for example joining a startup, where the hours can be crazy and the expectations are high, then you should account for that. (Oddly enough, I am working less crazy nights at a startup than I did in the agency world).
Re:Want good programmers? Then pay them. by dclowd9901 on Thursday May 03, 2012 @11:39AM (#3924290)
You're kidding yourself if you think you can't pack productivity into 40 hours worth of work a week. Some people have this notion that their job is so important that the work they're doing can't be put off til tomorrow. Certainly, in some seats, emergencies arise, but by and large, you should never have to work more than 40 a week at your 9-5.
Re:Want good programmers? Then pay them. by mynameishere on Thursday May 03, 2012 @08:43PM (#3926486)
Yes. That guy is 100 percent liability.

"I screwed up, but it's 5:00 so I'm going home. Remember my childish contract? So long!"

Re:Want good programmers? Then pay them. by throwaway1979 on Thursday May 03, 2012 @08:47AM (#3923587)
I'm really glad you mentioned "cute little puzzles". I am sick of them. I'm not really sure who has sufficient time to spend blazing the employer with feats of their programming prowess (I was going to say only undergrads would do that - however, many undergrads in top programs have little time to bathe).

If this was big companies being stupid, I'd get it. The HN crowd ... some of the smartest hackers around do little better sometimes. I was very interested in Stripe after hearing some of their folks speak (I don't mean to single them out ... they are a pretty amazing bunch from what I've seen) and saw the cute puzzles (https://stripe.com/jobs#engineer) as a listed way of impressing them. I immediately hit the back button and decided not to apply there. Perhaps it means we would not have been a good fit. Or perhaps, we need more respect in the recruiting process. I understand the need for fiz-buzz tests and all ... but things have gone a bit too far.

Re:Want good programmers? Then pay them. by mseebach on Thursday May 03, 2012 @10:05AM (#3923881)
If a recruiter goes after you, and didn't bother to Google your name and look at your GitHub/OS contributions etc. he's obviously cold calling and wasting your time. He's the guy who asks DHH how much Rails experience he's got.

But, on the other hand, if you apply to a company, especially one that's more or less famous, puzzles are a very good way of separating the wheat from the chaff on a level playing field. Evaluating a strangers performance based on their solution to a common puzzle is very time efficient and allows the company to process large numbers of applicants fairly.

A common notion here is that great people can just pick up the phone, or will be actively courted by companies, so they don't need puzzles and recruiters. That is great for them (honestly, not a snark), but it's not scalable: Not everyone can know everyone, and there has to be a way for newcomers to enter into the network.

Case in point: Stripe - you want to work for them, but apparently you don't know anyone on the inside that can recommend you. And apparently you're not on their radar already. They do great stuff, they seem like an amazing bunch - so there are likely to be hundreds who want to work for them - and most of them, regrettably, are not qualified enough.

Do you really think it's fair to require Stripe to assign a member of their engineering team (that means you after they hire you) to review every strangers GitHub accounts, when you refuse to invest even a little time in signalling to them that you're the real deal (the puzzles aren't all multi-day endeavours)?

Re:Want good programmers? Then pay them. by luser001 on Thursday May 03, 2012 @01:30PM (#3924812)
> Do you really think it's fair to require Stripe to assign a member of their engineering team (that means you after they hire you) to review every strangers GitHub accounts, when you refuse to invest even a little time in signalling to them that you're the real deal (the puzzles aren't all multi-day endeavours)?

Yes.

Re:Want good programmers? Then pay them. by ericd on Thursday May 03, 2012 @07:41PM (#3926334)
Then you're being unrealistic, because the expected value of a random applicant's ability is not that high.
Re:Want good programmers? Then pay them. by weavejester on Friday May 04, 2012 @11:47AM (#3928898)
But it works the other way around, too. The expected value of a random company is not that high unless the candidate considers themselves to have a good chance of success. Given how opaque the hiring process is from the point of view of an applicant, how do they know if it's worth spending their time solving a random puzzle?

Investing time in open source software is a better use of time from the point of view of a candidate, as they can show the same code to many different companies.

So it comes down to who is more in demand. Is your company so desirable that good programmers will invest a significant chunk of time just to have a chance with you? If the answer isn't an automatic 'Yes', maybe you should rethink your hiring strategy.

It also doesn't seem particularly hard to automatically filter out candidates with no GitHub account, or a GitHub account but few contributions.

Re:Want good programmers? Then pay them. by ericd on Friday May 04, 2012 @06:21PM (#3930592)
Sure, I didn't say anything about that, but in this scenario it's implied that you're applying to this company, so presumably you know something about it and like it. You likely know a lot more about the company than it knows about you.

The Github filter is a bad one, though - lots of good programmers don't do the whole open source thing, and we need to stop this pretense of a good Github account being necessary for hiring. What started as a suggestion in some hiring blog posts has become overblown into dogma now.

Re:Want good programmers? Then pay them. by weavejester on Friday May 04, 2012 @10:21PM (#3931154)
At some point an employer needs to see code that a candidate has written, so unless the candidate wants to write code specifically for each company they send a resume to, maintaining some open source software is surely the most efficient mechanism to do that.

Artists maintain a portfolio of their work; why shouldn't programmers?

Re:Want good programmers? Then pay them. by ashray on Saturday May 05, 2012 @04:40PM (#3933216)
Artists don't usually have to show what brushes or paints they used to make a particular work.

Sometimes it's best to evaluate the work rather than what goes into it. Granted, this isn't always the case and can't be attributed to multi team environments, but I've often been asked for code when I have a large number of (successful) projects solely developed by me.

Also, small code samples are fine but some employers are in the habit of asking for major work (demos) just to show off your coding chops. That's bad.

Re:Want good programmers? Then pay them. by weavejester on Saturday May 05, 2012 @10:05PM (#3933906)
That's because it usually doesn't matter how an artist creates a piece of work, as long as their methods are not too idiosyncratic; what matters is the end result.

For a developer, the how matters as much, or even more so than the result. You could create a complete mess that still manages to just about work, and it wouldn't be obvious from a cursory execution of the binary just how bad it was.

Ideally, if I was going to hire someone, I'd want to know how they develop a reasonably-sized project. An interview or puzzle can give me some idea, but a GitHub account is far superior because it would show me how they work over a longer time frame, and perhaps with other people. I honestly can't think of anything that comes close to demonstrating skill.

Re:Want good programmers? Then pay them. by ashray on Sunday May 06, 2012 @04:16PM (#3936180)
I understand the urge to minimize risk as much as possible. However, the truth is that in any field whether it's business development, sales, marketing, etc. what you do see most often is the person's track record and not how they actually went about doing things.

So the fact that you can actually see more for a programmer is actually a bonus, but that doesn't mean it should be abused like plenty of companies try and do these days.

Risk aversion is fine, and obviously you want to hire the best candidate but like mentioned elsewhere on this thread:

1. Not everyone has public github projects and I hardly believe anyone should have to work on open source stuff just to show off their coding skills.. Thats really not the right reason to work on open source stuff.

2. For web projects while you might not have access to backend code you can always look at the front end and see if the guy is any good. This is especially true for me considering the fact that I have multiple projects developed from start to finish live and available on the Internet.

Again, small demos or code sample requests are always fine. However, an entire project to get a job somewhere ? Might have been okay when I had nothing to show for it, but after a bit of experience on your resume, it gets old..

Re:Want good programmers? Then pay them. by eli_gottlieb on Thursday May 03, 2012 @05:18PM (#3925867)
Do you really think it's fair to require Stripe to assign a member of their engineering team (that means you after they hire you) to review every strangers GitHub accounts, when you refuse to invest even a little time in signalling to them that you're the real deal (the puzzles aren't all multi-day endeavours)?

There's no such thing as fairness in the job market. If Stripe can't find enough programmers to fill their needs, then yes, they need to allocate their own labor to recruiting. At some point, the business cycle will swing the other way, and it will become necessary for programmers to put our time into hunting for companies who want to hire even one programmer.

C'est la vie.

Re:Want good programmers? Then pay them. by mseebach on Friday May 04, 2012 @05:49AM (#3927719)
> If Stripe can't find enough programmers to fill their needs...

... then allocating the programmers they have to sifting through a completely open "jobs" mailbox is still probably not a good idea.

> At some point, the business cycle will swing the other way, and it will become necessary for programmers to put our time into hunting for companies who want to hire even one programmer.

For the level of programmer competence we're talking about here, that hasn't happened yet.

Re:Want good programmers? Then pay them. by eli_gottlieb on Friday May 04, 2012 @10:56AM (#3928655)
For the level of programmer competence we're talking about here, that hasn't happened yet.

Define that level non-tautologically then, please.

Re:Want good programmers? Then pay them. by switz on Thursday May 03, 2012 @10:15AM (#3923916)
I agree with you that cute puzzles are annoying and unnecessary, but if you look at the puzzles Stripe has on that page, you'll see that they are anything but cute puzzles. Something like the CTF that they built is an awesome and fun way to see if a developer has the chops to run with the big dogs. These are cool real-world problems. They're not sitting you down in front of a whiteboard and forcing you to complete esoteric puzzles in a limited amount of time, yet they're giving you a few different ideas as to how to impress them. You have all the time in the world and it's up to you to prove it. Stripe, to me, seems like an amazing company with some of the best talent out there. Just my two cents.
Re:Want good programmers? Then pay them. by randomdata on Thursday May 03, 2012 @10:53AM (#3924077)
They are boring though. If I have to take a programming test, I'd rather take that time build a real feature onto your product, even if for free. If you like the results, at least I've created real value for my time, not just played a silly game. There's a risk that you won't like the results and it will be thrown away, but that's a reasonable gamble.
Re:Want good programmers? Then pay them. by Evernoob on Thursday May 03, 2012 @11:26AM (#3924229)
No way. I'm not going to do free work for your company to make money off in the hopes that you'll give me a job later.
Re:Want good programmers? Then pay them. by randomdata on Thursday May 03, 2012 @11:50AM (#3924341)
What if you did the work for free, but the company would have to pay you for your work if they liked the results, even if they ultimately did not hire you?

Wouldn't that still be better than working on some contrived game that has no real-world relevance for free?

Re:Want good programmers? Then pay them. by infinite8s on Thursday May 03, 2012 @02:03PM (#3924966)
Then you aren't really working for free. More like on contract.
Re:Want good programmers? Then pay them. by randomdata on Thursday May 03, 2012 @02:10PM (#3925002)
But that would only be true if they decide to use the results. Otherwise, it's just another contrived quiz with no real-world merit. The worst case is remains the same as the status quo, but the better case is that you'll be paid for your time in the interview.

It still seems like a positive step. No quizzes at all seems like an even better way, but I did qualify the point with the assumption that the quiz would happen regardless.

Re:Want good programmers? Then pay them. by jroll on Thursday May 03, 2012 @11:32AM (#3924250)
This is how we hire, and I think it's great. Both sides get to see if it's a good fit, we see how you work and if you have a product sense. You get to see if you like our product and company culture. Win-win.
Re:Want good programmers? Then pay them. by msg on Thursday May 03, 2012 @11:24AM (#3924208)
I think some of the ITA programming puzzles (for instance) are fun on their own merits.

Not to get too meta, but what if the company essentially buys your argument? "Yes, this is a non-real world problem for entertainment purposes only..."

But they want to find programmers who find such problems entertaining.

Re:Want good programmers? Then pay them. by kamaal on Thursday May 03, 2012 @01:34PM (#3924826)
Filtering only goes so far. If you rely on these tactics instead of asking the actual questions. You will very soon end up hiring people who know nothing about the real world, but would have memorized tons of interview trivia.

The problem with puzzles is just that. You ask questions and hire candidates based on issues that have nothing related to the job. The end result is you up hiring the wrong people and then say you can't find good programmers.

You can't find good programmers because you are not asking questions meant to hire good programmers. You wanted puzzle experts and that is what you got.

Re:Want good programmers? Then pay them. by msg on Thursday May 03, 2012 @07:09PM (#3926248)
Maybe we are talking past each other. This is the page I was thinking of:

http://itasoftware.com/careers/work-at-ita/hiring-puzzles.ht...

These aren't classic Microsoft "puzzle questions". They are programming challenges that say a lot about your approach to programs and problems. In particular, all of them ask you to make tradeoffs between correctness and performance.

They are cool enough to attract engineers, hard enough to discourage the idly curious, and unique enough that no published solution exists. That's why I said that someone who does this kind of puzzle for the sheer enjoyment of it might be exactly what a high-level software shop is looking for.

Would I want a "puzzle expert" who could solve the problems on ITA's page? Hell yes.

Re:Want good programmers? Then pay them. by anurag on Thursday May 03, 2012 @02:44PM (#3925141)
As others here have mentioned, the questions on the jobs page are explicitly designed to not be cute puzzles. If you don't have a Github profile or other code samples, these questions help us get a sense of how you think about programming. But they're also entirely optional - we should perhaps make this clearer. We'd love to hear from you if you're still interested in Stripe.
Re:Want good programmers? Then pay them. by horsehead on Thursday May 03, 2012 @11:37AM (#3924278)
Maybe I'm just incredibly naive, but are fizzbuzz tests really that necessary? I have a hard time believing anybody could get an interview, let alone graduate with a BS in compsci, without being able to do something THAT simple ....
Re:Want good programmers? Then pay them. by ajepst on Thursday May 03, 2012 @12:46PM (#3924589)
Yes, they are necessary. I've seen "senior" people bomb on it. There's a segment of "developers" that are good at selling themselves as programmers, manipulating the interviewer so you talk yourself into thinking they are awesome. You've probably met some of these types at conferences, and think they'd be a worthwhile hire. But stick a simple programming problem in front of them, and they can't back it up. if you're not that great at spotting these people, they can slip by the average interviewer without something concrete like a FizzBuzz to show they can back up their talk. And once they make it into your organization, if you don't catch them early, they can be extremely destructive.
Re:Want good programmers? Then pay them. by masterzora on Thursday May 03, 2012 @12:13PM (#3924433)
Yes, yes they are. I don't even see all of the resumes submitted to my company since they are filtered through the recruiters and our HR guy but the ones I do see still need a fizzbuzz test more often than not.

Granted, it is not a thing you should give everyone. I can usually tell when I look at a resume that such a thing is likely to be pretty pointless (It points me to a github account I can look at instead? Why bother? The resume is clearly written by someone who knows what they're talking about and isn't stuffing everything they've ever done onto a page in a game of buzzword bingo? Probably safe.) so I don't give fizzbuzz tests to everyone but sometimes you have to be sure.

Re:Want good programmers? Then pay them. by horsehead on Thursday May 03, 2012 @12:42PM (#3924571)
While this is a little disappointing in that it speaks to the quality (or lack thereof) of developers coming out of college, or elsewhere, it is also really encouraging too! the fizzbuzz problem is actually incredibly simple and I was able to write code out by hand that worked in my python interpreter.

Hopefully I'll have some good github stuff to point potential employers to soon (i'm working on some things now). But at least I know that I should be able to pass some of the incompetency gauges fairly easily!

also, i've never heard of buzzword bingo before, but it sounds interesting! maybe i'll make a program for buzzword bingo. You can use it in your interviews! :P

Re:Want good programmers? Then pay them. by infinite8s on Thursday May 03, 2012 @02:06PM (#3924976)
Well, not to burst your bubble, but fizzbuzz is a negative filter (ie passing it is the minimum needed to even be considered for a dev job).
Re:Want good programmers? Then pay them. by getsat on Thursday May 03, 2012 @10:16PM (#3926708)
Congratulations. You're better than 50% of the programmers I interview. Want a job in SF?
Re:Want good programmers? Then pay them. by kstenerud on Thursday May 03, 2012 @02:56PM (#3925194)
You'd be surprised...

But actually, fizzbuzz is just the bottom level. You also want to do basic coding exercises for whatever specific area you are hiring for, such as:

- Set up an extremely basic web app that lets the user enter a name and echoes it back to them.

- Make a sprite move across the screen.

- Display a 3d cube with different colors on each side and make it rotate.

- Make it play some music.

- Aggregate the data in this simple database.

- Here's some naive producer-consumer code. Make it thread-safe.

- Debug this code that has memory issues.

- Critique this (flawed) design.

- Update the CSS to make this page look nicer.

Basically, you never want to get into a situation where you've hired someone who has managed to talk his way through life. It's far less headache to just use a few sanity checks on every potential hire.

Re:Want good programmers? Then pay them. by kragen on Thursday May 03, 2012 @05:29PM (#3925916)
I wonder if there's a harder equivalent to FizzBuzz — one that doesn't take any longer to explain or do, but requires a much higher level of skill to pass. One we used at http://airwave.com/ was "Write a Perl subroutine to determine whether a string is a valid dotted-quad IP address," which is something you can do in various reasonable ways in one to five lines of code.
Re:Want good programmers? Then pay them. by Natsu on Saturday May 05, 2012 @01:39AM (#3931454)
Is that really so much harder? Somehow, I expect you'd get a lot of opaque regexes like:

  sub isIP {
    return (shift =~ m/^((\d{1,2}|1\d{2}|2[0-4]\d|25[0-5])\.){3}(\d{1,2}|1\d{2}|2[0-4]\d|25[0-5])$/)? 1 : 0;
  }
Re:Want good programmers? Then pay them. by kragen on Sunday May 06, 2012 @01:15PM (#3935608)
I think we did get someone solving it that way once, and modulo Unicode, it's arguably a reasonable solution. But there are other one-line solutions that are more transparent.

The Stanford CS Ph.D. candidate whose solution included a Perl function for converting decimal numbers of up to three digits to binary was rejected.

Re:Want good programmers? Then pay them. by kragen on Tuesday May 08, 2012 @03:22PM (#3945378)
I failed to note in my earlier comment that yes, it is so much harder. Fizzbuzz requires that you write a loop, print some strings, and either maintain a couple of counters or use the modulo operator. Your solution requires:

- writing a subroutine

- understanding Perl parameter passing

- understanding Perl regexps, including =~, anchoring, alternatives, metacharacter escaping, character classes, and repeat counts;

- the ternary operator.

And then you could probe things like:

- Do they know how to fix the bug in your version where it incorrectly accepts an IP address with a newline appended to it?

- Do they know it would still work without the return and the ?1:0?

- Can they figure out that they could simplify and clarify the code substantially with qr?

- Do they understand why someone might prefer a non-regexp-based approach? :)

Re:Want good programmers? Then pay them. by mseebach on Friday May 04, 2012 @06:21AM (#3927786)
There are plenty, and yours is a good example of one. In fact I think actual FizzBuzz is not used much in the wild any more as it's too well known and thus drillable.
Re:Want good programmers? Then pay them. by matwood on Thursday May 03, 2012 @02:17PM (#3925027)
You have clearly never had to interview people. Fizzbuzz is super basic and that's the point. It quickly separates the person who was around when programming happened and someone that actually did the programming.
Re:Want good programmers? Then pay them. by georgieporgie on Thursday May 03, 2012 @01:17PM (#3924736)
I interviewed a 'senior' developer who had been a consultant for several years. When we asked how he implemented past projects, his answers were really vague. We got suspicious and dropped down to a simple problem like, "write a loop to print the numbers from one to ten."

The guy was writing some really weird stuff. When asked to explain, he confidently told us that in C++, every time you reference the iterator variable inside the loop, it gets increased. His solution was something like:

    for (int i = 1; i <= 10; i++)
    {
        printf("%d\n", i);   // <== i gets incremented!
        i--;  // need to compensate for the extra increment!
    }
(except I'm pretty sure he didn't get printf right)

So, yeah, I see FizzBuzz as a wonderful way to weed out the incompetent right away, allowing you to focus on deciding whether you need capable or exceptional.

Incidentally, one of the guys on my senior project team in college didn't understand how variable assignment worked. He would write:

    int flagsVar = COMMON_BASE_FLAGS;
    flagsVar = ADDITIONAL_FLAG_I_WANT;
    CallAPI(flagsVar);  // Why doesn't it work?!
He graduated.
Re:Want good programmers? Then pay them. by tatsuke95 on Thursday May 03, 2012 @12:55PM (#3924631)
>"Six figures, 30 vacation days, full benefits, infinite sick days, convince me that you won't be out of business in any short span of time and you won't bounce a check. Also, under no circumstances do I work more than 40 hours a week."

There was a time, after the crash of 2000, when programmers actually had a difficult time finding work. It doesn't matter what the career, training or job, this stuff goes in cycles, always.

You're at the the top of the cycle now; there's a gap in the supply/demand for good coders. It's a great time to be a programmer. But the invisible hand of the economy has a way of sorting these things out.

>"The fact is you need me more than I need you."

This won't always be the case. Keep that in mind.

Re:Want good programmers? Then pay them. by matwood on Thursday May 03, 2012 @01:09PM (#3924700)
All the more reason to get the most of what you can out of the inequality before the cycle swings back the other way.
Re:Want good programmers? Then pay them. by intractable on Friday May 04, 2012 @02:15AM (#3927298)
Absolutely. After all, that is what most employers will do when the pendulum swings their way.
Re:Want good programmers? Then pay them. by kalininalex on Thursday May 03, 2012 @04:21PM (#3925595)
Great observation. It's very easy to forget after a year or so of good times that bad times ever happened. Yet, this too shall pass. The key component of my philosophy is to always provide more value than paid for, be it 10 days of vacation, or 30. This will create consistent demand for one's services negating the impact of economic cycles.
Re:Want good programmers? Then pay them. by dr_ on Thursday May 03, 2012 @10:10AM (#3923897)
Doctors don't have infinite sick days, many don't have 30 vacation days (I barely take a week off a year), and most don't have 40 hr work weeks.
Re:Want good programmers? Then pay them. by rmc on Thursday May 03, 2012 @10:56AM (#3924096)
Yeah no-where on earth are there 30 holiday days per year and 40 hour maximum. No-one works that.

Except several EU countries which have that as the legal minimum…

(e.g. France: 35 hr legal working week, 25 days holidays and ~ 13 paid public holidays per year)

Re:Want good programmers? Then pay them. by danieldk on Thursday May 03, 2012 @01:19PM (#3924746)
I'm in The Netherlands, have a 40 hour work week, more than 30 days of paid leave, plus extra days when I move/marry/etc. It's pretty common in Western Europe.

And it's not as if we have less welfare, healthcare, worse education, low productivity, or an instable economy. In fact, in pretty much all rankings Western European countries are doing fine.

Unfortunately, government policies that make such thinks possible are called 'socialist' on the other side of the pond.

Re:Want good programmers? Then pay them. by rmc on Thursday May 03, 2012 @03:20PM (#3925300)
Unfortunately, government policies that make such thinks possible are called 'socialist' on the other side of the pond.

They are called 'Socialist' here (EU) aswell.

* The 2nd largest political party in the European Parliament is.... "Progressive Alliance of Socialists and Democrats".

* The UK Labour Party (many times in government) has a footer to "Affiliated socialist societies" in it's homepage ( http://www.labour.org.uk/home ) (Though it's not really viewed as socialist party in UK as much now that it's "New Labour").

* The "Core Party Principles" of the Irish Labour Party (which is in government) starts with: "The four principles on which Socialism is based are …" ( http://www.labour.ie/principles/ )

The difference is that "socialist" isn't a dirty word in European countries.

Re:Want good programmers? Then pay them. by danssig on Thursday May 03, 2012 @11:17AM (#3924179)
Most of western Europe, if not all, gets at least 4 weeks vacation. 40 hours is a bit more demanding but 42 is pretty common.
Re:Want good programmers? Then pay them. by rmc on Thursday May 03, 2012 @11:27AM (#3924232)
All of the EU gets 4 weeks. It's called the European Working Time Directive. That'd give you 20 days paid annual leave. Some member states have higher. (I think) all member states have paid public holidays aswell.

All of the EU gets 48 hours maximum working time per week, that's the European Working Time Directive again. The UK has a sort of an opt-out to it. Some member states have a lower maximum.

Fun Fact: I'm from Ireland (20 days holidays per year). Talked to some Germans, and they were shocked I could get by on 20 (they got 30).

Re:Want good programmers? Then pay them. by zbuc on Thursday May 03, 2012 @04:07PM (#3925503)
I have 10 in the US. You lucky bastard.
Re:Want good programmers? Then pay them. by stusmith1977 on Friday May 04, 2012 @09:13AM (#3928201)
UK here: 35 hr week (which I generally stick to), 28 days holiday (rising to 30 in a couple of years, plus I usually buy 5 extra, plus public holidays).

What's interesting is I work for a large multi-national (listed on NYSE and TSX) - local expectations override the rest of their US-centric culture.

Re:Want good programmers? Then pay them. by ricardobeat on Friday May 04, 2012 @01:45AM (#3927215)
Brazil: 44h, 30 days PTO, ~12 public holidays, 13th salary (yeah...). If you're not working as a contractor, that is, which is way too common in the IT field.
Re:Want good programmers? Then pay them. by iangm on Friday May 04, 2012 @10:02AM (#3928374)
It's not really 30 days PTO, isn't it? It's "30 consecutive days", which might even include holidays/weekends. And you don't have much flexibility on taking them. Also, it's not uncommon to have 40h agreements.
Re:Want good programmers? Then pay them. by ricardobeat on Friday May 04, 2012 @01:49PM (#3929500)
In Brazil you get paid monthly, not weekly, so weekends are part of the math. 30 weekdays would make it 42 consecutive days vacation - now that would be awesome.
Re:Want good programmers? Then pay them. by nickik on Thursday May 03, 2012 @11:43AM (#3924310)
Funny how people allready say EU countries instead of countries in Europe.
Re:Want good programmers? Then pay them. by weavejester on Thursday May 03, 2012 @11:55AM (#3924363)
Why is it funny? Not all countries in Europe are in the EU.
Re:Want good programmers? Then pay them. by rmc on Thursday May 03, 2012 @12:24PM (#3924486)
(And slightly funny enough, not all of the EU is in Europe. French Guiana is in part of France and the EU and borders Brazil http://en.wikipedia.org/wiki/French_Guiana)
Re:Want good programmers? Then pay them. by Apreche on Thursday May 03, 2012 @11:23AM (#3924203)
I didn't say treat me the way a hospital treats a doctor. I said you treat me as if I'm a doctor and you are a pharmaceutical sales rep.
Re:Want good programmers? Then pay them. by shazow on Thursday May 03, 2012 @11:41AM (#3924301)
Or, treat me like I'm an investor (which I am) and you're a startup (which you are).
Re:Want good programmers? Then pay them. by stephencanon on Thursday May 03, 2012 @11:21AM (#3924195)
However, median compensation for really good doctors is vastly higher than median compensation for really good developers (in the US, anyway).
Re:Want good programmers? Then pay them. by freehunter on Thursday May 03, 2012 @12:43PM (#3924573)
And really good doctors have really high bills to pay, as well. Not many developers need 8 years of the best schooling (one could make the argument that really good developers don't need any schooling, although it helps).

Your point still stands, but student loans from med school are nothing to brush aside.

Re:Want good programmers? Then pay them. by WimLeers on Thursday May 03, 2012 @03:02PM (#3925224)
That's not a universal truth. Studying medicine in Europe is not significantly more expensive than studying history, CS or whatnot.

E.g., in Belgium, any year spent studying at college- or university-level costs €550 (±$720), plus the cost of the books. If your parents earn less than a middle class income, you pay significantly less.

The major difference that does hold true everywhere, is the fact that doctors start earning a salary much later.

Re:Want good programmers? Then pay them. by stephencanon on Thursday May 03, 2012 @01:36PM (#3924836)
For really good specialists, student loans from med school are forgiven after 10 years of practice in academic medicine (which your residency counts towards), and often paid off for you if you go into private practice.
Re:Want good programmers? Then pay them. by acidhax on Thursday May 03, 2012 @10:36AM (#3924008)
Yeah, well, developers aren't given a giant book on solutions either.

Oh, I see, you're having an issue where you're executing 10,000 queries. Let me just open up this book and copy/paste the solution to you.

Re:Want good programmers? Then pay them. by jedberg on Thursday May 03, 2012 @10:51AM (#3924071)
#1 Neither are doctors.

#2 Yes you are. It's called StackOverflow and a million other sites on the internet where you can google for an answer to your question.

Re:Want good programmers? Then pay them. by devs1010 on Thursday May 03, 2012 @01:15PM (#3924726)
I have a relative who is a doctor in an ER and they are essentially an independent contractor (not on a W2), they don't really get any sick days, per se, they are paid for what they work (at a very high rate, or I think a share of the income for that month for their department, something like that) but they have to manage it as a business, essentially (own health insurance, etc), I think its different for some as they may be an employee (like for Kaiser) but a lot are contractors.
Re:Want good programmers? Then pay them. by adpirz on Thursday May 03, 2012 @09:03AM (#3923637)
So, I'm outting myself as outsider here but:

In five sentences or less, could you describe how you got to be the programmer you are today? I.e., skilled enough to be commanding the kinds of benefits you do? It's mostly out of curiosity, I'm not looking to get directly involved with programming.

Re:Want good programmers? Then pay them. by Apreche on Thursday May 03, 2012 @11:34AM (#3924258)
I have been programming since Kindergarten. I can program in any language. I also have the skills of a systems administrator, PC repairman, etc. I can do almost anything you need to do with computers, except setup email servers (screw you postfix!)

Also, don't assume that what I am demanding from recruiters is what I am currently receiving. Just because I ask for 30 vacation days doesn't mean I currently have 30 vacation days.

Re:Want good programmers? Then pay them. by endtime on Thursday May 03, 2012 @07:15PM (#3926260)
>I can program in any language.

Maybe it's just me, but if you actually think this is relevant/interesting then I can't help doubting your credibility.

Re:Want good programmers? Then pay them. by mikecaron on Thursday May 03, 2012 @09:21AM (#3923694)
Yeah, to command six figures, you've either many years (10+) of experience under your belt, a masters + experience or you're applying in NYC or LA/SF where cost of living is astronomical. In the midwest, you'd be hard pressed to find a starting salary at 6-figures except at the very bottom of that 6-fig range.
Re:Want good programmers? Then pay them. by malandrew on Thursday May 03, 2012 @09:44AM (#3923798)
You shouldn't get paid based on your cost of living. You should get paid on value added.

TBH, I don't see why living in the midwest should drop the salary a company owes you that much. If you are a good developer, you should command a salary comparable to the value you add plus a profit margin for the business.

The only two explanations I can see is that, collectively, software engineers in the midwest are simply not negotiating for the salaries they deserve because given the cost of living they don't feel like they have to negotiate for better or that they are on average of much lower quality in the midwest that there is no room in the salary range there for being an outlier commanding a salary outside that range (i.e. no room for a unicorn in a stable full of horses).

If I worked remotely from Timbuktu, I would laugh at any employer that offered me less based on the cost of living in Timbuktu. It should be no different working in the midwest. Our world is flat.

Re:Want good programmers? Then pay them. by bmelton on Thursday May 03, 2012 @09:55AM (#3923841)
You aren't actually paid based on cost of living, per se, but as that factors in so heavily, it can swing the value proportionally.

If I move back to Memphis, TN, I can make approximately half of what I make now in the DC area to live as comfortably as I do. Does that mean I'm worth half as much? No. Does it mean I should expect to make half as much? Pretty much, yeah.

Beyond meeting my basic needs (rent, food, whatever) then it's just a matter of how much expendable income does that salary leave me. I don't know if 'percentage of salary' is the best way to measure it, but it factors in.

Paying me 'market rate' in a place where a 3 bedroom 3 bath house can be had for $150k is a vastly different proposal when that same house is $450k in a different place. That is the 'cost-of-living' difference. Sure, I might add the same x amount of dollars of value to the company in both locations, but if I can't live comfortably in my market, then it doesn't matter.

Note, this argument ignores the competitiveness of the markets as well. There are naturally more potential developers in silicon valley than there are in Bumfuck, Nowhere. Supply and demand does factor here.

Lastly, except in situations of outsourcing, you're generally not paid based on where YOU are, but based on where the company (or the location you report to) is. If you're working remotely from Timbuktu while reporting to an office in Silicon Valley, you should expect SV (or near-to) rates. If you're telecommuting to the midwest, you should expect midwest pay.

The big difference there is in what it costs to replace you. If you're Linus Torvalds, that cost probably goes way up. If you're like most of us, that cost is probably a close approximation to 'whatever they can hire a local developer for', assuming there are local developers in the area with the skills you possess.

Re:Want good programmers? Then pay them. by skerrit_bwoy on Thursday May 03, 2012 @12:51PM (#3924618)
WHY DO PROGRAMMERS THINK LIKE THIS?

A radiologist makes $350k whether he's in Manhattan or Memphis. A hedge fund analyst makes comparable, whether he's in LA or Louisville. A BIGLAWyer makes comparable, whether he's in Chicago or Charlestown. They are paid for the value of services rendered, and the doctors, bankers, and lawyers I know seem perfectly content to maximize their income while minimizing their expenses. Only the programmers seem interested in making as little money as possible.

Put differently: a radiologist thinks about moving from Manhattan to Memphis and says "Boy, that $350k will let me live like a king down there!" Meanwhile, a programmer says "Boy, I only have to make $75k down there to live like I'm living up here for $150k!"

/facepalm

Re:Want good programmers? Then pay them. by bmelton on Thursday May 03, 2012 @01:02PM (#3924662)
I don't think that's true at all, actually.

I just did some (admittedly) anecdotal job searches for radiology, and there's a $150k price difference between New York and Indiana.

I knew a few attorneys that have moved into the DC area to raise their rates (and one who commutes two hours in to DC because otherwise, his billable rate is halved.)

The positions people are paid also depend on the cost of living in the area. If the median income for an area is $28k vs. $50k, they're simply not able to afford legal services that cost twice the market. This might mean that lawyers in rural areas only work half as much at the same rate, but that means that without some clever accounting, their yearly income is still (approximately) halved.

I'm not saying that no such positions exist, but I know that doctors, lawyers and the like ARE subject to cost of living variance. I don't know of any position in any field that isn't at least somewhat affected by the median income of the municipality in which they operate.

Re:Want good programmers? Then pay them. by skerrit_bwoy on Thursday May 03, 2012 @01:24PM (#3924783)
You've got it exactly twisted about docs, read this for clarity: http://www.medscape.com/features/slideshow/compensation/2012...

Choice quote: "As in Medscape's 2011 survey, the highest-earning physicians practice in the North Central region, comprising Iowa, Missouri, Kansas, Nebraska, and South and North Dakota; the mean income of physicians there is $234,000. The next-highest earners were doctors in the Great Lakes region ($228,000). Physicians in the Northeast earned the least, at a mean of $204,000."

As for attorneys, I said BIGLAW. Not "get local joe bob out of jail." (But law does have a bifurcated career path, i.e. T14 or bust these days.)

I note your silence about hedge fund analysts.

Here are the people who are paid in accordance with COL: labor. Programmers seem to think of themselves as laborers, despite having the intellectual caliber to be professionals. Or maybe I am overestimating my tribe. Perhaps we just anemic right hemispheres in our brain, leading to savant-like abilities in the left, leading to the warm embrace of pathetic compensation.

Re:Want good programmers? Then pay them. by kamaal on Thursday May 03, 2012 @01:49PM (#3924891)
>>Programmers seem to think of themselves as laborers

Worse than that in fact. Never heard of any labor union that would be OK with workers putting in extra hours without overtime pay.

Re:Want good programmers? Then pay them. by bmelton on Thursday May 03, 2012 @03:13PM (#3925268)
First, let me start off by clarifying that I didn't imply that pay should be based on cost of living. Rather, that I believe it's more market forces at work, but that cost of living plays a huge factor in that.

From the article you linked, that statement is reinforced:

"There's less competition among physicians in smaller communities and rural areas," says Bohannon. "There isn't that same downward pressure on reimbursement that you have in metropolitan areas. Generally, smaller communities have to pay more to attract physicians."

This is the market at work. It doesn't matter what the cost of living is in those areas, what matters is the demand for the position.

I also can't ignore that that study is done against 'regions' so large that the cost of living within any of those regions probably swings wide in both directions. This is to say that a doctor in the "Northeast region" could either be in NYC, or way up in the Aidirondacks. Both New York state, both factoring into the ranges on the study, but huge differences in CoL. If you have something more specific, I'm happy to be proven wrong, but in my experience, I don't have anything to refute it.

Regarding BIGLaw, I wasn't referring to ambulance chasers either, but I concede that I don't personally know of any biglaw attorneys that have jumped locality. I also don't know anybody in hedge fund analysts, nor do I know anything about the job market.

Re:Want good programmers? Then pay them. by eli_gottlieb on Thursday May 03, 2012 @01:07PM (#3924693)
Most of the software companies in Memphis are probably selling to relatively local customers, thus tying their income to the local markets. The software companies selling to everyone everywhere are in the big tech hubs.
Re:Want good programmers? Then pay them. by bmelton on Friday May 04, 2012 @08:29AM (#3928063)
You're probably not terribly wrong there if you're specifically speaking about software companies, but the largest employers in the area are multi-nationals.

FedEx is headquartered in Memphis, as is International Paper, AutoZone, etc.

Of course, they aren't exactly software companies.

Re:Want good programmers? Then pay them. by phamilton on Thursday May 03, 2012 @10:57AM (#3924101)
Your salary, by its very nature must be less than "value added", and more than "cost of living".

Anything within that range fulfills the minimum requirements of both parties.

The incentive to negotiate is based upon proximity to those limits. An engineer who barely makes enough to get by (like one making 90k with a family of 4 in the bay area) has greater incentive to negotiate than one making enough (65k in Boise, ID where a 3 bedroom house is 150k) in a less expensive area.

In more expensive areas, overhead increases. $6k/month for a office in Palo Alto reduces "value added" for an employee significantly. Electricity costs almost double in CA than in Idaho. These and other factors affect the value added. (This doesn't factor in so much when you work remotely).

I'm not going to get into supply and demand too much, but another big reason they pay less is because they can. Because very few employees are irreplaceable. Leaving a crappy 3 bedroom apartment in the bay area and moving to Idaho and buying a house in exchange for a 30% pay cut isn't a bad deal.

Re:Want good programmers? Then pay them. by unreal37 on Thursday May 03, 2012 @10:02AM (#3923863)
That's an overly simplistic way to look at it.

There's a reason jobs in Timbuktu don't pay the same as jobs in NYC for any job type - all jobs from janitor to CEO. This is not unique to IT. You have to start by paying people a FAIR wage to cover their living expenses, and it goes up from there based on skills and experience.

If you flatly reject a job that doesn't pay you based on some mythical calculation of "value added" whatever that means, you'll be unemployed a long long time. (Unless you want to be a commission only sales person.)

Re:Want good programmers? Then pay them. by kamaal on Thursday May 03, 2012 @10:36AM (#3924004)
I don't see anything wrong in getting paid proportional to 'value added' for one simple reason : My employer makes the same money as somebody in another geographical area but wants to pay me less than what he would be paying me in that geographical area. The difference goes in his pocket, while extracts the same work from me.

FAIR wage is not meant to cover your living expenses, they supposed to compensate you for your time, effort and results. This isn't slavery, we are no longer working for merely surviving at somebody else's mercy.

Re:Want good programmers? Then pay them. by malandrew on Thursday May 03, 2012 @01:59PM (#3924943)
... and working to put profit only in someone else's pocket.

If a firm is in Memphis instead of NYC and selling their services to essentially the same clients, then the owners of that business are already earning a greater profit on other cheaper operating costs like commercial real estate. By accepting a lower salary that simply covers a comfortable style of living you're simply putting even more money in the owner's pocket instead of yours.

It's a classic case of pareto optimality. The only explanation I can think of is that many developers don't see themselves as professionals commanding the salaries of professionals as skerrit_bwoy pointed out. There is no reason that good developer in any market shouldn't be living at the exact same standard of living as the good doctors, lawyers, finance people in that market. They should be living in the same homes and sending their kids to the same schools, etc.

Re:Want good programmers? Then pay them. by patio11 on Thursday May 03, 2012 @05:50PM (#3925994)
There is no reason that good developer in any market shouldn't be living at the exact same standard of living as the good doctors, lawyers, finance people in that market. They should be living in the same homes and sending their kids to the same schools, etc.

These words should be stapled to every CS degree, and reinforced with classes if necessary. The lawyers/doctors have an ingrained culture in their professions of, well, being professions. We should totally steal that. (They can keep the guild systems, though.)

Re:Want good programmers? Then pay them. by malandrew on Friday May 04, 2012 @12:38PM (#3929190)
Since you already got the audience, twould make a great blog post.

It's should be an obligation of every professional in our industry to negotiate higher and be seen as valuable as we actually are to society. The fact that most professional software engineers know their value and demand it severely hurts the salary bar for every other software engineer.

Silicon Valley and NYC are the only two places where I see developers actually beginning to demand what they are worth.

Many entrepreneurs in a lot of areas outside software were able to do what they did because they were highly paid professionals in a prior life that could afford to invest a chunk of their own money in their endeavor.

If we, as a profession don't ask to be paid according to value added, then in general there are going to be a lot less of us starting our own businesses and when we do, we'll have to cede control to non-technical types that did demand their worth like lawyers and finance guys.

My theory is that the first dotcom boom paved the road for the growth we are experiencing now because it took money from Wall Street and used it to line the pockets of technical folks with cash.

Re:Want good programmers? Then pay them. by rmc on Sunday May 06, 2012 @12:19PM (#3935474)
Since you already got the audience, twould make a great blog post.

http://www.kalzumeus.com/2012/01/23/salary-negotiation/ ?

Re:Want good programmers? Then pay them. by NickPollard on Thursday May 03, 2012 @10:20AM (#3923939)
Not necessarily, this is the heart of the supply-vs-demand concept.

If there are a hundred other people that can do what you do for cheaper? Of course you wont find a job. But if you're the only one? Well after all the companies tell you take a hike, and then find they can't hire anyone else - they'll come back. If the cost of paying you is less than the value you add, and they can't find any cheaper alternatives, it's in their interest to hire you.

As usual, Patio11 is the best voice on this subject - read some of his posts about salary negotiation.

Re:Want good programmers? Then pay them. by dhimes on Thursday May 03, 2012 @10:50AM (#3924060)
For the view from the other side of the table, read Peldi's posts from Balsamiq.
Re:Want good programmers? Then pay them. by cageface on Thursday May 03, 2012 @10:52AM (#3924075)
It's not cost of living but supply of jobs. The job market is smaller so there's much less competition for talent. Employees that aren't willing to move to the hotter markets don't have the same bargaining power.
Re:Want good programmers? Then pay them. by benmccann on Thursday May 03, 2012 @10:47AM (#3924050)
You can add more value to firms outside the midwest because there are very few firms in the midwest where tech is their core business. I was living in Cleveland and severely underpaid, but I could not find another company in the area that would give me a $20k raise because IT was just a cost to them and not how they made money. I moved to California and more than tripled my salary.
Re:Want good programmers? Then pay them. by danssig on Thursday May 03, 2012 @11:15AM (#3924177)
My experience in the midwest was that they generally have very low estimates of what anything they pay for is worth (probably because they get this idea from the lower cost of living).
Re:Want good programmers? Then pay them. by lifeisstillgood on Thursday May 03, 2012 @11:44AM (#3924311)
The problem with this is viewable on freelancer.com and other sites. Once you can be sure a coder will do good work remotely, then you can get a coder to do some work from anywhere on the planet, and those who have a much lower cost of living will happily undercut those who dont.

It may be the single biggest driver against the growth of cities.

Re:Want good programmers? Then pay them. by boxy_brown on Thursday May 03, 2012 @12:40PM (#3924562)
What you describe isn't a problem, it's the greatest possible outcome. Think about it from the point of view of the employer and the remote coder.
Re:Want good programmers? Then pay them. by jebblue on Thursday May 03, 2012 @12:40PM (#3924557)
Yup, they say on their front page that the average job is under $200. That's about 3 to 4 hours work for me.
Re:Want good programmers? Then pay them. by noonespecial on Thursday May 03, 2012 @03:08PM (#3925245)
Employers value proximity. They'll pay extra for it.
Re:Want good programmers? Then pay them. by Apreche on Thursday May 03, 2012 @11:42AM (#3924304)
Oh, I want to add one more thing, since everyone seems to like my comment.

You can pay me too much money.

If you give me say, a million dollars a year, I will work for one year, and then you will never see me again. I will go home and live my life as I please, and only code what I want to code. The code may or may not make money. I may or may not try.

If I work at a startup that cashes out big, then I will travel the world, settle in the tropics, and you will not see me again. If someone acquired us as a way of acquiring talent, they will be sorely disappointed.

Re:Want good programmers? Then pay them. by solsenNet on Thursday May 03, 2012 @11:53AM (#3924356)
maybe you should start your own company?

seems to me you chaff quite a bit about being a "wage slave"

Re:Want good programmers? Then pay them. by tensor on Thursday May 03, 2012 @12:35PM (#3924533)
Indeed. Also, he seems to want the pendulum to swing from the employee courting companies to the company courting employees. Personally, I think there should be a mutual respect between an employer and employee. Further, someone whose sole goal is not to work, as it seems here, is probably not someone you really want to work with nor to start his own company.

There are certainly a lot of people who do in fact do nothing when they become independently wealthy. But many also continue working regardless because they actually enjoy what they do.

People should absolutely be paid fairly and treated with respect. But if you expect someone to worship you for some reason, wether employer or employee, you should probably adjust your attitude.

Re:Want good programmers? Then pay them. by eli_gottlieb on Thursday May 03, 2012 @01:04PM (#3924674)
He didn't say he would do nothing when he got rich. He said he would code whatever he wanted, without regard to making money. Big difference. An independently wealthy person could become a star of the open-source world.
Re:Want good programmers? Then pay them. by tensor on Thursday May 03, 2012 @01:28PM (#3924800)
That is true. However, his comment still seems downright hostile towards anyone he might work with. It comes across as though he tolerates working with people only by force and has no respect for his coworkers at all.

No doubt his phrasing is overboard, perhaps due to a poor working environment or mistreatment by management. Personally, even I "won the lottery" tomorrow, I would not just abandon the projects I'm working on and the people I'm working with. I enjoy the work and respect the people.

Re:Want good programmers? Then pay them. by Apreche on Thursday May 03, 2012 @02:03PM (#3924960)
Actually my working environment is pretty great, and my co-workers are cool. That's why it's hard to convince me to leave.
Re:Want good programmers? Then pay them. by Apreche on Thursday May 03, 2012 @02:02PM (#3924954)
I am incredibly risk averse. I will not take the chance of becoming homeless.
Re:Want good programmers? Then pay them. by potatolicious on Friday May 04, 2012 @03:40AM (#3927464)
In the current climate, the risk of that is incredibly low. For one thing, if you're risk averse and amenable to trading risk for equity, you can keep a sizable war-chest at home and simply run off VC money. That way even if you crash and burn you have a safety net to fall into.

The current state of the software industry is funny that way. The worst case outcome of being a failed startup founder is a six figure job ;)

Re:Want good programmers? Then pay them. by danssig on Thursday May 03, 2012 @04:18PM (#3925579)
I disagree. Why do we have this idea that one needs to be at a company for 20 years? I'd love to see some company pay a million dollars a year to all employees and have a limit of, say, 5 years for working there. It would be interesting to see what effect that would have when every employee knew after 5 years of working there they never had to enter the rat race again if they didn't want to.
Re:Want good programmers? Then pay them. by gaius on Friday May 04, 2012 @05:46AM (#3927712)
If someone acquired us as a way of acquiring talent, they will be sorely disappointed.

Typically in that scenario, there would be an "earn-out" period. Leave within n years, get nothing.

Re:Want good programmers? Then pay them. by peejaybee on Thursday May 03, 2012 @03:58PM (#3925467)
The comment thread here reminds me of how just about every time someone suggests that a prospective employee might have demands of an employer, he or she is "entitled," "arrogant," or "a dick."

It never fails, be the topic salary and hours, choice of technology, vacation time -- being as explicit about your requirements as employers are theirs is a very good way to get poo flung at you.

We're not serfs, people.

Re:Want good programmers? Then pay them. by PaulHoule on Thursday May 03, 2012 @08:37AM (#3923547)
I definitely hear from startups who are hiring and will pay O.K. but it seems to me that for every startup that pays, there are 3-5 that won't.

I get myself fired up on this issue because I hear from enough companies that I need to quickly qualify opportunities. I'm a curious and generous person, so I'm inclined to listen to these people, but I don't have the time.

Re:Want good programmers? Then pay them. by smiler on Thursday May 03, 2012 @11:23AM (#3924202)
Some startups probably just can't afford a high salary...
Re:Want good programmers? Then pay them. by dreamdu5t on Thursday May 03, 2012 @02:25PM (#3925055)
If they needed one then they screwed up their business plan.
Re:Want good programmers? Then pay them. by TamDenholm on Thursday May 03, 2012 @09:15AM (#3923680)
I think the "cute little puzzles" are absolutely fine if you dont have any code you can send them, but if you have a public github or even willing to send them some private code then yeah, puzzles are a waste of time.
Re:Want good programmers? Then pay them. by theorique on Thursday May 03, 2012 @09:39AM (#3923774)
Sometimes, though, the "cute little puzzles" are useful in order to filter out the clowns who interview well but can't write FizzBuzz.

It's a bit of a tall (impossible?) order for a programmer - regardless of skill or experience - to expect to interview without going through some serious technical conversations and writing some code to solve problems.

Re:Want good programmers? Then pay them. by kamaal on Thursday May 03, 2012 @09:42AM (#3923791)
Technical interview is OK, ask the guy about his job. Give him a coding problem in his language of expertise. Check his knowledge of tools, techniques and best practices in his area of expertise. Do all the tech routine.

But please don't go on and on with Math problems endlessly over weeks and months. Asking arcane and rare facts about stuff and then deciding his worth over his perceived inability to solve problems in math which don't have any connection with programming in the real world.

Re:Want good programmers? Then pay them. by jchung on Thursday May 03, 2012 @05:03PM (#3925803)
I have great difficulty with the idea of hiring someone who says they will under no conditions work more than 40 hours a week. That won't work in a situation where we are all working together as a team to achieve something worthy of achieving. I don't hire people by the hour; I hire them to accomplish things.

TL;DR If you want to punch out when the clock strikes 5, get a job in Detroit.

Re:Want good programmers? Then pay them. by RedwoodCity on Thursday May 03, 2012 @01:02PM (#3924665)
Lottery tickets might be a better deal, they tell you the odds straight out and you get your picture in the news if you win.
Re:Want good programmers? Then pay them. by jeffpersonified on Thursday May 03, 2012 @12:40PM (#3924558)
I think being dogmatic in these circumstances is perhaps a little short-sighted. As with all things, finding the middle ground – balance – ought to be the goal, and not rigid conformity to rules. In this circumstance, it sounds like you'd might be hard to work with.

That being said, an employee with balance and boundaries, particularly if they can be seen in your life outside of work, is far more desirable in an employee than someone with none. How we live our lives outside the work place is indicative of how we function inside the office, and setting boundaries around the office shows a healthy valuing of our personal time.

Re:Want good programmers? Then pay them. by nobleach on Thursday May 03, 2012 @02:32PM (#3925094)
What's ironic, is that I'm reading your response, and I'm thinking of how unreasonable it sounds. But after taking a step back and thinking about the symbiotic relationship companies SHOULD have with their employees, this reminds me an awful lot like the demands I've seen from most jobs. They'd like to offer you 2 weeks vacation, a week sick time (because we all choose how long we'll be sick) and if they bounce a check? Bummer, you can either go back out and seek employment or hope things get better.
Re:Want good programmers? Then pay them. by pkmehta on Thursday May 03, 2012 @01:02PM (#3924666)
I get that devs are in demand and that folks should be paid fairly, but after reading this, I don't know if I'd want to work with you in an employer-employee relationship or even as a colleague.

This smacked of a level of entitlement that I think would be cancerous to any group of people working together. Just my $.02.

Re:Want good programmers? Then pay them. by sliverstorm on Thursday May 03, 2012 @12:19PM (#3924451)
You need six figures to make rent?
Re:Want good programmers? Then pay them. by mahyarm on Thursday May 03, 2012 @09:20PM (#3926580)
A 1 Bedroom starts at $1600. A 3 bedroom house is ~$3000. 6 figure tax rate is %40 not counting deductions. If you have a family, your rent already takes out over half your 6 figure income. You only live so long, so you need to make some savings too.
Re:Want good programmers? Then pay them. by ricardobeat on Friday May 04, 2012 @01:51AM (#3927228)
So a $100k salary actually gets you $5000/month? Is that true in practice (not on paper)?
Re:Want good programmers? Then pay them. by potatolicious on Friday May 04, 2012 @03:51AM (#3927493)
I'm in SF right now and that number seems correct (mine don't line up exactly, but close enough). So yes, $100K salary nets roughly $5K a month (assuming no extraordinary deductions).

And a studio is hovering around $2K a month around here, and rising.

Re:Want good programmers? Then pay them. by its_so_on on Thursday May 03, 2012 @10:37AM (#3924015)
guys, the parent was attempting to write satire.

little do you know, that except for infinite sick days or 40 hour weeks, you are "lampooning" a lower-than-average rate for anyone qualified in the bay area. Look at it this way. If Amazon can use you to create a million dollars in value, and therefore vies with Google, who can use to to create a similar amount of money in value, and between them and about a hundred similar startups the going rate is 150,000 per year for your work (with the rest of the 750,000 that you generate going 1/3 toward paying your other miscellaneous overhead associated with you, and half toward their bottom line), then how is 100,000 reasonable?

I bet you consider the following offer reasonable: in your geographic area, start selling goods (through any venue you like, including online forum, web shop, etc) which you buy wholesale. You can pick any goods in any industry or category that you want, and work with whatever wholesalers you like! You have complete autonomy over the entirety of your "stack". Please deduct 15 euros per hour for your labor - totally reasonable - and send any profits above that amount to me. If you make less than 15 dollars per hour doing this then you can keep 100% of your sales. (Naturally, it is not possible to lose money, since the local price cannnot be less than the wholesale price.)

How is this not a reasonable offer, please explain to me. (Not a rhetorical question.) If you cannot explain why this is not reasonable, please reply to me with your contact details so that I can start paying you per above. I look forward to your reply.

Incidentally, I also look forward to any explanation for a lack of response with contact detail, as I have a LOT more jobs available at this price than I can fill.