A friend recently started a job programming for Enterprise Rent A Car. Did you know they even regularly hired programmers? I didn't, but he seems to like it. The company I'm at once interviewed a programmer who was working for Home Depot.
The reality is there are actually plenty of programming positions that are perfectly suited for a career programmer who doesn't particularly love it and just wants a steady paycheck and a decent home life. But these positions aren't at Google or Facebook or the hottest Silicon Valley startup, and they're not going to ever pay $150k+ or even $100k+ (they might start at half that). You don't need to know what a suffix tree is. You don't need to have ever heard of bloom filters. These positions probably aren't at many of the companies posting in the 37signals job board, because that board is naturally going to attract job seekers who are more enthusiastic about programming as both a craft and a means to a paycheck.
I think a lot of posters here seem to be wanting too much in exchange for too little. In every industry, it's always been the case that the top companies have tried to hire the most "passionate" employees--and yes, that means employees who might work overtime while smiling about it. I don't think this is so evil when there are plenty of other choices.
I do think it's a bit disingenuous, though, to want to be part of the next explosively successful company while still putting in the minimum effort to get a steady paycheck. This forum is disproportionately full of people wanting to get at least somewhat wealthy off of software development, people who want the same compensation as big firm attorneys and doctors. Those lawyers probably work more than the average over-worked programmer at a top company, and the doctors almost certainly do. The attorneys and doctors also all necessarily went to graduate school and probably took on a lot of debt that the average programmer doesn't have. The fact is that, across all industries, jobs with this level of compensation are rarely 30-40 hour a week lifestyle jobs.
I think you're probably overstating the difference in software quality/challenge/interest factor between Flashy New Startup and Boring Megacorp.
Many of the really "hot" startups we see are actually quite boring from a technology standpoint. Snapchat? Uber? Airbnb? They're all variations on a dull web app that sends messages to [mobile] clients. Even at someplace like Square, I'd bet most of the code is cumbersome kludges connecting legacy banking infrastructure with their slick API.
Conversely, someplace like Enterprise is probably trying to solve more interesting problems than you might think: How do you balance supply and demand for your fleet across hundreds of locations? How do you optimize maintenance costs? Can you use GPS and in-car diagnostics to monitor cars in the field?
I know everyone here likes to imagine that startups are filled with super-genius Stanford CS grads implementing cutting-edge algorithms, but I think that's pretty far from reality. Whether it's a startup or a BigCorp, most of the work is going to be boring LOB applications.
There are quite a few startup jobs doing interesting things that don't require fake "passion" or crazy hours, especially outside the Valley bubble.
In real life there isn't a dichotomy between getting a so-called career job at some stodgy company and frat-house crazy-hours fake-"passion" startups in the Valley.
Perpetuating that dichotomy is dishonest and helps keep startup employee diversity, treatment, and compensation down.
The people I work with aren't "career programmers who don't particularly love it." They're not putting in a "minimum effort." They certainly know about suffix trees and bloom filters. They're years-of-experience, extremely talented people who put in unbelievable effort to achieve our goals at work, but they also go home to families and other passions.
I find your post interesting because I never said anything about "frat-house crazy-hours." I only suggested that certain jobs might want more of this amorphous "passion" and that many jobs don't require it at all, and you're the one who concluded this must mean "crazy-hours."
To me, it means exactly what you described: people who put in unbelievable effort at work, who probably love what they do, and who are extremely talented and take pride in that talent. None of that necessarily translates to extra hours. None of that translates into loving work more than family. None of that translates into not going home home to a family and the rest of life after work. But, to me, it does translate to passion.
That's fair enough, but my last paragraph was directed at a very specific demographic. There are a lot of posters on HN who expect to make $200k+, at least, as a programmer. The typical job paying in that range tends to be fairly demanding. Do you disagree with that? I'm not saying there aren't exceptions, but the vast majority of developers I know with incomes above and beyond the $200k mark have put in a huge amount of effort to get to that position. They're clearly passionate about something--either programming or, well, just money.
Also, for what it's worth, "lifestyle businesses" are often tied directly to having lower hours.
Programming is unusual that some people may have incredible mathematical talent which will allow some to be a LOT better than other without much effort (in specific areas).
I am not in that category. Above average, keen to learn and a decent bit of background. Not earning anywhere near 200k+, but I am living inn Barcelona which is pretty cool. Don't do more than 40hours per week usually either.
It's kind of funny that you mention ERAC. Now I don't know anything at all about thier programming department, maybe it is a laid back punch the clock kind of place. But in terms of the bulk of thier operations they are one of those HR driven companies that recruiting, through promotion, evaluation, and compensation cultivates a cult-like atmosphere of total dedication to the job and the company.
They recruit right out of college, targeting especially athletes and fraternity/sorority members. They almost exclusively promote from within. They tie compensation very strongly to unit performance, in a competitive zero sum way. From trainees through regional vice presidents everyone works long hours with no extra compensation. They use an up or out system for promotions. Then if you thrive and preserve in the system you might make six figures after a decade or so -- at least when and if your numbers are good.
While I certainly wouldn't tell anyone not to point out problematic employer actions in the development industries, but it can be instructive to see what it's like out there for some of your peers.
Even these boring jobs want people who are "passionate" and "creative", but then again you see those superlatives in adverts for fast food and telesales workers.
I just looked at some job postings for developers at Enterprise, since that's one of the examples I mentioned. I didn't see any of those words used.
Regardless, words like "passionate" are a problem with job postings in general, across all industries. Usage of such words in job postings is not even remotely peculiar to software development. The fact is that there are plenty of software jobs that do not require passion, even if they put that word in the job advertisement.
That's why there's a difference between choosing a job and choosing a career. You choose a job because it's a job and you are working for money. You choose a career because it's something you want to do with your life. People should focus more on what career they want and less on the job, but I understand that sometimes money gets in the way of career and focuses people on the job instead.
You'd be surprised how much money can be made solving real problems for clients with money with boring but stable solutions, and still work 40 hours a week.
That's definitely true, but I think it can be quite challenging to find those high-paying clients. I've heard plenty of horror stories from consultants who end up working far more than 40 hours a week for various reasons. By all means, though, go for it if you can find those opportunities and don't mind the work.
The reality is there are actually plenty of programming positions that are perfectly suited for a career programmer who doesn't particularly love it and just wants a steady paycheck and a decent home life. But these positions aren't at Google or Facebook or the hottest Silicon Valley startup, and they're not going to ever pay $150k+ or even $100k+ (they might start at half that). You don't need to know what a suffix tree is. You don't need to have ever heard of bloom filters. These positions probably aren't at many of the companies posting in the 37signals job board, because that board is naturally going to attract job seekers who are more enthusiastic about programming as both a craft and a means to a paycheck.
I think a lot of posters here seem to be wanting too much in exchange for too little. In every industry, it's always been the case that the top companies have tried to hire the most "passionate" employees--and yes, that means employees who might work overtime while smiling about it. I don't think this is so evil when there are plenty of other choices.
I do think it's a bit disingenuous, though, to want to be part of the next explosively successful company while still putting in the minimum effort to get a steady paycheck. This forum is disproportionately full of people wanting to get at least somewhat wealthy off of software development, people who want the same compensation as big firm attorneys and doctors. Those lawyers probably work more than the average over-worked programmer at a top company, and the doctors almost certainly do. The attorneys and doctors also all necessarily went to graduate school and probably took on a lot of debt that the average programmer doesn't have. The fact is that, across all industries, jobs with this level of compensation are rarely 30-40 hour a week lifestyle jobs.