Earlier quoted context omitted.
> Having never needed to build my own sorting algorithm in 14 years of coding, Neither have I. What I have had to do is recognize when I could do what I needed to do without sorting the array, understand various requirements when I'm writing comparison functions, understand why std::list::sort exists when std::sort is right there, debug a stalling mapreduce job, recognize when a library I'm using has done a stupid an…
> The engineer that cannot write a sorting algorithm is the one that designs an API that fundamentally requires server-side session state that grinds to a halt at ten QPS I've come cross more than a few "can write a sorting algorithm" engineers that nevertheless design APIs requiring server-side session state, or that have gone ahead and implemented a sorting algorithm embedded in the server-side HTML template. Knowl…
Google Tech Dev Guide
231–240 of 250 posts
Re: Google Tech Dev Guide
#232Earlier quoted context omitted.
Have you studied cracking the coding interview before? If so, then I think you’ve probably seen similar problems. I find these problems very annoying and I code a lot of clever algorithms in my research. But none of it is have the strong scanning variety, I mean, except lexing in a compiler. And that’s how I would solve this problem in any case: I would just construct a scanner for D that would simply add to the stat…
I've never specifically studied for programming interview questions, or read that book. Of course, when somebody asks a fun problem, online or something, such as here, I'll try to figure it out. And I also find "string problems" to be the worst, I think they're a particularly bad genre of algorithms question. My claim was a very weak one, too. It was that somebody who never heard the problem before can get better tha…
You've also never been through a FANG interview, according to your LinkedIn profile. I've been through several (successfully), and conducted well over a hundred. It is very unlikely anyone can pass them without extra work to prepare.
Re: Google Tech Dev Guide
#233I have been putting off a Google interview for a whole year now. I have real experience building Cluster Filesystems, Distributed Caches, TCP/IP Control plane software and low latency Ad platform for more than a decade. Sounds good on paper, but I can guarantee I cannot solve most of these puzzles without actually solving them beforehand. Why? Because I do not have cycles or time to solve these on my own. I have a sy…
Re: Google Tech Dev Guide
#234Earlier quoted context omitted.
I've never specifically studied for programming interview questions, or read that book. Of course, when somebody asks a fun problem, online or something, such as here, I'll try to figure it out. And I also find "string problems" to be the worst, I think they're a particularly bad genre of algorithms question. My claim was a very weak one, too. It was that somebody who never heard the problem before can get better tha…
>> I've never specifically studied for programming interview questions, or read that book You've also never been through a FANG interview, according to your LinkedIn profile. I've been through several (successfully), and conducted well over a hundred. It is very unlikely anyone can pass them without extra work to prepare.
Re: Google Tech Dev Guide
#235Earlier quoted context omitted.
If you couldn't solve that question, maybe you shouldn't work at Google... def valid(S:str, word:str) -> bool: s = S for l in word: pos = s.find(l) if pos == -1: return False s = s[pos+1:] if not s: return False return True if __name__ == '__main__': D = ["able", "ale", "apple", "bale", "kangaroo"] S = "abppplee" in_s = {len(w): w for w in D if valid(S, w)} keys = list(in_s.keys()) sorted(keys) print(f"longest is {in…
Yeah, whenever I see a question like that one, I think it's pretty straightforward but then I wonder if my straightforward solution isn't the "brute force" solution and the interviewer isn't looking for some tricky "elegant" solution. Still, if I were asked that in an interview, I'm sure I'd put together something like your solution; I can't think of a "better" way to solve it.
Re: Google Tech Dev Guide
#236Earlier quoted context omitted.
This is the CS equivalent of "maths are useless since I'll never use them in real life". Even if you are a software engineer who works exclusively on Javascript you need to understand the basic of how things work.
Most math is useless to 95% of the population. I can't remember the last time I used any of the teachings of my calculus heavy undergrad.
Re: Google Tech Dev Guide
#237Earlier quoted context omitted.
I have worked on similar kinds of problems where obscure details about sparse matrix algorithms were required. My team ended up writing a large in-house search engine and ranking framework that combined image and text search, all in Cython, using various types of bit packed indices for fast filtering and our own implementation of a series of sparse matrix algorithms sort of ripping out CSC and CSR internals for a han…
I don’t think it’s hazing, Google internal culture frowns on that kind of alpha male coder oneupsmanship. its mostly likely a residual of the fact that people fresh out of school actually don’t have a lot of projects or experience to talk about. If you ask me what the perfect interview is? I’d say, send me a bunch of github repos you participate in and let me review your code, bugs, and discussions with collaborators…
Re: Google Tech Dev Guide
#238Earlier quoted context omitted.
I don’t think it’s hazing, Google internal culture frowns on that kind of alpha male coder oneupsmanship. its mostly likely a residual of the fact that people fresh out of school actually don’t have a lot of projects or experience to talk about. If you ask me what the perfect interview is? I’d say, send me a bunch of github repos you participate in and let me review your code, bugs, and discussions with collaborators…
Calculus probably isn't the best example, because you really don't need it. Real engineers need it, but if software engineers got a different sequence in discrete math I think they'd be better prepared for the job market. I ended up doing a math concentration so I got both Calc 1-3 and some nice discrete courses like number theory, combinatorics, and abstract algebra that were super useful, and in my opinion we could…
If you do work in statistics, then calculus matters quite a bit, especially for transformations of variables and deriving the formulas for the probability distributions you’re working with. In Bayesian methods, even if you use autodifferentiation tools to automatically sample from your model, you still often need to do a bit of calculus here or there.
Likewise, if you ever find that you need to implement your own model training algorithms, you’ll probably need to calculate gradients (for example, the gradient of custom log-likelihood functions) analytically before writing them as software functions.
Calculus is pretty pervasive in professional software engineering. You don’t need to be an expert, but should have working knowledge and ability to dig into references and work through it.
Re: Google Tech Dev Guide
#239"Given a string S and a set of words D, find the longest word in D that is a subsequence of S." Found under "Foundations of programming" -- this is exactly the type of problem I'd expect as question one under this section. When it's made by Googlers, that is. I make a lot of cool stuff day to day, and usually that requires a lot of code and knowledge about programming and topics that are rather advanced (currently I'…
Also, many times this puzzles are useful in tech interviews to see if the candidate has good analytical skills, which is what is needed.
Re: Google Tech Dev Guide
#240I have been putting off a Google interview for a whole year now. I have real experience building Cluster Filesystems, Distributed Caches, TCP/IP Control plane software and low latency Ad platform for more than a decade. Sounds good on paper, but I can guarantee I cannot solve most of these puzzles without actually solving them beforehand. Why? Because I do not have cycles or time to solve these on my own. I have a sy…
There are no “puzzles”, but problems to solve. I expect that things like this string search are entry level / new grad kind of question. Someone more senior with more experience should have different kind of problems to solve. I certainly didn’t have a bad experience when interviewing at Google and Facebook. One question were not very concrete, but it was interesting to walk through and solve. I didn’t just “know” th…