Oh, I didn't want to talk about technology. What I meant, just because good people leave a company, doesn't mean that there are new openings for lesser skilled people.
Just like good people flocking to a company don't necessarily diminish the company's appetite for hiring lesser skilled people, it might even make hiring `minions' for the `rockstars' more attractive, if they are complementary.
But this is how rockstars are made. You hire in as a minion, you work hard, learn everything you can, and after a few years you can leave a rockstar. I doubled my salary each time I moved for the first three development jobs.
Or maybe it just means try harder to follow the momentum and go for those upstarts?
Years ago, I thought, "Why would I want to bust my butt to join Goog or similar and be a cog in a giant machine?" It seemed to me like you try hard to prove yourself to get in just to be on the bottom of the totem pole where being recognized would be very hard. So I didn't bother and worked at other smaller companies.
In retrospect, it seems like your best move in the Valley IS to just try to get in to the biggest, best name, with the most talent flowing into it. IF and when you want to leave for somewhere smaller (or start your own), you'll be well served for having done it, networked, gotten the resume boost, etc.
So while yes, it may be true that the updraft opens up spots, maybe if you get one, you'll be looking back and seeing that during those years, having Goog or similar on the resume will not be as boosting to your career as Uber or AirBNB et al.
>your best move in the Valley IS to just try to get in to the biggest, best name, with the most talent flowing into it.
even better to get into such a company before it becomes that "best name". Unfortunately, on couple occasions i wasn't able to recognize it - they were such ugly ducklings back at the time :)
That is false. Travis and Garret just wanted to get a ride quickly (in '08). When they started in '10 neither wanted to run a 'limo company' as they described it, bringing in Ryan Graves. After Travis saw what it could be, he stepped in.
"It seemed to me like you try hard to prove yourself to get in just to be on the bottom of the totem pole where being recognized would be very hard. So I didn't bother and worked at other smaller companies."
Is recognition one's main objective when working at such companies?
Some people do it for the pride. But for many the chance to work on some great projects and learn from arguably the best in the industry is an opportunity which is too hard to pass up.
In the UK they have articles where companies complain about skill shortages and developers with unrealistic salary expectations. The laws of the supply and demand are slow to move some markets.
Yes, and those articles are totally unconvincing drivel. If there really was a shortage, and the role is truly crucial, then they'll increase their offer. But the UK is not going to be able to fill those roles when engineers can get an offer in SV from Google, Facebook, or Apple.
"There's no shortage of smart, hardworking engineers. There's a shortage of smart, hardworking engineers willing to work for very little money." ~ David "Pardo" Keppel
If you're having trouble hiring, it's probably because you're not paying enough. It turns out that talented people are worth paying a lot for.
But nobody says we need to increase the number of visas for CEOs and VCs. That's because the cultural expectation is that those people make lots of money. Engineers need to stop selling themselves short, or allowing MBAs to short them, as if they are mere "code monkeys."
This argument doesn't make a lot of sense to me when it comes to bigger companies like Google, MS, Apple, etc. etc. Do you know how much H1Bs at these companies make? The data is open, you can look at how much Google pays them in the Bay Area for example. To say that Americans WON'T accept such salaries is ridiculous to me
UK startups aren't flooded with easy VC money to the extent that Valley startups are. That's how they're able to throw around big salaries and equity, it's almost funny money. Once these companies mature and have to come back to the reality of managing costs, the talented engineers will once again bail to the newest hypergrowth startups.
I'm sure startup money is a large part of it, but bottom line is that corporate culture at-large still hasn't adjusted to the reality that great technical people can make or break your company and that maybe they actually are worth the kind of money that used to be reserved for management types or sales.
They've been struck down in court in Ontario, Canada but that doesn't stop companies from shoving the wording into employment contracts and being insistent on it.
Keep in mind, you also have to be technically strong and organizationally savvy to get to this level.
For starters, as a baseline, you need to be very sharp at coding interview style questions. This isn't fizzbuzz. Based on my tech interviews at google and a few other companies, I'd say a question like [1] "find the sub matrix with the largest sum in an NXM matrix" is something they really will expect you do complete at a high level of accuracy in 45 minutes at a whiteboard, including run time efficiency improvements. You'll get some help, and they won't be complete sticklers about syntax, but they will largely expect you to writing accurate code that would compile and run properly without too much help. You'll need to be able to follow through on questions like this in a areas, such as binary, algorithms and data structures, and some operating systems issues (threads and processes, in particular), along with good overall design skills. While it is absolutely possible to get to this point without a CS degree, and many people do, it requires an academic talent, mindset, and ability to focus.
That's the baseline. Generally, that's the ante that gets you in the game. I think there's a way around, which is to create your own projects that are so high profile that you get hired directly into a company at a high enough level that you bypass the entry exams. However, this is rare, and plenty of people who have excellent track records are still filtered out at the interview level.
After that, you need savvy. My observation after 15 years in the field is that the people who are considered technically exceptional are also organizationally savvy. They're not fakers, at all, they really are good technically, but they understand how to pursue the good projects and avoid the bad ones. It becomes self-affirming after a while, their reputation allows them this kind of selectivity. But they don't get stuck on legacy projects that don't enhance their skills. They are able to navigate organizations well, and this requires political and social savvy.
In short, these people are both very strong technically and have the social savvy to get high profile projects where they will continue to learn and gain recognition for their achievements. This combination is relatively rare in humans.
I will agree that this kind of person has opportunities in the valley that are available only to a lesser degree elsewhere, and may not be available at all in some places.
[1] NOT an actual question from my interviews, but at about the level I'd say I experienced (maybe even a bit easier). I highly recommend the book "cracking the coding interview", just be aware that yes, really, they will expect this sort of thing in 45 minutes at a whiteboard with accuracy and efficiency.
My first thought, about the sub-matrix interview question you posed, is that it's a younger person's game. The last time Linear Algebra entered my mind was in the undergraduate course I took in 1986. I would never even think to prep for questions like that because nothing except basic set theory and logic has been necessary in my career the last 25 years.
(Although, I'm told that the programming language design course I'm taking this Fall will require a refresher in Linear Algebra. Hopefully it comes back to me.)
Good observation about the technically exceptional people also having organizational savvy. They generally know how to send the message that they played a part in successful projects without seeming to take undue credit. The message gets picked up by the project/product managers and a reputation starts.
I don't mean to sound too cynical when I mention organizational savvy. These people don't create the illusion of a contribution, they really make the contribution.
It just isn't all based on technical skill. Experience has shown me that people (managers, senior developers who have delegating authority, and so forth) have trouble resisting the temptation to take the interesting work for themselves and assign the difficult, risky, and often dreary and dead end work elsewhere. Socially savvy developers are able to avoid these projects and instead end up on teams where they do interesting, relevant work that aligns well with their own interests and builds a lasting skill set. They don't end up debugging the old perl script that migrates data from peoplesoft to oracle and/or porting it to python. They end up on relevant and interesting data science, UI, or infrastructure projects, where they can learn tremendously. They are able to work on projects that align closely with their own personal interests and passions, which keeps them motivated (for instance, if they aren't into UI or Javascript, perhaps they work on a high profile machine learning or infrastructure project). They don't emerge two years later with deep understanding of a legacy system that mainly irritates the organization, they emerge with a skill set that aligns closely with the exciting new direction an organization wants to take.
Again, I don't want to sound cynical, they also earn this through excellent technical skills, hard work, and meaningful contribution. But it does require social and organizational savvy to make sure your career trajectory doesn't get derailed. Almost every time someone looks up in the org and says "yeah, well, that programmer is just a technical badass", this is true, but I guarantee you there was exceptional social and organizational savvy behind that ascent as well.
I didn't take your comment as cynical. Perhaps I worded my response poorly. I didn't mean to imply anything insidious about the people who are great technically and understand organizational "politics". I appreciate people who are bright along those varied dimensions much more as I get older.
Yeah, sorry, the way I wrote that below your comment probably made it seem like a response. It didn't seem like you were implying anything insidious, I just read your comment and worried that I might have sounded cynical, and posted below what you had written.
That problem has nothing to do with linear algebra. I like it! Presumably the submatrix size is limited, or there are negative numbers. Personally I'd precompute the submatrix sums S[r,c] for row 1...r and col 1...c in r*c steps, which will then allow you to give the sum for any submatrix in constant time.
If you expect to work on projects like Google Maps/Earth, Android, search, images (machine learning), cardboard VR, gmail, etc. etc. and don't have an understand of algorithms or data structures, then Google isn't really the place for you.
You can't expect "frameworks" or libraries to do everything for you
> technology companies wage war on one another for top prospects by doling out six-figure salaries
First, how far does a "six figure" salary
go when living within commuting distance
of a job in Silicon Valley? Can such
a job buy a house, two late model cars,
and support a wife and family, at
at least a moderately high standard
of living, while saving for
emergencies, education for the kids,
and retirement? Right, I thought not.
Second, early in my career in a hot
job market, my annual salary was a little
over six times what a new, high end
Camaro cost. And where I was living
the cost of living was not especially high.
So, to do that now, say, a Camaro
for $50,000, would need
$300,000 a year plus another
100% for Silicon Valley, $600,000
year, plus more for higher
Federal taxes now, plus more
for higher California taxes,
entry level, non-management.
Are people getting that in Silicon
Valley? I thought not.
Third, Silicon Valley is still the HQ of
H1-B fraud, right? I thought so.
Fourth, in a successful startup,
other than founders and
a few of the early employees,
how many of the employees ever
see any significant financial
gain from their stock? Only a
tiny fraction? Thought so.
Fifth, what's this stuff about
"talent"? Can that be measured
by SAT scores, college grades
in computer science, good
projects in computing successfully
completed, a world class research
university Ph.D. in applied
math with published work in
nearly all of the topics
in data science? Will HR even look at
such things? I thought not.
Instead they want why manhole
covers are round? And they
want skills -- Linux,
Java, Python, etc., to hack
code, 100 hours a week,
on a laptop, at
a folding table,
in a big room,
with all the tables
packed with other
coders? I thought so.
Question: Why does the NYT
publish such absurd, misleading,
potentially harmful propaganda?
I agree, it probably is time to retire the phrase "six figure salary" as a shorthand for "high pay". In San Francisco, the median housing price is well over a mil now, and daycare costs tend to run about $25,000 per kid. The median salary for a dental hygienist in SF is, according to US News "Best Jobs" (in turn, based on BLS data) is safely in the "six figures" at $112,970 (http://money.usnews.com/careers/best-jobs/dental-hygienist/s...)
I have no problem with good pay for dental hygienists, but this does provide a little context for what "six figure" really means in a brutally high cost region.
45 comments
[ 2.5 ms ] story [ 90.1 ms ] threadJust like good people flocking to a company don't necessarily diminish the company's appetite for hiring lesser skilled people, it might even make hiring `minions' for the `rockstars' more attractive, if they are complementary.
But that had nothing to do with better people leaving my target companies.
Years ago, I thought, "Why would I want to bust my butt to join Goog or similar and be a cog in a giant machine?" It seemed to me like you try hard to prove yourself to get in just to be on the bottom of the totem pole where being recognized would be very hard. So I didn't bother and worked at other smaller companies.
In retrospect, it seems like your best move in the Valley IS to just try to get in to the biggest, best name, with the most talent flowing into it. IF and when you want to leave for somewhere smaller (or start your own), you'll be well served for having done it, networked, gotten the resume boost, etc.
So while yes, it may be true that the updraft opens up spots, maybe if you get one, you'll be looking back and seeing that during those years, having Goog or similar on the resume will not be as boosting to your career as Uber or AirBNB et al.
even better to get into such a company before it becomes that "best name". Unfortunately, on couple occasions i wasn't able to recognize it - they were such ugly ducklings back at the time :)
Is recognition one's main objective when working at such companies?
Some people do it for the pride. But for many the chance to work on some great projects and learn from arguably the best in the industry is an opportunity which is too hard to pass up.
Ha-ha, can't even keep the catering staff! Time to wake up and pay the market wage.
> In addition, a nimble recruiter from a much-talked-out start-up can still move faster than even the most competitive companies like Google.
And reply to every email, instead of leaving candidates waiting for weeks.
"There's no shortage of smart, hardworking engineers. There's a shortage of smart, hardworking engineers willing to work for very little money." ~ David "Pardo" Keppel
If you're having trouble hiring, it's probably because you're not paying enough. It turns out that talented people are worth paying a lot for.
And its not if Chartered Engineers (PE) earn anything like say a senior hospital consultant or a Barister.
And its not if Chartered Engineers (PE) earn anything like say a senior hospital consultant or a Barister.
For starters, as a baseline, you need to be very sharp at coding interview style questions. This isn't fizzbuzz. Based on my tech interviews at google and a few other companies, I'd say a question like [1] "find the sub matrix with the largest sum in an NXM matrix" is something they really will expect you do complete at a high level of accuracy in 45 minutes at a whiteboard, including run time efficiency improvements. You'll get some help, and they won't be complete sticklers about syntax, but they will largely expect you to writing accurate code that would compile and run properly without too much help. You'll need to be able to follow through on questions like this in a areas, such as binary, algorithms and data structures, and some operating systems issues (threads and processes, in particular), along with good overall design skills. While it is absolutely possible to get to this point without a CS degree, and many people do, it requires an academic talent, mindset, and ability to focus.
That's the baseline. Generally, that's the ante that gets you in the game. I think there's a way around, which is to create your own projects that are so high profile that you get hired directly into a company at a high enough level that you bypass the entry exams. However, this is rare, and plenty of people who have excellent track records are still filtered out at the interview level.
After that, you need savvy. My observation after 15 years in the field is that the people who are considered technically exceptional are also organizationally savvy. They're not fakers, at all, they really are good technically, but they understand how to pursue the good projects and avoid the bad ones. It becomes self-affirming after a while, their reputation allows them this kind of selectivity. But they don't get stuck on legacy projects that don't enhance their skills. They are able to navigate organizations well, and this requires political and social savvy.
In short, these people are both very strong technically and have the social savvy to get high profile projects where they will continue to learn and gain recognition for their achievements. This combination is relatively rare in humans.
I will agree that this kind of person has opportunities in the valley that are available only to a lesser degree elsewhere, and may not be available at all in some places.
[1] NOT an actual question from my interviews, but at about the level I'd say I experienced (maybe even a bit easier). I highly recommend the book "cracking the coding interview", just be aware that yes, really, they will expect this sort of thing in 45 minutes at a whiteboard with accuracy and efficiency.
(Although, I'm told that the programming language design course I'm taking this Fall will require a refresher in Linear Algebra. Hopefully it comes back to me.)
Good observation about the technically exceptional people also having organizational savvy. They generally know how to send the message that they played a part in successful projects without seeming to take undue credit. The message gets picked up by the project/product managers and a reputation starts.
It just isn't all based on technical skill. Experience has shown me that people (managers, senior developers who have delegating authority, and so forth) have trouble resisting the temptation to take the interesting work for themselves and assign the difficult, risky, and often dreary and dead end work elsewhere. Socially savvy developers are able to avoid these projects and instead end up on teams where they do interesting, relevant work that aligns well with their own interests and builds a lasting skill set. They don't end up debugging the old perl script that migrates data from peoplesoft to oracle and/or porting it to python. They end up on relevant and interesting data science, UI, or infrastructure projects, where they can learn tremendously. They are able to work on projects that align closely with their own personal interests and passions, which keeps them motivated (for instance, if they aren't into UI or Javascript, perhaps they work on a high profile machine learning or infrastructure project). They don't emerge two years later with deep understanding of a legacy system that mainly irritates the organization, they emerge with a skill set that aligns closely with the exciting new direction an organization wants to take.
Again, I don't want to sound cynical, they also earn this through excellent technical skills, hard work, and meaningful contribution. But it does require social and organizational savvy to make sure your career trajectory doesn't get derailed. Almost every time someone looks up in the org and says "yeah, well, that programmer is just a technical badass", this is true, but I guarantee you there was exceptional social and organizational savvy behind that ascent as well.
If you expect to work on projects like Google Maps/Earth, Android, search, images (machine learning), cardboard VR, gmail, etc. etc. and don't have an understand of algorithms or data structures, then Google isn't really the place for you.
You can't expect "frameworks" or libraries to do everything for you
First, how far does a "six figure" salary go when living within commuting distance of a job in Silicon Valley? Can such a job buy a house, two late model cars, and support a wife and family, at at least a moderately high standard of living, while saving for emergencies, education for the kids, and retirement? Right, I thought not.
Second, early in my career in a hot job market, my annual salary was a little over six times what a new, high end Camaro cost. And where I was living the cost of living was not especially high. So, to do that now, say, a Camaro for $50,000, would need $300,000 a year plus another 100% for Silicon Valley, $600,000 year, plus more for higher Federal taxes now, plus more for higher California taxes, entry level, non-management. Are people getting that in Silicon Valley? I thought not.
Third, Silicon Valley is still the HQ of H1-B fraud, right? I thought so.
Fourth, in a successful startup, other than founders and a few of the early employees, how many of the employees ever see any significant financial gain from their stock? Only a tiny fraction? Thought so.
Fifth, what's this stuff about "talent"? Can that be measured by SAT scores, college grades in computer science, good projects in computing successfully completed, a world class research university Ph.D. in applied math with published work in nearly all of the topics in data science? Will HR even look at such things? I thought not. Instead they want why manhole covers are round? And they want skills -- Linux, Java, Python, etc., to hack code, 100 hours a week, on a laptop, at a folding table, in a big room, with all the tables packed with other coders? I thought so.
Question: Why does the NYT publish such absurd, misleading, potentially harmful propaganda?
I have no problem with good pay for dental hygienists, but this does provide a little context for what "six figure" really means in a brutally high cost region.