If it were easy to find programmers, you wouldn't have all these shops using spam-tactic recruiters to drive volume. They wouldn't need to.
It's most definitely a seller's market, if programmers can take their pick of corporate gig | freelancing | startup. My last job hunt took one hour. Their search went on for two months. If they fired me I could line up a dozen interviews next week, they'd still have to wade through a sea of unqualified/foreign/unmotivated alternatives.
It's not that I'm that good, I'm an entry-level Ruby guy working in a .NET shop. I interview well, but they interviewed a dozen guys before me. My job offer came the same day as the interview, after a token 4 hour wait. It's not that they were being overly selective, the pool they were fishing in was just that bad.
I don't know where you're getting the idea that it's a buyer's market for programming talent.
From my experiences, it is very circumstantial if you hit the ground running in a week like you said, or just get stuck in a mile of resumes, 3 week delays between responses with anyone from a 5 man startup to Amazon, and I think it is all about the network / school / area you are in. Besides being good, which I'm not either - that is kind of the golden ticket to glory.
And I mention recruiters only because it will open your eyes to the possibilities. Much better, got to any of the many free meetups (check the "NERD center" calendar) that happen almost daily and you will find plenty of like-minded introverts to talk code and network with.
Whether or not you're actually good, I of course don't know. But don's sell yourself short. Take a shot. I did about five years ago and it was like being fired out of a cannon. Good luck to you.
I think those are unrelated concepts. I think connecting with the right pool of talent is an art, and a lot of shops are completely artless.
> It's most definitely a seller's market, if programmers can take their pick
Maybe I've been lucky, but I've never worked at a company that felt like we couldn't take our pick of applicants. Especially the lower down the scale we went.
> My last job hunt took one hour.
I have applicants for positions that don't exist. My applicant search takes negative time.
> If they fired me I could line up a dozen interviews next week
If someone quits, I can line up a dozen candidates next week.
> they'd still have to wade through a sea of unqualified/foreign/unmotivated alternatives.
Every day, you make judgements about which companies would be fun to work through - you're always doing that background processing.
> they interviewed a dozen guys before me.
So, as a Buyer, they had a line of candidates applying. Most of their problem was probably announcing to the world that they had an open position that people should know to apply to. That sounds like a Buyer's Market to me.
> I don't know where you're getting the idea that it's a buyer's market for programming talent.
The length of time I've seen open positions sit unfilled, and the number of applicants who'd be qualified to fill it.
In any market, a good that's sufficiently - well - "valuable" - will be picked up in no time. Congrats on crossing that threshold, I guess.
But yes, I consider it a Buyer's Market.
The software industry is highly bimodal. There are two very, very clear camps - you fall into the other camp than most HNers.
The market for mid-top end talent is a huge sellers market. There aren't enough people to go around, salaries inflate double-digit percentages every year, and crazily does not seem to be stopping.
The market for low-end warm-body coders is a huge buyers market. There are more clueless VB coders than there are seats; many, many more.
Do you, by any chance, work for a consultancy where innovation, code quality, or engineering excellence aren't exactly high up on the list of priorities? This may explain your glut of candidates - whereas on the other side of the industry fence companies are offering six-figures to fresh graduates and creating bidding wars around entry-level applicants?
You've touched on one of the most involved and complicated questions in our industry. There are many qualified coders stucks on proverbial other side of the fence for no good reason.
The short answers, for me, is blind ass luck. I did well in high school, stumbled my ass (unintentionally) into what turned out to be a prestige school, stumbled into some interesting internships with well-known companies, and as a result attracted the attention of one of the "A-level" tech employers, whose name on my resume put me on the correct side of the fence (the employer is Amazon, btw).
It's not just the resume effect - being in said companies also puts you in a network of people already in the camp, which opens up networking and job opportunities also.
Being in the right camp is a self-reinforcing phenomenon. You get jobs at a particular level, with a particular type of employer, which in turn attracts more of that sort of employer. Unfortunately, the inverse is also true - if you're outside the camp, you attract the other employers, and your resume begins to look less and less like a resume from within the camp.
None of this particularly helps you, even if it does explain why you can't seem to get into the camp.
Here are some tips - but keep in mind that I've been in the camp from "the beginning" (i.e., right out of school) so I really cannot vouch, first-hand, how well these will work for you.
- Network more. A lot more. Look at technologies being used within the camp (Rails, Node, etc) vs. tech being used outside the camp (VB.NET, JavaBeans, etc), and learn according to where you want to be.
- Go to developer meetups hosted by companies/individuals in the camp. This community maybe small in Philly, but I'm certain it exists. This will reinforce both the learning and networking parts of above.
- Go to events in New York City, which is the closest tech hub available to you. There are events held all the time - hackathons, conferences, etc. Go, learn, make friends, network.
- After you've done this a few times you've probably collected at least a few cards from interesting companies. Hit them up, see if they're hiring, or if they know anyone hiring. Considering the severe, ridiculous high-end tech shortage in NYC, you will get substantial hits.
- Consider also traveling to NYC and crashing an AirBnb for a few days/week. Companies are a lot more receptive if you can talk to them face to face. If you can line up a few interviews beforehand, even better.
Then when you finally answer the ad, you'll be so far inside the person's head that it will look like God himself sent them the PERFECT candidate.
You need to be patient and to sharply cut down on the number of ads you're answering. So pick the good ones, the ads that look like they were written by engineers. The ones where you can see the thought processes of the people hiring.
In my job search, I sent out exactly one reply to exactly one ad, to the company that hired me.
-“What kind of work do you do?”
-“I do this, this and this. I just graduated and I'm hoping to find some work or freelance gigs. You?”
No, but it will give you just enough capital to move somewhere better. And you'll be working on your social skills, which is a big win for anyone.
Choice isn't all there is to it.
Let's say you're at a grocery store to get onions, but all the onions you see are terrible but really cheap. Being a discerning buyer, you decide to hit the next store. Same there too; more crap onions. It's like this at the next three stores. Finally you get to a store with decent onions, but they're 4x the price of normal onions. You, starved for choice and not willing to shop any more, despite the glut of onions, grab one and go home to make dinner.
This is a classic seller's market. The sellers with the goods command premium prices because there aren't that many of them at the quality that the buyer wants. Lots of crap onions to pick from, good ones are ridiculously expensive.
A buyer's market would be the other way around, there'd be lots of good onions, so you could get them at bargain rates.
I also think you might be misreading the fact that the company you work for is letting open positions sit. What this effectively means is that the workload hasn't gotten to the point where they have to take the next person that comes along. They can still afford to be discerning. If it goes on like this the workload will either get worse, at which point they will have to take the first guy that comes along, or they'll just stop looking, deciding they didn't really need a new guy. Both outcomes are exactly what happens in seller's markets, the buyer eventually gets fed up and takes a sub-par deal or walks away.
I think when you look at the DJIA, companies really are getting developers at bargain rates.
How much revenue do you think the top 30% of software companies are earning, versus how much they're paying their top talent?
> I also think you might be misreading the fact that the company you work for is letting open positions sit.
They're not - they're filling as quickly as we want them to. That's a Buyer's Market.
Why do you feel it's necessary to waste a candidates time by having them apply for make-believe vacancies?
There's an excluded middle here, where the ability of a company to choose correctly (avoid false negatives) is not a given, and that they are filtering properly in the first place (as I mentioned of a rockstar-seeking YC company elsewhere in this thread).
I don't know where you live, but where I live, there is NO market for programmers.
So "foreign" is in the same category as unqualified and/or unmotivated ? WTF ???
Basically, the more specialized you are, the more brittle your situation is. I also happen to be an immigrant, which together with the specialization means that for any given city, there might be 2-3 employers I can apply at tops. My plan going forward is to basically abandon my specialty in favor of a more common/in demand skill set.
Interesting choice of words ...
Foreign: On their ad, they specified that they couldn't sponsor H1-B Visas, because they had a lot of replies asking for that. They didn't want to deal with a language barrier.
Unmotivated: I learned after I took the job that of those applicants that weren't A or B, the rest of them really wanted to work in games. They decided against hiring them because they were worried about the guy jumping ship as soon as a game job opened up.
I was the first guy they interviewed that didn't have any of these hangups, and jumped immediately on me, despite having no real previous experience with C#, .NET or other C-like languages. They offered me the top-end of my salary request range. I had nothing to negotiate. I can't imagine this having happened in anything other than a seller's market.
Maybe I've been fortunate enough to work for companies that had enough gravitational pull that we attract good candidates without trying very hard.
Outside of the tech hub cities, yes, it can be very hard. Even just an hour out of Philadelphia, helping a local company offering $95k salary and benefits (well above average in their area), there were very few applicants and fewer actually qualified to do any professional programming. It took almost a year to fill a single developer position.
Programmers are a rare species in most of the country. My CS graduating class a few years back was probably 30-40 people and, having worked with many of them in various classes, many were completely incompetent, having only passed by copying and pasting or sharing code. The entire country graduated less than 10k people from CS programs in 2010.
I work for a NYC startup that has hired Philly residents in the past - either remote or remote-occasional-commute. Geographic salary fences are falling, and falling quickly - may I suggest $95K is below-market? Heck, around here $95K is below-market for a good, fresh undergrad.
I've gotten into a debate with some friends about this: a degree on a resume is really great, but it's not necessary for the vast majority of programming jobs.
> helping a local company offering $95k salary and benefits
I hear that driving a truck in the North Dakota oil boom can earn you $150k, to start. Even in a Buyer's Market, you have to offer a realistic salary.
> well above average in their area
Average what? Average programmer?
> there were very few applicants
How did the company find candidates? I feel like a lot of companies expect applicants... This is like expecting the phone to ring and having someone ask you out on a date. Putting your profile up on Match.com isn't much better.
If you want to hire people an hour out of Philadelphia, have you considered training people who live an hour out of Philadelphia for the job?
Again, I've said this a few times, maybe I've been very fortunate to work at companies with enough gravitational pull, because we work hard to make sure people know they're supposed to apply. But since we've put that effort in, we have overly-qualified applicants lined up for openings that don't exist.
> many were completely incompetent
You just told me that CS graduates can still be completely incompetent, but then you expressed surprise that apparently degrees don't matter that much any more. =)
In his defense, and as a recent grad with my CS degree this last year, the curriculum doesn't really sell itself at all for professional software development. Knowing algorithms / language theory / OS theory / theory in general doesn't mean you can throw together a Django app or use git. I had to learn those outside the classroom, because class projects were about convex hull and Monte Hall, not making useful software.
In 9 months since graduating I've gone from my favorite language being C, my experience being in Java and a smidgen of Swing (and still an incomplete knoweldge of the Java thread model, how to write for the JVM, and some others) I did know some CUDA / pthreads / openMP but from an elective on parallel systems, I had a touch of Python 2.7, and almost no sysadmin experience, to now my preferred language is Python3, I know and use qt for FOSS work, I learned html / javascript / C# / regular expressions / SQL / proper networking / the kde libs / pyside / simpy / numpy, I switched full time to Arch and learned Unix ground up, I learned about assembly, unicode, byte order marks, etc.
I never touched on any of that in school. Given, my school was a mediocre liberal arts place I went to just for the near-free scholarship, but I get the impression from other schools I encountered during ASM contests that the curriculum was similar.
Oh, I completely agree. It's a Liberal Art, essentially. As opposed to a Trade School. I'm a huge fan of a liberal arts education, and I think the background of a Computer Science degree is fantastic, but I can't lie to myself that it's necessary.
I think the future is more mentorship, and once someone is a bit established in their career, that they will take continuing Liberal Arts education to improve themselves.
those liberal arts places... :-)
It was a class project my freshman year. I already knew the probabilistic parts to it from junior statics in high school, so I was bored out of my mind.
This can happen in a seller's market if people with jobs are in such demand that they can try to create the position they want.
Maybe I'm just not looking in the right places. I'm absent a network, so I'm just using online job boards from Careers 2.0 to Dice to Linked In, and I just don't see anything.
If you feel that you've tried this and you can't find anyone, I see two options: 1. Establish these relationships online. HN is a good start. There's also no shortage of good software developers writing blogs. Interact with a few that you really respect. Comment on their posts. Connect with them on LI and Twitter. Email them. Taking it to a personal level where they'll feel the desire to go out of their way to help you could be difficult, but it's possible. 2. Move. If your present community truly is devoid of people you respect who would be willing to mentor you in some way, you need to switch it up and expand your circle of potential colleagues.
Some of the programmers in my team are fairly high profile within the community, but what they've been reporting back from conferences and meetups is "dude, half the people are trying to hire the other half..."
On what planet?