Our hiring needs didn't feel too crazy to me. We were a multi-million dollar a year e-commerce shop, I was the first in-house technical hire, and we wanted to expand the team for personnel redundancy.
Ideally, we wanted someone who would be capable of running a business-critical website. On the technical side, I was hoping for a full stack of skills (top to bottom web app security, server ops, managing technical vendor relationships and integrating third-party modules, zero downtime rollouts, performance and architecture, metrics/instrumentation, and fully-independent backend and HTML/CSS/JS skills to build a secure and pixel-perfect feature beginning to end). Plus, we wanted an early technical hire to be able to work the indirectly technical parts, including technical hiring, capacity planning, and expectations management.
None of this felt to me like we were asking for something crazy unreasonable, but you don't learn a good enough coverage of this to independently steer a ship of this scale until a few years on the job. You can learn bits and pieces on the fly with the documentation around, but it's both risky and slow. Given the hiring climate, it was a risk we ending up being comfortable taking, but it fell short of what would be ideal.
In response to some remarks about adjusting our expectations (remote work, higher salary), our particular situation was not doable for remote---there was zero 100% remote staff among 30+ FTEs and none of our workflow was set up for it---although I wish I had influenced the organization of work in more formative stages of the company to optimize more for remote given the personnel advantages. Regarding salary, it's very hard to increase salary past $150k+ because I found it very hard to publicize it in a way that meaningfully increased the quality of candidates we found entering our funnel. I wish there were a job site for "will pay very well above market for strong candidates".
We were a multi-million dollar a year e-commerce shop
top to bottom web app security, server ops, managing technical vendor relationships and integrating third-party modules, zero downtime rollouts, performance and architecture, metrics/instrumentation, and fully-independent backend and HTML/CSS/JS skills to build a secure and pixel-perfect feature beginning to end
Even at a lower end startup not making multimillion dollars, you've just described 4-6 engineer's worth of talents for 1.5x of a single developer's salary. I look at that list and think I'm never going to get a decent night's sleep while in your employ.
Thanks for the feedback about the 4-6 engineer's worth of talents. It's good to know, and we realized a similar thing and pared down the JD to be less oppressive-sounding.
Sleep and balance was important to the team (I personally averaged around 35-45 hours a week, working one weekend and being called in maybe a half dozen times over a year and a half; the system mostly runs itself), but we didn't find a good way to surface it in the description. Any suggestions on this is appreciated too. I struggled in that when we removed or played down aspects of the job, or emphasized work-life balance, we just got more folks who were seriously green in some parts (front-end devs who can pull together jQuery but have never deployed their own code or had to write backwards-compatible apps).
Sleep and balance was important to the team ... but we didn't find a good way to surface it in the description.
That's a tough one. Any company you ask will say they're great on work/life balance. What else are they going to say? 'No, we're going to work you 80 hours a week every week. If we ever hit crunch mode, say goodbye to your weekends!' The only thing I can think of is to show them that everybody goes home at 5pm by having the 3/4 day onsite start later in the day and end at the same time everybody goes home. It also gives the added benefit of allowing the interviewee to interact with everybody as a group.
front-end devs who can pull together jQuery but have never deployed their own code
For what it's worth, that's pretty standard in web development. I've deployed code through beanstalk or jenkins, but devops sets that up. I've also deployed side projects to my own servers, but that's a whole different ball of wax compared to deploying to a corporate data center with load balancers. I wouldn't trust a frontend jquery guy to set up those kinds of deploy environments. It's a completely different discipline and field.
I was car shopping a few months ago, and I found there's a dire shortage of brand new $10K BMWs.
Or they have a hiring process and that weeds out top performers. And/or they have a hiring funnel that appeals to the bottom of the barrel.
Or all three, which was my experience with about a dozen different companies in SF last October. I chose to take the job where I wasn't humiliated during the interview.
It's funny how this is a legitimate filter, from the job-seeker's point of view. And, by "funny" I mean "a sad testament to SV tech interviews".
We're shopping in that compensation range and my experience has been exactly like cairo140's above: https://news.ycombinator.com/item?id=9964934
Area median 75%ile 90%ile
Chicago, IL Metropolitan $88,630 $109,640 $126,370
Los Angeles, CA Metropolitan $102,310 $126,340 $150,320
San Francisco, CA Metropolitan $112,570 $143,390 $174,120
San Jose-Sunnyvale-Santa Clara CA $137,710 $166,280 >$187,000
I'm from the midwest so my frame of reference is where $150k will get you well into in the 90s percentile-wise. I'm conducting my hunt in the LA area. And just so we're on the same page I included Bay Area numbers. Is $180-200k (on the 190 to 200 side) closer to the right number, with the Bay Area as a frame of reference?One very interesting realization I had looking through the data is that software development, at the median, isn't an especially well paid field. Dental Hygenists in SF earn almost as much at the median, and registered nurses earn much more.
Overall, I think a big part of why this "shortage" exists is that the work is very difficult for the pay, and that career stability and age related employment issues may actually be considerably worse.
I know this is hard for employers to accept, but salaries may have to rise dramatically before people with citizenship or residency status that allows for career choice are willing to commit to software development. For now, I really do think one reason we are able to staff these positions at "market rate" is that we have created a visa program that essentially prevents a large number of tech workers from changing fields (i.e.., there are serious obstacles to coming to the US on an H1B as a software developer and deciding to retrain as a dental hygienist, this kind of personal and professional freedom is not permitted under this visa).
Role 1: top to bottom web app security, server ops, zero downtime rollouts, performance and architecture (shared)
Role 2: metrics/instrumentation, fully-independent backend, HTML/CSS/JS skills, integrating third-party modules, performance and architecture (shared)
Role 3: managing technical vendor relationships, work the indirectly technical parts, technical hiring, capacity planning, expectations management, performance and architecture (shared)
These are still three pretty loaded-up people! Even if there was one person capable of and willing to do this all, their current job title is likely "founder of their own startup".
I'm doing a decent chunk of that, aware of the parts I'm doing shitty, and that is my job title. :)
I was talking recruiting with a mentor. He said some of his best hires were founders he met at startup events looking to regroup and earn a paycheck after the failure of their own startup. Dark—but insightful.
I'm in the midwest for reference, but hiring remotely in the bay area is legit too.
Wow, are talented developer really that hard to find? (Especially, considering you're offering 130-150k.)
Are you insistent on a developer being "mid-career" (I interpret that as having "years of experience") -- or would you accept a highly talented who has just begun career (e.g. a recent CS grad)?