There is a shortage of chumps however. For the right price you can hire pretty much immediately. What I don't get are people who are technically talented and not working, mostly because they want too much. Sometimes there is a sad sad story about how they were with big corp for 10+ years, went from starry eyed college grad to large mortgage holding principal engineer, and laid off, and now nobody will hire them as a principal engineer's salary. That is a sad story.
For example, I personally could get a drastic increase in income by moving to USA/SF, but I won't consider physically moving since it would be a great disruption to my wife and babies and I can afford not to move, as developers are wanted everywhere (though not so piranha-style). And there are many more developers like me. Long-range telecommuting is an option, and it's easier to be competitive financially since practically everywhere has lower cost of living than SF, I believe. (How much would a home for a full family within cycling distance of the office cost?)
Blows me away.
That being said, I'm not very interested in it for my company since it just seems less fun to not be able to hang out with your employees in person. And fun is the reason I do this. I'm still on the fence about it though.
Aside from the fact that I love my company, and my job, the raise offers are always worth considering, but knowing that I'd have to move or go into the office every day made the offers much less appealing.
I must not be on the right job boards. Or something. Is the meetup.com ruby list the place to go? Someone also suggested changing my location on LinkedIn to SF - however, I am hoping to relocate, but haven't done so yet, so that seems dishonest.
My experience tells me that this talent war exists... for the top few percentile of engineers. Where these people are dogged by recruiters and companies alike, there is a sharp dropoff; engineers who are smart but don't win in a tech bingo interview or didn't work at Google/Facebook or didn't go to Stanford get pinged by headhunters but passed over by companies. Engineers who have held jobs at start ups or less prestigious companies, who have authored plenty of CoffeeScript or ObC code for a corporate code base but don't remember how to implement a quicksort or don't have experience with framework x are rejected in the interview phase.
It's my opinion, but I think the "shortage of talent" is really a shortage of patience and mentorship, and a sign of the complete unwillingness of many companies to take a risk on someone.
I am also totally done with Google - it's just not worth 4 months of runaround and countless phone interviews just to come in and fail because one of the interviewers hates the whole process. And last time they contacted me, they told me to learn either Java or Python and call them back when I did. No thanks. Nothing against Python, but I am not putting that much effort into the chance at another interview. I would totally work for a company that did Python, and learn as I go - I've done that plenty before. (Edit: Oh, and the number of interviews google puts you through just should not be allowed)
I spent a year working on my own startup, which is what got me into rails, but it ran out of runway and I was then tied to the area by romance, and got a mediocre job at a huge company. I am no longer encumbered, but my resume lacks any recognizable names (of schools or companies). I've had a lot of other personal projects that never went anywhere and which earn me no points, but at least keep me in the game. (I should have put them all on GitHub, I suppose, but was too embarassed about their unfinished nature to do so).
I also don't get what the obsession is with CS 201 questions. But I keep my data structures textbook around just so I can relearn how to implement A* or remind myself what the big-O of a B-tree delete is before interviews. Of course, at Google I'd need to be implementing these data structures daily(?). I don't have a big problem with them, it's just an odd thing to be obsessed with.
2. Put the rest of the stuff up on GitHub, with suitable disclaimers, e.g. "I was working on this to learn X ..." Everyone understands (well, everyone I like understands) that creative people have lots of projects in various stages of disarray.
3. Target a few small/midsize startups, not the super-hot ones, and spend 1-2 hours to learn their product. I would be THRILLED to get an email from someone who said "I love what you do, here's three things I would like to work on with you to make it better, are you hiring?"
4. Put up front your willingness/unwillingness to relo. If you have remote working experience, give an overview of that. "Worked remotely for company X for two years, with daily standups, weekly sprint meetings, monthly 3-4 day visits, and two visits of 2 weeks duration 2x/year." That lets me know what you're up for.
I get a fair amount of (local, I live near DC) recruiter spam through it, but it's often nothing to do with rails, and it is mostly third party recruiters.
I'm looking for a startup or small-company environment that actually uses rails. Big ERP jobs are easy to find, but the startup jobs are, despite the supposed feeding frenzy, a little bit more scarce on the ground. (Or else I'm not looking in the right place!)
This article mentions at least a few engineers passing on leads to companies that I might actually want to work for; that's what I'm trying to find.
I can't argue with the OP's experience, but I would take all claims of "super massive talent shortage oh em gee" with a good pinch of salt.
I do the interviewing for my current company, and we have had a senior role open for 10 months. We have gotten to the offer stage 3 times but lost nonetheless. This is for a rails role.
edit: my boss makes the offers, and I suspect we have been losing out on these positions while making offers around 130-140.
I'm under the impression that it's not only recruiters but also companies who try to hire people with the exact amount of experience for the position; but a good Python dev can certainly pick up Rails fast, no?
SlideShare is looking for Rails devs and we frequently hire people who are moving to the bay area (from Ohio, Texas, France ...)
You can email me at jon AT slideshare DOT com
Secondly, are entrepreneurs really this out of touch with what it's like to be a jobhunter? This post reads like it was written by an anthropologist studying some strange culture he'd never seen before.
So it's more a matter of niches and networks I believe.
Maybe the market is getting bigger for Rails devs there? I left France 5 years ago and the picture was grim then, Java/PHP had a literal death grip on the market. Well, since I'm coming back I guess that's good news :)
That said Paris is the best place to get started networking again. Be sure to go to the Paris.rb group which is very dynamic if you come back!
This strip from 1995 sums it up pretty well:
http://dilbert.com/strips/comic/1995-05-22/
I see a number of problems (on both sides):
1. There is no shortage of talent. There might well be a shortage of talent for the price you're willing to pay but that's hardly the same thing;
2. What constitutes "talent" seems to be largely based on social proof. 25 year old Stanford graduate? Offers galore I'm sure compared to, say, the 45 year old University of Iowa graduate. Hell, I get an awful lot of cold calls based simply on listing "Google" on my online profiles (as my employer).
Social proof can be a useful indicator. The problem is that groups tend to self-select down to nothing this way where you end up with a tiny fraction of the group being over-subscribed and the majority struggling;
3. People like to employ people like themselves. So find a company full of MIT graduates and they're likely to hire... more MIT graduates. This isn't just a question of social connections or geographical area either (IMHO);
4. If you pick a high-demand high-cost area like the Bay Area you're obviously going to have a harder time finding and retaining talent and it'll be more expensive;
5. Larger companies tend to treat talent as interchangeable where the only units are the number of warm bodies, perhaps stratified into "junior", "midrange" and "senior" whereas we all know there can be a 10x or greater difference between two engineers in terms of productivity, hence the more productive talent is harder to attract and retain.
I pitch that we are in a similar position to Europe post Gutenberg - where they went from 2% literacy rates to 20% in a gut wrenching century. We are going to go from a lot less than 2% of people who are source code literate to that magic 20% in less - in short we are millions of talented people short.
In our generation, the observation talent shortage only occurs at certain ,price points is right - but when you want all companies to have the same code in their DNA as perhaps google or MS, we are so embarrassingly short of people it's a public policy issue not a Market lead one.
But I still laugh at the filbert cartoon - it's just I acknowledge that is true if your definition of talented developer is a software engineer who will write code primarily for a living and perform a sort of back office function. What about the CEO who codes? The deputy CFO?
I think I would hire someone for 40k for their first year, train them in RoR and then pay them more their second year. You get 6 months of good work out of them after they're totally trained and at a lower price.
The problem is you have to think a year ahead, but I don't think that's such an issue.
In other words, once the employee has the skills to earn $85k, why should she wait six months for her giant raise when she could just switch employers and get the giant raise right away?
Not that this is the reason why the fantasy scenario doesn't work - if it were reliably possible to turn a raw recruit into DHH with six months of training, the fact that we'd have to pay market rates the entire time would be the least of our problems. Indeed, it would not be a problem at all.
A real reason why more companies don't try training up raw recruits is that (a) running a school is a specialized business and (b) the yield is far less than 100%, so it only works at scale. You need to admit - optimistically! - 10 or 20 bright and motivated nonprogrammers in order to graduate one person who, after six to twelve months of training, can be expected to successfully attack problems like:
"A customer has called; he has an obscure problem with his web site. Help him debug this problem over the phone. You have no access to the code or the server."
or
"Here's a legacy codebase that spans 267 files, two major versions of Rails, and three generations of programmers. Improve it. Don't break it, though, because our revenue depends on it."
or
"Here's a collection of 175 cloud instances running in Amazon. Build a system that reliably backs them all up once a day, with no downtime, and that can verify on demand that those backups exist."
or even something as "simple" as
"Here is a Wordpress site with a handful of specialty plugins installed. Here is an empty Git repository. Fill this Git repository with Rails code that implements a site that looks and acts exactly like the Wordpress site."
[1] http://www.azlyrics.com/lyrics/andrewbird/howyougonnakeepemd... - this song is now 95 years old, so I guess I better footnote it!
The author should remember this is craigslist. This seems like run-of-the-mill spam (likely sent to EVERY new job posting)
The article mentions that none asked for any sort of online presence (Linkedin, Github, etc). Perhaps it's because they weren't serious to begin with.
Ask them about database design, sockets, parallelism, map/reduce, memory allocation, etc. and you'll get blank stares.
This is good though, because it makes people who know those things that much more valuable as well they should be.
Most people in finance, senior managers, doctors, lawyers, architects, management consultants etc wouldn't get out of bed for less than that, especially in a big city with high cost of living.
I think its great that techies are starting to realise their value and grab a piece of that for themselves.
Obviously finance, doctors, and lawyers went to school for many years. They earned it.
Developers, who can't even explain map/reduce or other important CS concepts, have not.
It's a function of supply and demand and the value that the individual can create.
That doesn't mean I'm not a good engineer. It just means I haven't done something before.
I don't know why our own community find this hard to accept?
We're a rare species who can create massive value for ourselves or our employers. We can build great products that many would pay for, or automate away whole departments of people with our code - not that I take any pleasure from the latter.
And yet we tacitly accept that there should be a whole class of people above us who have the right to earn more because they ground it out at school for a few years?
So, a not particularly high salary considering cost of living and benefits too? Where would they get these crazy expectations?
Oh right, the open market.
It's always been this way. When I got out of college, the division of the company I'd been interning with had an office in San Diego that was hiring for skills I had. I wanted to work there since my GF at the time was going to UCSD. Same industry, same company, same division of that company. Already vetted and approved by many months of interning. They wouldn't give me the time of day. Nor would any other companies I applied to out there.
The local (to me) office and several other companies in the area had no problem giving me offers, even though I was putting almost no effort into the local search (since, after all, I wanted to be in SD).
It's somewhat better now, when I'm trying to move to SF - I've gotten a few phone interviews, but nothing like the insanity the article is describing.
Edit: I forgot the original reason I wanted to reply: To mention that I personally have no interest in telecommunicating. I'm a social person, and to me, a lot of the appeal of working for a startup is to be working with peers that I can engage with every day. I don't want (to be) a voice on the phone during scrums that comes to the office once a year.
You might have better success just advertising for someone who has experience with whatever large data requirement you are working with. Senior engineers can learn the framework if they aren't already familiar with it.
I wouldn't expect a RoR engineer to be very concerned with memory allocation, parallelism or sockets. They are busy building sexy CRUD web applications.
I suspect that employers who only look for Rails developers are hurting themselves.
You know the saying - "the market is so hot even chickens can fly"
If you have to hire, that'll be a very expansive chicken - or maybe even a lemon. That's the cost of doing business I guess.
With CI it's pretty easy to see what needs to be built and whether it works - every few minutes if needed.
You can see progress happen throughout a day.
No other metrics matter.