Live data from Hacker News

Ask HN: Joining Big Tech in One’s 40s

news.ycombinator.com

111–120 of 203 posts

Re: Ask HN: Joining Big Tech in One’s 40s

#111
post #93

Earlier quoted context omitted.

L4 is an intermediary level between new-to-industry junior (new grads generally start at L3) and mid-level (L5). In many companies, it's expected that people will reach L5 within some time period. Failing to have grown skills and project scope to L5 level after extensive time in the industry could be interpreted by some as poor motivation or career growth planning - their thinking is that if you've been doing the sam…

> Failing to have grown skills and project scope to L5 level after extensive time in the industry The projects I've worked on in my career haven't been considered in the interview process. They just expected better results on their standardized interviews (algo + system design) compared to a more junior candidate. I don't think the question they ask correlate at all with candidate experience, even for the system desi…

I'm definitely not going to defend the industry's interview processes' effectiveness at consistently and/or accurately extracting useful information (or even just the information that it is intended to). When faced with the output of the process indicating this "flat" trajectory (however inaccurate that may be), that's just how some people interpret it.

Re: Ask HN: Joining Big Tech in One’s 40s

#112

Earlier quoted context omitted.

You advice is sound but incomplete. > if you still understand your undergraduate level algorithms course and the corresponding vocabulary, then you know what you need to know speaking from experience, this would not get you nowhere near the level you have to be for passing the Google interview (or any other FAANG interview for that matter). You need to study long and hard in addition to solving OJ problems and famili…

I've just finished the 2nd year of my CS degree. In about 3 minutes I came up with: 1) create an empty string, call it "S2" 2) loop over each char in original string 3) if the char isn't in S2, add it to the end of S2. If the char is already present in S2 then lexicographically compare the prior S2 verse S2 with this char shifted to the end. Keep the lower ordered one. This took about 3-4 minutes of thinking and is O…

[deleted]

Re: Ask HN: Joining Big Tech in One’s 40s

#113
post #93

Earlier quoted context omitted.

L4 is an intermediary level between new-to-industry junior (new grads generally start at L3) and mid-level (L5). In many companies, it's expected that people will reach L5 within some time period. Failing to have grown skills and project scope to L5 level after extensive time in the industry could be interpreted by some as poor motivation or career growth planning - their thinking is that if you've been doing the sam…

Is there a guide for what type of projects FAANG expect for L5+? There was just a thread here about a guy slacking for multiple years, so are their L5s even working on complex projects themselves? An individual might be trying to get into a FAANG in order to get experience with technically complex projects of a certain scope. A lot of roles out here at non tech or smaller firms are just building and maintaining simpl…

Basically, an L5 (or equivalent level at other companies) is supposed to be largely independently competent (but not necessarily excel) in most engineering areas. They understand the context enough to determine which projects are important (including those they might make), they can identify stakeholders and communicate status and needs well enough, they can project manage enough (or make a project manager successful), they can work through others to a reasonable degree, and so forth. They'll know those areas they'll never be good at, and have some mitigations in place for those. They're self-motivated, think about their work holistically, and generally will navigate the delivery of the project without guidance - but when they need it, they'll make sure they get it.

From an interview point of view, they're probably looking for examples of that independence and self-motivation (ie, not just doing what someone told you to do), and also the step beyond just writing the code towards more holistic ownership (things like "created a new test harness along the way", "did a survey of developers", "made sure there was a killswitch", "created a rollout strategy", "convinced another engineer to share review and support responsibilities").

Re: Ask HN: Joining Big Tech in One’s 40s

#114

Earlier quoted context omitted.

You advice is sound but incomplete. > if you still understand your undergraduate level algorithms course and the corresponding vocabulary, then you know what you need to know speaking from experience, this would not get you nowhere near the level you have to be for passing the Google interview (or any other FAANG interview for that matter). You need to study long and hard in addition to solving OJ problems and famili…

I've just finished the 2nd year of my CS degree. In about 3 minutes I came up with: 1) create an empty string, call it "S2" 2) loop over each char in original string 3) if the char isn't in S2, add it to the end of S2. If the char is already present in S2 then lexicographically compare the prior S2 verse S2 with this char shifted to the end. Keep the lower ordered one. This took about 3-4 minutes of thinking and is O…

Here's what I came up with after experimenting with handling the leetcode example ("given cbacdcbc, produce acdb") manually:

Build a suffix tree ( https://en.wikipedia.org/wiki/Suffix_tree ) of the input with two modifications:

1. When adding a letter to the suffix tree, skip any paths that already contain that letter. (Thus, each path will contain a given letter no more than once.)

2. Include accounting information in each node specifying the length of the longest suffix including that node.

From wikipedia, construction of an ordinary suffix tree takes time and space linear in the length of the input string. At this level of analysis, I'm just hoping that modification #2 doesn't affect that. #1 certainly won't, in that it involves spending less time and less space than otherwise (by bailing out early under some circumstances).

Once the tree is constructed, just walk it, selecting at every point the child that is lexicographically earliest among all children with the maximum suffix length.

Observation: constructing this tree by hand really feels exponential; I suspect that the linear time and space requirements lean on an assumption that the size of the alphabet is finite.

Observation #2: Based on the comment timestamps, this took about 40 minutes of thinking. I think it's a good solution, but it probably wouldn't look great in an interview. (Also, handwaving "construct a suffix tree" is fast, but actually producing the code to do it takes extra time.) :/

Observation #3: assuming your solution is correct, it is essentially a reduction by dynamic programming of this one, only doing the calculations that are necessary to produce the lexicographically earliest string where I produce them all.

Re: Ask HN: Joining Big Tech in One’s 40s

#115

Earlier quoted context omitted.

You advice is sound but incomplete. > if you still understand your undergraduate level algorithms course and the corresponding vocabulary, then you know what you need to know speaking from experience, this would not get you nowhere near the level you have to be for passing the Google interview (or any other FAANG interview for that matter). You need to study long and hard in addition to solving OJ problems and famili…

I've just finished the 2nd year of my CS degree. In about 3 minutes I came up with: 1) create an empty string, call it "S2" 2) loop over each char in original string 3) if the char isn't in S2, add it to the end of S2. If the char is already present in S2 then lexicographically compare the prior S2 verse S2 with this char shifted to the end. Keep the lower ordered one. This took about 3-4 minutes of thinking and is O…

input: "bcabc"

  1. "b"
  2. "bc"
  3. "bca"
  4. "bca"
  5. "bca"
What am I missing?

Re: Ask HN: Joining Big Tech in One’s 40s

#116

Earlier quoted context omitted.

You advice is sound but incomplete. > if you still understand your undergraduate level algorithms course and the corresponding vocabulary, then you know what you need to know speaking from experience, this would not get you nowhere near the level you have to be for passing the Google interview (or any other FAANG interview for that matter). You need to study long and hard in addition to solving OJ problems and famili…

I've just finished the 2nd year of my CS degree. In about 3 minutes I came up with: 1) create an empty string, call it "S2" 2) loop over each char in original string 3) if the char isn't in S2, add it to the end of S2. If the char is already present in S2 then lexicographically compare the prior S2 verse S2 with this char shifted to the end. Keep the lower ordered one. This took about 3-4 minutes of thinking and is O…

That solution as written is O(n^3)

This is not an easy problem.

Re: Ask HN: Joining Big Tech in One’s 40s

#117
post #48

Earlier quoted context omitted.

As you get older you'll realize that "adults" don't know any better than you do. Consider that moving forward. Nobody has all the right answers, and even fewer people know what the right answer is for you. I'm reminded of this quote by Baz Luhrmann: > The most interesting people I know didn’t know at 22 what they wanted to do with their lives, some of the most interesting 40 year olds I know still don’t. Incidentally…

My dad will be 75 in a little over a week. I told him I still don't know what I want to be when I grow up (I'm 43). He said he still didn't know.

A close family friend is a recently retired federal judge, about that age, maybe a little older. He and his family are some of the unpretentious, intelligent people that I've met. He said the exact same thing.

Re: Ask HN: Joining Big Tech in One’s 40s

#118
If you don't care about dealing with the headaches of enterprise/corporate and know what you are getting into then sure. Not for me. I've tried multiple times after 15 years in various startups (and .edu). The kultur of a large company is a deal breaker. I'd suggest looking into consulting or , if you can do it, find a large company that needs 'SME' and 'Fixer' skills (if you have those). You can then approach work offsite or telework varying your vista on the basis of what project needs your skills. Defense contracting has a lot of this type of work.

Re: Ask HN: Joining Big Tech in One’s 40s

#119

I joined Google at the age of 50. Just send a resume. They are not trying to surprise you and want you to do your best. Consequently, not only do they tell you what to expect from the interview process, the recruiter will send you a PDF that talks through what to expect along with a reading list you can use to prepare. (For example: cracking the coding interview and CLRS are on it.) That said, I just went in cold. If…

You advice is sound but incomplete. > if you still understand your undergraduate level algorithms course and the corresponding vocabulary, then you know what you need to know speaking from experience, this would not get you nowhere near the level you have to be for passing the Google interview (or any other FAANG interview for that matter). You need to study long and hard in addition to solving OJ problems and famili…

[deleted]

Re: Ask HN: Joining Big Tech in One’s 40s

#120
post #104

Earlier quoted context omitted.

The proposed solution isn’t optimal but it works. Not sure what you think is wrong with it? An optimal solution would be something like - create an array of 26 or 52 bytes depending on whether this is case sensitive - iterate over the string and set the byte corresponding to each letter’s position in the alphabet to 1 - iterate over the byte array and for each 1 you encounter print out the corresponding letter

Won't that give you the letters in alphabetical order, which may not be correct? See example 2 on the problem page.

> Won't that give you the letters in alphabetical order, which may not be correct?

But that's what "lexicographical" means?

> In mathematics, the lexicographical order is a generalization of the way words are alphabetically ordered based on the alphabetical order of their component letters.

> This generalization consists primarily in defining a total order on the sequences (often called strings in computer science) of elements of a finite totally ordered set, often called an alphabet.

https://en.wikipedia.org/wiki/Lexicographical_order

Post reply on HN