Productivity compared to which time in the past? If we compare productivity today compared to say 1960/1950 then we have definitely improved. We can manufacture at speed & scale. We can communicate with people across the continents like never before. We can work-from-home to a large extent than ever before. We can destroy each other at much grander scale like never before.
But like any system, any improvement in efficiency results in shifting the bottlenecks. It never truly goes away. The nature of the bottleneck may be different but its there. The things like "forms, compliance, process" are the new bottlenecks.
Technology is a means to an end. It cannot be the end itself (at a macro level). Tech is by humans, for humans and of humans. Humans will always be the centerpiece for time to come (unless AI becomes so good as they potray in sci-fi films/tv-series).
1. General purpose: Typical FANG like where hire first and then do team matching later
2. Targeted hiring: Companies want specific people and they try to recruit them
A sizable number of top open-source contributors get recruited are in #2. Eg. 1) Top contributors in Rust lang hired by AWS. 2) FANG companies targeting top AI researchers from academia.
One's open-source presence needs to be really prolific and the project has to make an large impact to be in #2 category.
For #1 category folks, your public profile does not matter that much (atleast for FANG companies)
Other way to think is #1 are treated as cattle, #2 are treated as pets.
The famous incident where author of homebrew was rejected by a top company because he could not invert a binary tree got in the wrong channel (#1) to begin with where he was treated as a cattle.
Note: Recruiter from FANG calling you still goes in #1 category for most people
> The famous incident where author of homebrew was rejected by a top company because he could not invert a binary tree got in the wrong channel (#1) to begin with where he was treated as a cattle.
It's apocryphal at best. The guy was rejected by Google, but was never asked about inverting binary trees, like he claimed.
(I can believe that he was rejected on some other technical trivia, no clue. But the 'invert a binary tree' thing never happened.)
It’s a charitable interpretation, but seems super reasonable. Around that time, I think “inverting a binary tree” was a bit of a meme/shorthand about software interviewing.
Was it? I thought that meme began from his post. To be totally blunt if you get asked to invert a binary tree in a FAANG interview, that’s very easy compared to most questions.
Interesting anecdote, where did you hear that? I remember the original source tweet that was something like, “invented homebrew but couldn’t invert binary tree so they rejected me.”
> But ultimately, should Google have hired me? Yes, absolutely yes. I am often a dick, I am often difficult, I often don’t know computer science, but. BUT. I make really good things, maybe they aren't perfect, but people really like them. Surely, surely Google could have used that.
To me at least, being a dick is a negative that outweighs making good things, especially for a large organization. Maybe google made the right call.
Right, Google actually has a 'no jerks' policy and values being a good team player more than pure technical brilliance. Being a good engineer gets you L4 (mid) or low L5 level at Google. Growing beyond that is mostly about soft skills and influencing other people - that's not compatible with being a dick. It probably wasn't the case for him in 2015 yet, but these days google has a mandatory 'googleyness' behavioral round that the guy would fail hard with that attitude even if he could invert the proverbial binary tree.
I dont think its unique to google that companies want to filter out people who are "dicks". Every company i have ever had an interview at has done behavioural interviews for that purpose.
I highly recommend interested readers to follow through to the Quora page. It’s more or less a public apology, and helped break me out of the echo chamber that occurs here and on Reddit related to interviewing at Google.
It looks like there are a bunch of programmers who think that having taken the first year uni course on data structures is more important than having experience actually building product and having it used by millions.
It's kind of silly. Most programmers out of school have a lot to learn about building product and actually getting a big project done - which they are supposed to learn on the job. At a place like Google. Somebody who knows this part already could probably spend some time on the job learning about data structures.
It's like these conventionally-taught programmers think they get to look down on somebody who actually built something cuz he's self-taught. (As a conventionally-taught programmer who is very comfortable with data structures I find that attitude aloof at best)
I have a traditional Computer Science background and I'm still intimidated to even apply to Google. I got out of bigCo Software Engineering in part because I wasn't interested in putting myself through the wringer of whiteboarding memorized solutions.
I'm also the guy that found low hanging fruit in a huge codebase to replace things like frequent linear array lookups with hash table lookups for 10x+ speed improvements in the build process. This is IMO precisely the type of capability that "Oh, that's O(n^2), surely we can do better. Is there any way to do this in O(1)?" is designed to tease out in the interview process. I did it! In a build process effecting 1000+ engineers, used to build for millions of shipped units! But talking about this in an interview makes eyes gloss over as we prepare to move on to sort algorithm trivia, how would I design search, or doubly linked list implementations.
Some implementations have O(n) access in the worst case.
Often people are interested in something like the 99.9999%ile case. And, of course, you can design hash tables with better worst case behaviour.
It's almost trivial to get a hash table with O(log n) worst case access: when you have a collision, just resolve it with a tree instead of a linked list.
With some more fancy math, you can also get O(1) amortized worst case behaviour with arbitrarily high probability that doesn't depend on your input data.
And this is where interviewing gets hard. Are we really going to not hire someone because hash table is O(n) in the worst case but O(1) on average. It seems like half the time there isnt a match, the interviewer is just as wrong as the candidate, and they are looking for someone who knows the same info as them, even if its half baked.
> It looks like there are a bunch of programmers who think that having taken the first year uni course on data structures is more important than having experience actually building product and having it used by millions.
To be honest, drilling down on all the stuff they teach you in first year helps you more in getting a job at Google than having lots of practical experience.
I'm inclined to believe that this is a problem with Google. But I am not sure you should trust my opinion: I am sure Google spent much more time and money and figuring out the right approach here than I ever laid my hands on in my whole life.
I'm not sure if the extra work is rewarded as much as you might think. For example, I was shocked to see a prominent open-source contributor hired into Google as an L5. Without going into detail, this person built projects used by many people reading this comment. Granted, I don't know what their comp or interview process was like, but 5 is basically an ordinary senior engineer level at Google.
Google hired me in 2006 (then 11 years of experience) as a 3. I didn't know any better at the time, partly because I was coming into the valley from the rest of the world.
I didn't find out just how screwed up this was until becoming part of the hiring process at Facebook... some seven or eight years later.
Wow Google tried a lot of mental gymnastics to down level me. Trying to convince me that higher levels at FB or other companies is equivalent.
That’s a whole other level though. Not surprising and it is hard when it’s a coveted company. I would’ve taken the down level if I didn’t have a better offer at another company.
Was he still subjected to same interview process where he has to prove his coding skills inspite of being prominent open-source contributor
Google don't want people who are generally great developers though. They want people with specific skills who can solve the complex compsci problems they think they have. Consequently they hire people who can invert binary trees rather than people who can just write good or popular open source code.
Google's failure to capture the public imagination is why so many Google products get killed off, so I reckon they're solving the wrong problems. If Google engineers were less inclined to think 'this is a hard problem that only very clever people can solve' and more 'this is a simple problem that needs a better solution' they'd launch more things people actually want to use.
This actually means Google would be far better off hiring the popular open source dev instead of (or as well as) the PhD in Binary Tree Gravity dev.
Yes, but my point is plenty of fairly ordinary engineers make it to L5 - it's nothing special. I feel uncomfortable going into this person's accomplishments, but other engineers I know were similarly shocked. If that and skipping some interviews is all being a leader in open source buys you, it isn't worth the extra effort from a bigCo career perspective.
You shouldn’t be shocked by that, there are similar stories where the maintainer of a project, used by most engineers at Google, couldnt get hired due to the lesser relevant leet code / design / behavioral interviews
There are plenty of good positions (at least in Europe) where they ask for an engineer who can work with tool/Lang x, and won’t ask you to invert a binary tree, but will ask you about what kind of projects you’ve worked on.
I thought that was what you meant by #2, until you mentioned that it required “really prolific” engagement with open source.
I don't know if hire first, team match later is a FAANG thing, I've worked for two of FAANG and neither did that, I was interviewed by and hired onto the team I ended up working on.
After interviewing with multiple FAANGs and receiving no offers, my current employer recruited me based on my LinkedIn profile for a role on new team. I have since started telling the FAANG recruiters “thanks for reaching out, but no thanks“. I guess that puts me in group number 2?
It's well known among people who pay attention to these sorts of things, but a lot of otherwise well educated people seem to think that all of North Korea is a primitive backwater stuck in the 50s lacking any kind of technical sophistication.
Next tweet: "Today is the best time ever to start a company. You might fail, you might succeed, it’s a crazy ride either way, and you’ll learn and grow more than at any job."
I do not fully understand but my interpretation: Try it anyway even if you are not cut out for it.
> Don’t start a company. You aren’t cut out for it. And if I can persuade you not to start a company by saying it in this tweet, definitely don’t start a company. You’re buying the economy-sized amount of effort and pain.
It is clear that specific sequence is to test if you are founder material. If you called BS on the first tweet and read the next tweet, you at least have the right mentality.
It's not gatekeeping. It's saying that the people who can persevere as founders are the kinds of people who intrinsically and deeply want to found something, and someone telling them they shouldn't do it wouldn't stop or impede them from doing what they already set out to do. They'd be doing it anyway, regardless of what other people say.
I think we'll have to agree to disagree that that's not gatekeeping.
Becoming an astronaut is far harder than becoming a founder, yet we wouldn't dream of telling children not to think about becoming one.
What other people say is an important force. The reason I mentioned Jessica is because much of her work has been to convince people who otherwise wouldn't become founders to start companies. I think she has more experience than either of us, and she doesn't seem to agree that the thesis here is true.
I didn’t see the tweet as gatekeeping, maybe just something stemming from survivorship bias.
What I got from it was that this is a challenge unlike other work related challenges. For one there’s no comp if things don’t work out, whereas anyone can find a job anywhere and get paid. You’re exchanging time and effort for something which may not turn out to be something people want to buy or use.
I assume it was just to make the argument more pointed; I skipped over the word "female" by accident and the message is unchanged.
If you wouldn't want to make this kind of discouragement with women founders, you wouldn't want to do it with men either, and I assume that's what sillysaurus meant.
Or you might fail and end up bankrupt and no medical insurance and a bad debt record and dooming your family to penury.
"Cut out for it" means you have a trust fund, rich parents, no financial obligations, and/or the right connections from having the right college degree or family.
One thing which has helped me is to listen to a podcast or any audio of your favorite topic while lying down. Initially your mind will try to remain attentive but after 20 min or so it becomes harder. After a while you will feel so sleepy that you would want to stop the audio.
I use an Android app for this called "Simple sleep timer";
I set it to Fade out and close the youtube app after 30 minutes.
I've listened to the episodes of the same production for almost 3 years now; The Ricky Gervais show / podcast.
Hilarious and lighthearted, always takes my mind off of anything else.
Oh, thanks, I might try that. I do remember a period years ago when I had the habit of falling asleep in front of the TV. I would put the TV on a timer and at 2-3am the sudden silence when the TV turned off would wake me up.
Yeah, I also have found the abrupt jolt of silence (from podcast or audiobook) can jolt me awake, and also that all-night droning on also disturbs me and wakes me up.
Apps that can slowly fade out the sound are great. The Audible app fades out very quickly, but even that quick fade is enough not to wake me if I am already asleep.
(If I am awake, though, I find that it disturbs my "almost asleep" vib, so I wish they had an option to fade out over x minutes.)
One factor I think is span of control. If the director you mentioned starts getting project statuses from 15+ teams then the director might not scale. The director will not be able to scale for things like appraisals, burning issues, hiring.
But like any system, any improvement in efficiency results in shifting the bottlenecks. It never truly goes away. The nature of the bottleneck may be different but its there. The things like "forms, compliance, process" are the new bottlenecks.
Technology is a means to an end. It cannot be the end itself (at a macro level). Tech is by humans, for humans and of humans. Humans will always be the centerpiece for time to come (unless AI becomes so good as they potray in sci-fi films/tv-series).