Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
I’d Pay You $500k a Year, but You Can’t Do the Work (shellypalmer.com)
71 points by smaili on May 2, 2017 | hide | past | favorite | 110 comments


I'm at the point where I simply don't believe a word hiring people say about hiring anymore. I have 20 years of experience at world-class companies, and have shipped multiple very well known products that have collectively sold ~150 million copies. I've had nothing but stellar performance reviews and LinkedIn recs. Coworkers and managers have told me often that I'm one of the best devs they've had the pleasure of working with, and I believe they meant it. I'm very comfortable with every major OS and language, and every stack level.

Nobody is going to pay me $500K. Nobody is going to pay me $200K. As recently as 2015, I still had well-known companies trying as hard as they could to bring me on at under $100K! The last time I talked to an SV company publicly claiming to offer $250K, it turned out they were reserving the "top end" for imaginary devs. My work experience only weighed in at $150, according to them. Also, despite having a very rare combination of two unrelated specialties (the reason I applied), and being proficient in 6 languages, including JS, they passed because they felt my JS experience was too light. Writing the AJAX and UI framework used by a team of 30, and working on the front end of a major portal, both at BigCo, were apparently too small-time.

My whole career in the industry I was aggressively low-balled 9 times out of 10. Hiring people can't hire who they want, because they're scheming double-talkers, and they've convinced themselves that it's just good business. I started a small business that pays the bills, and I've never been happier. I sincerely would not go back to the industry even if you did pay me $500K.


Back when we were thriving (as recently as 2015) my top engineers made about $400K/year in salary, bonus, & 401K. That does not include health insurance, we footed the bill for 100% of the health insurance and we covered the whole family.

Truth in advertising though. I'm the founder, I'm weird, I ran that company much more like a cooperative than just about anyone else would have. So I don't expect that comp to be that commonplace.

I also tracked salaries at the big companies and made sure we were competitive. In general, we were very competitive but it is possible to get a better package, not common, but possible. One of my guys went to Saleforce or Linkedin, and I could not beat their package (well I could but then I'd have to bump everyone else up to that and we all agreed that didn't make sense for us).


I know a tiny handful of founders who are this kind of "weird" just on moral principle. They often get criticized as naive idealists, for actually valuing employees, including by paying them. All I can say is thank you for doing it your way.


Well I didn't get to where I had hoped, I really wanted to get each person who stuck it out some serious retirement money, like a couple million after tax. I really regret not getting to that but it is what it is.

On the other hand, I treated people really well, much better than most people would have. So I don't agonize over the retirement part.

And one of my guys, as we were winding it down, said something really nice: he pointed out that yeah, we didn't get to the retirement part, everyone got to work from home. He got to be there with his kids, watching them grow up. His best friend is out the door at 6am, 1.5 hour commute, rarely makes it back in time for dinner. The contrast is pretty stunning and I made that possible.

Hearing that was very cool. He's right, there are other rewards besides money.


Sounds like your negotiation skills aren't quite as good as your engineering skills.

The most important thing I luckily learned early was you never, ever say how much you currently make when negotiating salary for a new position. Tell them to make an offer first or kick rocks. If you want to be more polite about it, say you believe firmly that what your current compensation is is not relevant, what matters is the value you can bring to the company.

I would say that had I not followed that rule, I'd have lost tens of thousands in salary already in my relatively short career.


My negotiation skills are abysmal relative to my engineering skills, but I'm never going to give anybody a pass for exploiting that either.


Marketing. You need marketing. You may be the hottest deal in town, but if no-one who knows you "personally", need your skills and can afford your rate, it will be rough riding.


The "tech shortage" is a real myth. The ultimate problem is that people want "unicorns for peanuts" and no one (including Shelly Palmer) wants to take the risk of hiring and developing potential talent. If all you can accept is demonstrated talent, you should be ready to outbid other companies who are looking for demonstrated talent. And if $500K isn't cutting it, that could mean you aren't offering enough (it could also mean your company is in a field that can't really attract top talent, but that's not the case here)


The 10x software developer is a myth. There are 10x ReactJS developers, 10x Angular2 developers, 10x MongoDB developers, 10x Tensor flow developers, etc... But there is no such thing as a general-purpose 10x developer.

I guarantee you that a 10x heart surgeon won't do as good a job fixing your teeth as a 1x dentist.

The reason why so called 10x developers don't get paid 10x is because business owners and founders who actually have that kind of money are too smart to believe it.


I'd actually characterize the problem the opposite way as you: there aren't 10x ReactJS/Angular2/MongoDB/TensorFlow developers, because when we say "10x", we really mean "They delivered the same revenue with 1/10 the code/time/money" or "They delivered 10x the revenue with the same amount of code/time/money."

That usually means thinking of out-of-the-box solutions that reframe the problem in a way that's dramatically easier to solve and often more useful for the end user. For example, they may realize that your customers don't want a web UI that they have to visit separately at all, they just want to receive a text message when certain events happen, and so they can replace your entire UI team with a single Twilio API call. Or they may realize that all of the complicated algorithms you have a whole backend team slaving over can be replaced by a deep-learning network that's mostly pre-trained over ImageNet, and just needs some fine-tuning for your problem.

Usually this requires deep knowledge across domains, not deep knowledge within a domain.


Tendency to think out of the box is a major problem when trying to be hired, if you are a software developer. Somehow most companies have strictly shaped role-"holes", so developers should develop and do not ask questions, managers should manage and do not code, and we already have smart guys, thank you.


There isn't that much room for out-of-the box thinking in software development (not enough for a 10x boost).

Developers who wander off the yellow brick road don't usually end up in a nice place. The term "lone wolf" is a derogatory term used to describe the kinds of developers who think too far "out of the box".

The best technical ideas are usually derivatives of much older ideas which require deep niche domain expertise to understand.


People say this, and they make career decisions that box them into a certain career path, and then they assume that because that's the only career path available to them, that's the only career path. Meanwhile, other people make career decisions on the assumption that they will get to do the work they really want, and they usually have to work a lot harder to make it happen and face some nerve-wracking moments, but a good many of them actually do end up getting to do what they want.


From my own personal experience, I can't agree with this statement in software or in any other human endeavor. An individual in the 99th percentile of talent may be several times more productive than an individual in the 50th percentile of talent. The same goes for an individual who expresses the behavioral adaptations we describe as persistence, effort, and hard work.

The person who has both rare talent and applies total effort may produce 1 - 1.5 (and perhaps occasionally more) orders of magnitude more value than what is average.


Learning a language, library, or framework isn't prohibitively difficult for an experienced developer.

The problem with developer inexperience is more related to understanding broad concepts and pragmatically applying techniques while managing risk (including debt) and understanding business rules.


Learning a language/framework to the point where you can be productive doesn't take very long. Learning a language/framework to the point there you are maximally productive is a much larger and more costly commitment.


> 10x ReactJS developers, 10x Angular2 developers,

Are there really? I don't see many language/framework experts having 10x impact. Maybe Herb Sutter and Bjarne Stroustrup.


If you understand your tools really well, you will be a 10x because you will know what patterns to use and which ones to avoid.

For example, I've written an open source project related to real-time web systems and so I can build chat systems 10x faster and probably 10x better than a typical senior developer but ask me to program a drone and I will be 1/10th as fast as someone who is an expert in that field and I probably won't be as good.

After you become a senior software engineer and have honed your skills in critical thinking and problem solving, all that is left to differentiate yourself are your specializations.

There are lots of generic senior level developers but very few in any given niche.


Wallstreet/Fin-tech managed to figure this out. They don't look for unicorns they look for developers who can implement a specification and are willing to learn, then sit them beside finance domain experts and mathematicians.

Here's a typical HFT entry level job posted by a recruiter note the emphasis on how they are willing to teach and knowledge in any specific language is not necessary http://www.biviumgroup.com/search_job_details.php?job_id=707...


Off topic: I just started using your open source library and it is helping me out a ton. Thanks!


> The "tech shortage" is a real myth.

Could you provide data or at least anecdotal evidence to back this statement?


> The "tech shortage" is a real myth

Except that's wrong. As much as you may dislike the tech industry, you can't contradict the data that shows there are more job openings than developers in the Bay Area


I'd love to serve some bay area companies, but I'd really prefer to not live there. None of the companies I've spoken to so far have any interest in remote help.

One west coast company has interviewed me. The company recruiter sent me like 14 "how to prep for tech screens" links and recommended I check them out days before the actual tech screen. I'm on a job right now so I don't have time to be doing that sort of thing so I didn't prep. It made me expect I was going to have to implement a BSP decompiler with a hand tied behind my back.

The guy who called me allotted 50 minutes to solve 1 problem "two if I finished the first early" on collabedit. I finished both in 6 minutes. I'm a good, experienced developer but I'm no genius. Their tech screen was so ludicrously easy it made me wonder what the current standard is for developers.

After I finished the guy said "huh I normally don't have to end these early. Great I guess." I pressed him a little and he went on to say his questions had done a great job invalidating candidates. Most people couldn't do it.

It's pretty beguiling since my midwest salary demands would be peanuts compared to my west coast equivalent. There'd have to be >60% remote-related productivity penalty for it not to be a no brainer to hire people like me.

The last few years has taught me that job seekers and dev seekers both have a hard time connecting.


Were these fizz-buzz level questions or were they more difficult?


A little tougher than fizz-buzz. I'd hope that people who take 6 minutes on fizz-buzz aren't calling themselves good and experienced. Am I taking crazy pills?

Here's basically what they asked me to do:

#1) Write a function that accepts one parameter. An array of numbers. Convert those numbers to pseudo-binary strings. Instead of "0" use "Y" and instead of "1" use "X"

#2) Do the reverse, Write a function that accepts an array of pseudo binary and convert it to an array of numbers.


Six minutes for them to explain the questions, you to make sure you have the question right, and then answer and explain your reasoning doesn't sound too crazy does it? Even for easy questions.

Anyways, thanks for answering!


When you include that stuff, you're right! I'm just talking about the thinking -> writing step. 6 minutes is a really long time for something like fizzbuzz. That's 360 seconds. The second hand has to go around the clock 6 times. If your script is 6 lines of code that's a MINUTE per line. FizzBuzz's lines are so self similar that's real weird for me to imagine.

My 6 minutes didn't include them explaining the question or them going over my answer. I didn't really explain my work. I did talk a little while I wrote, but after I finished he just went through my code line by line himself.


That's fair enough, I probably should have thought that it was just the time for answering the question, not the entire time, based on the context. Cheers!


I'd much prefer that to fizzbuzz. Last time I had to do fizzbuzz, I finished it so quickly that I used the remainder of my time (so as not to look like I copypasta'd the answer - which I didn't) optimizing it to be as fast as I could make it, then added tests and result logging, etc.

They were kinda shocked at what I did with it, because no one else had went that far with such a simple thing. Honestly, I thought it was stupid and boring, considering I've been a dev for so long - its a bit insulting.

At least the kind of test you got was a bit more interesting...


> Their tech screen was so ludicrously easy it made me wonder what the current standard is for developers.

Just fyi, its probably because many developers don't touch binary.

I work with numbers all day but they are currency transactions and accounting data. I haven't cared about transforming something to/from binary in 10+ years and couldn't do it without googling.

However, the number of devs (and accountants) who can't figure out a 4-4-5 calendar reliably is quite impressive.


I haven't messed with binary since college. (Well, some bitmask stuff happens every half decade I guess.)

If you remember binary is just base2 I bet you could do it. Since you do accounting stuff, could you split a number into each base 10 component? 462 = (400,60,2). A bit of thinking leads me to 10^i, a for loop and some conditional subtraction / modulo. Binary is just 2^i.


My point was, it wasn't from memory and because any mistakes I make are very painful and tedious to repair my first instinct is to Google things to double check everything before taking action.

So, no, I'm going to refuse a screen that prevents me from solving it the way I'd solve other problems I don't do regularly.


Fair enough!


wat

Wait, WAT?!

I am flabbergasted that this could possibly take a 'serious' computer-y person with ANY knowledge of just about ANY programming language an hour to do. I mean, 6 minutes is very good, it would take me longer to type it all out and run through the bugs in my code.

But an hour!? What are the other applicants doing in that time for Christ's sake? Playing hop-scotch?

Jeeze, maybe the big 4 really aren't kidding when they say that they can't find anyone good...


We're all at different skill levels. If you begrudge people for being below you, it alienates them and prevents you from being able to uplift and teach. We've all gotta eat, right?

The point I was trying to make wasn't to trash the other candidates. My mistake if it came off that way.

My point was: If the pool of qualified candidates is so small they have unfilled positions, why's it so hard for me to get remote work out there?

(As a side note: I'm happy to trash the charlatans who lie about their education, cheat on exams and hire freelancers to interview for them. :/)


No, I'm sorry, you are wrong. If you are a 'serious' programmer and you cannot do that task in under an hour, you better find your terrible teachers and give them a good talking to. Maybe try to steal their wallets or purses to get some of what they stole from you back. Graduating from any Univ./College (that is not Univ. of Phoenix style scum) should make that particular challenge not just able to be done in under an hour, but it should make you laugh at how easy it is. Yes, easy. Binary is learned in the first month (or less) of any 'good' department's curriculum and should be considered to be the same as PEMDAS is to Algebra in terms of foundational knowledge. I cannot imagine how any teacher not just nakedly after your Pell grant money could ever skip it. What next, will people complain that knowing the difference between and 'int' and 'str' is too difficult to recall? Are pointers too tough? If your comp-sci program did not teach you what binary is, you better go get another degree, because your current one was just theft. Yes, Google, StackOverflow, all that jazz. I get it and do it myself too. But good lord, not being able to code that in under an hour should be embarrassing. For Christ's sake, it's in the 5th episode of flipping CrashCourse for crying out loud, literally kid's videos (https://www.youtube.com/watch?v=1GSjbWt0c9M&index=5&list=PL8...)


I could post 10,000 job openings tomorrow to indeed.com for lawyers @ a very reasonable price, but this wouldn't prove there is a lawyer shortage.

A much more accurate measure of supply and demand is salaries. And runaway salary inflation has not happened. If you need a developer you can simply pay them more. This site is filled with developers willing to leave their job for a large pay bump.

And if you're not willing to pay them more, it's not a shortage, it's just a wish for cheaper labor.


I hear this comment every now and then. Because so many people say this, I really do mean this as a sincere question and opening to a discussion: have you considered the concept of supply and demand curves?

At a low price, the market will demand a lot of a good or service, but there's less incentive to supply. At a high price, the market will demand less of a good or service, but there will be more incentive to supply.

Let's apply this to developers. At minimum wage, there would be a lot of demand for developers. However, there wouldn't be much incentive to become a developer. As a result, there would be far more job openings than people interested in working the job.

At 500k a year, fewer people would want the services of developers, because they'd only be needed for very high value projects. However, lots of people would be lining up to take the job.

Economic theory tells us that supply and demand will meet at an equilibrium. So if there are far more job openings than developers, that suggests that the curves are not yet in equilibrium. As salaries for developers rise, demand will fall, until they are in balance.

Markets aren't perfect, and the real world is messy. But supply and demand are still in effect, and your comment suggests that you haven't even considered this. Saying that is a shortage of developers at 100k a year makes as much sense as saying there's high unemployment among developers who will only work for 500k a year.

Except that even that rarely happens. People who talk of a shortage of developers, amazingly enough, most often don't even mention salary. It's as if they have no concept of how salary affects both supply and demand.

Now, in this particular iteration, we do have a number, $500,000 a year. However, many of us on this forum are calling malarkey. Show us some numbers that you're actually offering and paying this salary and we'll talk. Otherwise, many of us suspect this is all bluster.


A lot of job postings are fake (position doesn't exist, position is exclusively for an internal hire only, job posting just for marketing purposes, job intentionally way underpays to justify hire a H1B, etc)

If you simply count job openings, you'll overestimate actual available work by a really large margin.


This is true. For some reason at my company, if you want to do an internal transfer, for the transfer to go through, manager has to post it to job board, and then you apply like a regular person, and then it goes through. This takes a few days, while it sits out there on the internet, luring everyone in pointlessly.

Also...someone applied to a product manager position at my girlfriend's job. They were well qualified. A week later they get an email saying "hey you aren't being considered as we're going to focus on other candidates but we'll keep your resume on file." Turns out...they had cancelled the position about three weeks before, basically forgot to take it down, and then sent out the same standard rejection letter to everybody. And I should mention this company is one of the larger Internet job boards, so even more ironic.

Also I get how not following up or "ghosting" maybe happens in dating, but there needs to be a higher standard in recruiting. With all the waiting and guessing, we're causing a lot of friction in the economy. Indeed Prime has this thing where if you don't explicitly respond to a message within 72 hours I think, they suspend your account for a week. Stuff like that could help out.


All the evidence (especially salary) shows that there isn't a national dev shortage, but there must be one because the Bay area has problems finding devs.

According to cost of living calculators, I would have to make almost a half of a million every year living/working in the bay area to keep my current standard of living. Are they going to offer me that salary to relocate? I don't think so (and most don't want me to work for them remotely either).

The blame is on the founders who choose overpriced locations and either cannot or will not pay correspondingly high wages.


Or, smart developers have figured out that 130k is not good pay in the bay or NYC. But this is the median for non-BigCorp senior positions in those metro areas. It's laughable.


The Bay Area is a good indicator for some things, but I'm not so sure it is here. More and more people don't want to live in the Bay area due to the insane cost of living.


And yet every job I've applied to tells me I'm asking for too much money if I ask for my current salary + 10%.


Those job openings want senior devs at junior salaries.

There are enough jobs out there that senior devs can laugh those off.

That's not a tech shortage - that's a sanity shortage on behalf of the startups (often new MBA grads with no experience who think their Hot Idea funded by their VC friend deserves devs taking pay-cuts for their lottery ticket options. News flash: senior devs have played the game too long to be bilked for suckers like that)


That's an awfully lot of words to write, just to say "I'm lying about my $500k offer". If they were actually paying that, they'd have no shortage of talent to burn out with their standard consulting work.

Tons of companies claim "we would pay [huge number]", or "there's no upper bound of income for the best talent". It's almost never true.


If Mr Palmer is going to claim he'd pay 500k, I'd like to see some evidence that he is actually doing this for his top performing employees. He says he lost a few "perfect" candidates to Facebook and google. Did he offer them $500k a year?

Keep in mind, Mr Palmer chose to make this claim very publicly, and he's gotten plenty of attention at this point for doing so. So I'd love to see a good journalist follow up with some real numbers here.

If he's telling the truth, well then, good for him! I tend to be skeptical about people who claim there is a shortage, since they almost never talk about what they're offering. Mr Palmer is.

So far, so good. But he should be willing to offer some real evidence of this claim. Let's see the numbers.


He is good at "promotion" and "marketing". He will now get plenty of talent eyeballs for free rather than having to pay for ads with dubious return :)


Facebook and Google total comp for average programmers ~2 years in is >$400K right now.

$600k isn't that hard to make at these companies.


Can you post some kind of evidence for this? I know salaries are somewhat secretive, but do you have something to support this?

The reason I'm skeptical is that while I do know people at google as relatively senior dev (very talented, elite CS degrees, 15+ years experience), they were well above 200k a year, but nowhere close to 600k. This was also more than 2 years ago.

Again, I understand data isn't public, but do you have something to support the notion it isn't hard to make 600k as a dev?


This is in total compensation terms. There are two documents floating around where employees detailed their compensation coming into Google and Facebook.

What everyone replying fails to realize is that if you include the appreciation of the preliminary and refresher grants these engineers are making >$400K rather quickly.


I appreciate your reply, but I do see this as just a more detailed claim without evidence, other than referring to documents floating around. I understand publicly available data is hard to come but, but this also just doesn't square with the few data points I have, for senior devs at google (albeit a couple years ago).

I suppose some of this may turn on what you mean by "rather quickly" for compensation in excess of $400k a year (let alone $600k/yr, which seems very high). I can't say you're wrong, because I don't have evidence... but that's the problem here, I don't have any evidence to believe you either. You're claiming everyone is failing to realize something, but in the absence of credible and available data.

Just give me something here. I can be convinced by evidence, but references to documents "floating around" just isn't enough for me, as it contradict my direct conversations with google employees, though my conversations are limited, slightly old, and personal information may be unreliable.

$250k, sure, that squares with what I've heard.


I feel comfortable speaking anecdotally but I don't feel comfortable formally doing the math here for reasons that I prefer not to disclose. I appreciate your desire for more details on my claim but I cannot provide it.

$250K is accurate assuming zero/normal stock appreciation. Assume half that is in equity compensation with a 38% (for FB) growth rate on a 4 year schedule and determine what the figures get to.


I don't believe this at all. I have friends who work for Google from acquired companies and they're no where near this.


Lies. I was there a year ago. People share compensation info. You're way, way off.


I have a friend that's pretty solid programmer - been at google for 3 years. He claims he crossed $400k at the 2 year mark.

That's at least 1 case that appears to support this.


> if a recruiter sends us three candidates who cannot pass our coding test, we fire the recruiter

is there any room to take blame for the quality of the test?

All testing must consider its reliability and validity as a measure.

If it is VALID it measures what you think it measures. EG: by passing a programming test it measures that someone CAN or CANNOT code.

If it is RELIABLE it has the same results time and again.

I'd suggest in their case, that they may have a test which produces a high number of false-negatives - people who can program but struggle with their specific test for one reason or another.

Anyways, it's up to them to do whatever they want with respect to their hires... It's up to the rest of us to not let them get away with blowing smoke up our butts about how great their test is or the exceptionally high quality of their candidates are.

Joel had a great article saying roughly "no you don't really hire the top 1% of programmers"


Right, or publish an (old) copy of this amazing test and let it be critiqued. Also, if someone is a "top 1%" and you want them to work 100 hour weeks, maybe $500K is just too low.


> want them to work 100 hour weeks, maybe $500K is just too low.

I think this is the subtext.


A 7-day week is 168 hours to begin with. 56 of those must necessarily be for sleep if you want the others to be worth anything. That leaves 112 waking hours. If 100 of those are working at the office, that is 12 hours for personal business. Roughly 100 minutes per day to eat, shower, commute, exercise, etc.

$500k is not enough. $500M is not enough.

If you put more hours in your labor export category, you have to take some from your leisure consumption category of your time budget. Whatever you earn from selling labor time is generally consumed during your leisure hours, after you subtract all your overhead expenses.

And $500k for 100hr work weeks is only about $96/hr. If you subtract $175k for taxes and $75k for overhead expenses, that gives you $250k left to spend over your 624 hours of leisure time, which means you would have to party hard at $400/hr to enjoy it all. You would have to play 4 times as hard as you work.

In contrast, $150k for 40hr work weeks is $72/hr. Subtract $42k for taxes and $58k for overhead, and you have $50k left to spend over 3744 leisure hours, which is about $13/hr. If you play just 1/5 as hard as you work, you're directly enjoying all the fruits of your labor. For reference purposes, if you spend $350/mo on a cable TV subscription, that's about $1 for every non-working, non-sleeping hour. If your movie theater charges $10 per 90-minute movie, spending every minute there that you aren't working or in bed is still less than $7/hr. Most leisure time activities repackaged for sale out there are targeted to lower-income households, so it's really difficult to burn up all your disposable income (at that level) just on typical middle-class entertainments without enlisting the help of dependents.

That 100hr work week essentially means that you need to have a trophy spouse and some kids that don't know you, so they can spend your money for you. No, thank you; I don't want that.


I couldn't have said it better myself. The one thing we can't buy is time.


The technology talent pool in America is just too small right now (even worse abroad)... and requires too many skills that aren't taught in school. On top of that, only the big firms can afford to apprentice as this article points out, but getting into them is difficult for most.

Short term these market dynamics appear to benefit the big firms, but long term it constrains the entire ecosystem. All the big firms need a huge ecosystem of competent little companies who handle integrations at a more local scale. I.e. Google needs small business people who know the webstack well so that Google can integrate its services with your business and sell you ads. So Google is incentivized to invest in community education because every one of those future hackers is a potential future customer.

If you want to differentiate in hiring, I'd say the main thing to offer people choosing between Google and you is leadership opportunities. Don't stick your techies in the basement -- offer then 1:1 time with top execs and owners so they can give the feedback they need to build better products.


> I'd say the main thing to offer people choosing between Google and you is leadership opportunities.

Agreed!


So now smaller companies (startups?) will be full of engineers who have been promised leadership opportunities? That's untenable and deceptive from my vantage. What happens in 2 years when only 10% achieve those promotions?

(Massive turnover and high recruiting costs for new "leaders".)


If the company grows, early stage individuals should all easily be able to become leaders somewhat automatically. If it doesn't grow, they can enjoy leadership and access to the top. Both can be satisfying when compared to big firms.


I think the "we run a buisiness, not a school" could be the answer to this guy's dilemma. Hiring diamonds in the rough and cultivating talent relentlessly is how the best engineers were found and kept in my limited experience at Apple, and it seems Google has an even stronger internal education culture.


It's also means that they are looking not for tech talent but for skilled labor. Highly skilled labor assumes no re-education for the current job but does not account for future work. If you are a master carpenter or a master mechanic then you probably have invested on tools, educating yourself on your own time. You are also probably specialized.

E.g. you are highly qualified at fixing/tuning Ferraris but Toyotas are n't your thing. So you go to a Ferrari tune up shop where you can spend the $500,000 salary. /s

IMHO, Tech talent on the other hand works completely differently. They are more about talent (i.e designing stuff, critical thinking, analysis skills) rather than rolling into a specific shop to fix a specific issue.

That's where there seems to be this problem with "run a business, not a school" that they have.


> Hiring diamonds in the rough and cultivating talent relentlessly is how the best engineers were found and kept in my limited experience at Apple, and it seems Google has an even stronger internal education culture.

Yeah, that was a weird statement in the article. Tech moves so fast that allowing for internal education needs to be a requirement at any company. I literally learn something new every single day. When I look to hire, I look for some raw talent and enthusiasm to learn because whatever the candidate knows right now will be obsolete in 12 months (except for CS foundational topics, but that's for a different post).


I live in flyover country, so we hire from a different pool. I'm not sure if this is a general rule, or if the Bay Area has sucked all of the talent out of the region, but I have yet to interview a competent graduate from the CS program down the street at Big State U. We've had better luck hiring from engineering and the applied sciences. Ceteris paribus, I'd prefer candidates with some theory background, but the ceteris are not paribus.


Probably because CS is the obvious route to a programming job, while doing something else for intellectual satisfaction speaks to being inquisitive.


There is something to be said for risk aversion, but I often encounter attitudes like the one in this blog post that seem proud they are willing avoid risk at any cost. It's irrational.

If every company only wants the best of the best programmers and adopts a "better a false negative than a false positive" attitude to hiring, then it is just economics that programmers who are not obviously first class are being undervalued. Translation: if every company wants programmers with a perfect git profile, you can get a programmer w/o a good git profile at bargain prices. Even when you price in the risk of hiring duds, with such an irrational attraction to top-performers, there is a huge opportunity to profit here.

Sure, no one should go seek out unnecessary risks, but I think companies should employ a little more cost benefit analysis. Training people is a risk. Hiring junior programmers is a risk. Hiring programmers from a second tier college is a risk. But risks are opportunities to innovate.

If you only want to hire MIT grads with 10,000 GitHub stars, fine, but don't expect to get a competitive advantage from this, because this is by and large what all your competitors are doing.

The company that learns to identify and retain new talent or manage the risks of hiring "B-team" programmers will be the one with the competitive advantage.


> Feel free to send me a link to your GitHub account. No resumes required.

Does anyone have some example github accounts for a talented web developer? Interested to see what a github account for someone who earns $500k looks like.


A Github account for someone earning $500k is probably completely empty, or barely touched. When you're getting paid that much to program, typically your attention is less focused on your side projects.


I think the $500k example is misleading. At that level of seniority, your open source work isn't your primary qualification.

What the author is pointing to is the $250k dev who just 2 years back was struggling to land a $90k job.


Two years out of college programmers are making that much in total comp at Facebook and Google. If there's no equity component, $500K is actually in the ballpark.


Do you have any data or source of this?


There are a couple documents floating around detailing software engineer pay at Facebook and Google. If you do the math on their equity grants, with the past stock growth, you can reach the same figure.


I would guess that the people making that kind of bank tend to not have GitHub accounts, or at best their fool-around-on-the-weekend projects on it.

That's a fuckton of money. I don't know how you make that unless you're in finance, self-employed as a high-end consultant, a CTO/senior architect, or a founder.


For $500k, a company could hire three excellent engineers. I don't care how good an engineer is, he won't be doing the work of two people, let alone three, especially in things like UI design/programming which is 95% grunt work. The reason FB and other big companies' products are the quality they are isn't because they have geniuses working for them. It's simply because they have thousands of workers and therefore can concentrate on all the most minute details and follow all the byzantine paths that regular companies simply do not have the manpower to do.

The author thinks he can find someone to pay $500k and this person will outperform multiple teams of dozens, hundreds, or even thousands of people. That's delusional and a horrible way to "lead" a company. Damn right he won't be hiring anyone with that $500k. Such a human being does not exist. Not at FB, not anywhere.


Some days I think about the 18-25% cut of first year salaries that recruiters are collecting, and I think about transitioning from being a technical person to being a technical recruiter!

Unlike most tech recruiters, I actually could vet candidates before presenting them, in theory generating higher quality candidates who are more likely to get placed. There's still a supply-side issue though...


It definitely seems to attract highly qualified people. I've dealt with a recruiter who holds a J.D. law degree and passed the bar to be real-estate attorney. Surely that cannot be easy/cheap in the US? (I'm in Europe). And she's an internal recruiter at that, so salaried with some target bonus I assume.


I'm just starting out in my career, but what do they mean by "good enough to work for us"? Is there a way to measure this metric? And how do I know if I'm there?

My personal understanding (as a web developer) had always been, someone who is "good enough" is someone who can build a system from the ground up, with the capability to handle requests at high capacity and manage performance. BUT, this would just be an advanced CRUD app and I fail to see how that would reach a salary of $500,000 a year.

It looks like ShellyPalmer has a special focus on machine learning and data science. Perhaps their requirements are beyond what I am even aware of.


> someone who is "good enough" is someone who can build a system from the ground up, with the capability to handle requests at high capacity and manage performance

Being a good developer (usually) doesn't mean writing especially performant code, at least not beyond what's noticeable in terms of the end user's experience. It means creating products with:

- intuitive database schemas

- clean code architecture

- good overall readability

- simplicity and optionality

Being a developer isn't much different than being any other type of writer. The best way to figure out if someone is likely to be a good developer is to ask yourself whether they'd likely be successful as a contributor to the New Yorker.


I agree with all of this, these are the most important skills for a developer, but none of these things are tested for in the typical programming interview.

If you want to min/max your stats, all that matters is mastering the 'Cracking the Coding Interview' style. So many companies cargo culting Google interview style such that it's now pretty dominant, at least in NYC.

On one hand you'd think this would be self correcting, more nimble companies would find more effective ways of interviewing. On the other hand, software development is one of the most fad driven industries out there.


My takeaway from the article is that they are looking for someone who is famous, at least as far as fame among programmers goes. I gather they are not so much concerned with your ability to write good code or solve particular problems, but your ability to market their products/services to your fan base. The article emphasizes having a large following on GitHub, and wants to see your GitHub profile specifically (i.e. to measure your popularity).

Same reason famous actors, athletes, etc. are paid more than others doing the same job: Their marketing ability brings more customers to the theatre, stadium, etc. That brings added value and the leverage from that brings added compensation.


You actually just broke down quite a few skill sets that can be qualified by experience or interviews.

* Build a system from the ground up => Understands how to build custom solutions with or without frameworks and pre-established libraries in order to reach the optimal business solution for the company/client which may include time and resource constraints

* Capability to handle requests at high capacity and performance => Understanding of development operations including but not limited to linux, networking, automation, cloud solutions, databases

Now the extent to which a developer has trained those skills would greatly effect earning potential however having them at a basic level would certainly qualify one for most dev jobs.

Machine learning and data science are particularly valuable because their is simply so much unexplored territory and so few candidates. $500k could easily be the salary of some of the primo researchers working for Uber, Google, Etc.


"Perhaps their requirements are beyond what I am even aware of."

It's just another consultancy business.


Yes. Sounds that they want a lone alpha wolf rockstar ninja to make another Youtube or Facebook asap but had learned $100 butget is not enough.


I don't want look hard, train on the job, or provide the best long-term career opportunities to candidates. Instead, I'll limit my selection pool to perfectly-tailored candidates that also happen to publish on GitHub.

Oh no, other companies are swooping the people I want based on their GitHub! Those candidates are my low hanging fruit, damnit!


TLDR (I think): Due to Github, recruiters can poach employees easily. As such, hiring anyone who has not peaked is useless, because he might be poached after training/getting better and we will have to compete with other (possibly more wealthy) employers to retain him.


One I would be very surprised if his consultancy actually pays an average salary of $500k for developers.

Also $500k is more than 1 in 300 developers make. Every billion dollar company in the world was built with people less talented than the ones your demanding. I would like to see what specific tasks a 1 in 300 developer can accomplish this his 1 in 10 or 50 peer cannot.


Look at Netflix for good examples of a $500k engineer.

What did Chaos Monkey require that a 1 in 10 peer could not have done? Technically? Maybe it wouldn't have gone smoothly, or maybe it wouldn't have been as fast, but I am fairly certain most decent developers (with sufficient sysadmin chops) could have built chaos monkey. But the reason that engineer is worth $500k is because of the unique value it added. Their job wasn't to build Chaos Monkey, it was to make Netflix operations more robust. They identified that they didn't know how their software would behave during infrastructure failure and found a way to better understand failure proactively.

1 in 10 engineers add value by writing code. 1 in 50 engineers build value by solving problems. 1 in 300 engineers add value by identifying and solving problems.


1 in 10 engineers are real smart guys who identify and solve problems all the time. What about the 1 in 300 is different? Is it technical knowledge? Is it the ability to sell his ideas to upper management?

Google would pay $10 million for a lawyer that would win a case against Microsoft for IP. Similarly defining a 1 in 300 developer as one that makes great contributions is problematic. You're no longer paying for the developer but for the outcome. And people are willing to pay a lot more for outcomes than people.


I kept waiting for the punchline that gave away the piece as satire. But... it seems 100% serious.

> In practice, we could train these workers, but not at market prices with added recruiter vigorish. We just can’t get enough value out of B-team players while they are in training

Does the author realize that this is the exact cause of his "problem"? Developers live in constant fear of "if you don't stay up to date, you'll never get another job". Combine that with the generally risky venture-backed tech climate, an at-will employment culture and the zeitgeist of youth worship and blatant ageism. All I can say is: you reap what you sew.

Turn this toxic culture around so that devs can feel comfortable that being a great engineer is enough, instead of chasing frameworks and books about algorithms.


Yep. Great article. Google and Facebook really have learned how to game the talent system with strategic open sourcing of tech. And you're right, it is Macchiavellian.

And here's how you, as a smaller tech company, can beat the system and snag great talent anyway: look for devs with expertise in technologies other than those created by Google and Facebook.

You've seen what lies behind the shadows on the cave wall. You know that the talent gold rush is not really about getting the right tech skills, but using tech to get the right people. Now make a bold move based on that knowledge and go with Ruby on Rails. Or Django. Or Ember. Or Intercooler. Or heck, even PHP, which Facebook uses but hardly has a monopoly on. Or even - dare I say it? - .NET!

Step off the hype train. Break the monopoly.


> In practice, we could train these workers, but not at market prices with added recruiter vigorish. We just can’t get enough value out of B-team players while they are in training, and by the time we help them become A-team players, their GitHub accounts and contributions will reflect their learning. At that point, they will be firmly on the radar of top-tier tech. And we would have played the role of pre-school for Facebook, Google, or Apple. Great for Zuck, Larry, or Tim, but not so great for us.

They create a culture that doesn't value the workforce, and then they wonder why people leave?


Personally I feel a mix of eagerness and skepticism. Just to rule out the bait-and-switch, this is $500k to write code? Not to travel half the time and bring in more sales? They say they want "React/Redux specialists, Unity developers, data scientists, and data engineers (proficient with TensorFlow), technical project managers (who used to do the above, but have evolved into managers), and technical account executives." The hero image is just some React.

If this is for real, I'm willing to apply. I've built web-based software for clients for 17 years. I can handle the tech, but also lead a team, manage a project, design products and features, learn a customer's problems and advise them, and offer creative solutions that bring massive value and savings. I'm a great fit for a consulting company. I do pretty well right now working for myself, but $500k would still be a big bump up. So I'm looking for the call-to-action, and it is . . . "Subscribe to the newsletter." Really? Who is this article for anyway? It is just one executive commiserating to others? It definitely doesn't seem to show ShellyPalmer in their best light: I don't see any solutions, just complaining and excuses. They are advertising their inability to hire the best people?

Offer me $500k to solve technical problems (and not leave Oregon), and I'll apply. But I can't even find a Careers page. I guess they feel I should have to work for it. That's fine, I'll tweet at you if you want, but in that case I'd like to see some proof first that this offer is for real.


Wow there's a ton about this that I'm reacting badly to.

* It's a jobs ad; it shouldn't be frontpaged and they're not paying anyone $500k.

* Nobody says "I want 100 steaks for 200 dollars and I couldn't find it; there's a steak shortage!!" Labor markets and scarcity are a thing, I'm sorry this person isn't getting (by their own admission) the same output from their few employees as the world's most valuable companies. I wonder how good their consulting is if their reaction to tech's labor market is "the world is rigged and most developers are useless or untrustworthy."

* I'd be curious to know what the author's tech chops are. There's no shortage of non-tech people who think building an app is "simple" because "I know what I want and explained it to you" and surely the issue, should problems arise, is that the developer was subpar. "I'd pay you, but you can't do the work." Please.

This is exactly the person you avoid in your career, life.


There might be a correlation between effective workers and large companies. A person who is willing to memorize "Cracking the Coding Interview" is the type of person who has his or her life on guided rails and would prefer the upper middle class of a large company rather than the scrappiness of a smaller company which results in poor/rich. Chinese culture especially has a long history of exam guided lives dating to ancient dynasties. Stereotypical desired professions like lawyers and doctors are also very credential-gated and similar.

So small companies are left with a much smaller pool of candidates, often less credentialed and much stronger willed. They cannot grow a workforce of highly credentialed/technical workers who do what they are told.

Are there mavericks who are also very technical out of passion rather than trying to oull their families out of poverty? Yes. But they usually aren't willing to play second fiddle.


Wasn't the who is hiring thread yesterday?


I miss the days of expertise, you expect doctors to specialize, why can't software developers specialize? I get the point but, its really hard to expect someone in the software industry to be top tier at something when they are expected to know everything.

Basically I think developers need more focus instead of the industry expecting us to know everything. I am not saying that we shouldn't know or try to learn different things, but its really hard to become the best when your spending your time on frontend, or backend or tweaking the database or algorithms there is just so much going on. people just need time, just like doctors need time to become a good doctor, developers also need time. People who really get this understand how to build teams and good engineers in which inevitably leads to a good product.


In reading this, I'm thinking to myself, they probably don't want to pay for this A-grade talent. It shouldn't be too hard to keep employees away from Google/FB/etc if you're place is really that great to work.

It's more likely the OP's employees don't like consulting, and the lifestyle of having to deliver unreasonable amount/quality of work in a short time that was over-sold to clients.

If they can get B-Players into their company, that's doing well in my book. I'm often stuck hiring C and D players because of the corporate pay rates my company offers, and lack of perks that make us not competitive around town.


...but is it remote? I would turn down a $500,000 a year job if it were onsite-only.


Or sometimes you can't accept it.

Yesterday who is hiring made me sort of depressed, I am in desperate need for work, yet all work I was qualified for was non remote in other countries, or semi remote, the few ones that allowed real remote required some random citizenship I don't have.

Seemly being born in the wrong place can heavily cripple a career.


The formula I've found is 2-3 months on site where you convince the employer of your value, integrity, professionalism, etc., then 1 month of partial remote work where you show an increase in productivity. Then the question of 'can I just remote' is often a cake walk.


If you meet the technical requirements then apply anyway, what have you got to loose. I doubt these people are getting flooded with responses, it may be they are more flexible than first appears.


So TLDR:

1. We want to hire experienced programmers for 500k

2. We don't want to train junior programmers to become senior programmers because they'll leave for BigCo.

3. BigCo. with bigger budgets are stealing such senior employees and somehow it's not fair

I'm still waiting for the "it's satire" post. That said, out of curiosity: why a Github account? If you are that good, and work that hard currently, you'll probably not have time for a Github account that'll land you a job anyway :/

Or are they looking for "branded" devs that work in open source? (because not all companies even allow for open source on stuff you work on)


This is the footballer hiring model again. At least in football there's a reason why you can't replace one Lionel Messi with half a dozen cheaper people, but are we really sure that this doesn't apply in software development? Is it really that non-parallelisable?


"Is it really that non-parallelisable?"

Yes. If you have a very complex problem, it won't help to just put more people to it. Rather the opposite.

Though there are also plenty of jobs for not-genius programmers.


Hire people and train them. This is how it worked for thousands of years, yet dbags like shelly think they should be able to skip this step.

Google, Facebook, etc., hire college kids and give them time to learn.

There is the difference. I'm so sick of the fucking idiots in this industry.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: