7 ms·
To properly prepare for these interviews you have to invest quite a bit of time. At this point in my life (late 20s), my time is one of my most valuable resour
by nbroyal 13y ago
To properly prepare for these interviews you have to invest quite a bit of time. At this point in my life (late 20s), my time is one of my most valuable resources. So, the last thing I want to do is spend that time effectively preparing for a data structures and algorithms exam. Each time I sit down to brush up on the details of Prim's algorithm or the exact implementation of quicksort, my eyes glaze over and I start thinking about how I'd much rather be building or tinkering with something. So that's what I end up doing. The interesting thing is that actually building stuff is good enough to get you an interview, and, even though you've proven that you can actually code, you get funneled through the same inane interview process.
And here's the kicker: none of this truly indicates if you have an exceptional software developer on your hands or not. I've seen (read: personally interviewed) people who've aced the current, en vogue style of questioning who turned out to be awful developers and co-workers. Meanwhile, I know several excellent engineers who were rejected. Everyone knows the process only kind of works.
SV loves to complain about a talent shortage. And maybe there are pipeline problems that need to be addressed. However, why not invest more time in finding a process that's more effective with the talent that's already out there? It always seemed like an obvious place to start, IMO.
- 31reasons 13y agoI feel exactly the same. I can master any and all graph algorithms under the sun if I want to but why? Just for a job? I would rather be building things.
- davidbyttow 13y agoThe idea is to get in the door. Unfortunately, the bouncer is extremely flawed and often gets it wrong. But once you're in, you should refocus on building things.
- 31reasons 13y agoI just don't have that much drive to get a job. Maybe I underestimate getting a job at google or similar company.
- kamaal 13y agoThe only problem with big companies is, no matter who they are on an average large set ups are almost the same. There are some minor variations here and there. But your net experience will converge or move around the same point. I don't know much about Google. But from whatever I've heard. The awesome projects where all this nirvana level work happens are very difficult to get into and bulk of the work is really maintaining legacy system. Or in other words, its your usual large company. There is a possibility that the experience is marginally better. But as I said will on a average converge to any large corporate experience.
- thewarrior 13y agoBut they pay way more right ? That has to count for something .
- kamaal 13y agoThat is why you must contribute what they deserve and nothing extra.
- alberich 13y agoDo they? I've heard (I must confess it was years ago) that google paid less. People went there because it was cool and all that hype.
- stonemetal 13y agohttp://jacquesmattheij.com/Programmers+Salaries+at+google+250k+and+up http://jacquesmattheij.com/Programmers+Salaries+at+google+25... Claims 130 is about average engineer salary at the big G.
- base698 13y agoI think with equity and bonuses it ends up being much, much higher with million/year being possible.
- kamaal 13y agoAdding to that its not ever worth that much trouble. 1. Master algorithms. 2. Get a job at <insert a big famous web company>. 3. ??? 4. Get rich. What exactly is 3) ???. Really if you are joining a big company. Whatever that company is. Way to financial safety is not mastering algorithms and data structures. Its more like knowing how to do politics, being your manager yes men etc. And very rarely are you ever going to get some work where its going to demand some algorithms mastery.
- rdtsc 13y agoFor CS graduates from some big name colleges that go to work on Wall Street or other "finance" it is: 1. Master algorithms 2. Get a job at <...X...> & Co. 3. Use Excel all day everyday 4. Get rich.
- taude 13y agoI interviewed at 7 investment banks on Wall Street after college. Never took any of the jobs, however, I had friends who worked on Excel spreadsheets that managed 100s millions in capital. This always amazed me.
- rdtsc 13y agoThey just want smart people in general. CS or not doesn't matter. It still baffles me that they ask algorithms and CS questions then sit in you front to Excel.
- WalterBright 13y agoFor an entry level job fresh out of college, I'd be interested in seeing a person implement algorithms. For a more experienced job, I'd look for a person who knows that these algorithms exist and can quickly look up the details. For a top level person, I'd look for skills at organizing and dealing with large code bases using best practices.
- marceldegraaf 13y agoExactly! This is why we, at my job, only hire software engineers after a (paid) two-day test period in which they actually build some new feature on one of our products. Nothing too fancy but interesting enough for them to be a challenge and representative enough for us to see what they're capable of. At least as important: they will have lunch with us, talk with us, have fun with the rest of the team, ... This allows us to very rapidly see if a person really fits our team.
- NamTaf 13y agoHow do you cope with people who are presently employed but want to interview? Do you expect them to find two days of absence from their present employer to test themselves at your company? I mean for me that's no problem, but I don't live in the US and therefore have pretty liberal employee leave arrangements. I know that many companies in the US are a lot harder on giving out leave. That said, it wouldn't surprise me if this issue is minimised in the tech sector with their progressive business approaches.
- gizmo686 13y agoI've never been in the job market yet (still in school), but I have seen some of the hiring process for teachers at my high school. For every position they are hiring, there would typically be 2 or 3 candidates who spend the day in the school (including teaching a class). Is getting 2 days off of work really that difficulty (if you plan far enough in advance)?
- Tloewald 13y agoYes it's terrible. If you work in the US and have kids for which you take any level of responsibility chances are you can barely keep up with a typical schedule and have very little leave to play with. Pulling two days out of your ass for a job interview is almost impossible. For a sufficiently awesome job, sure.
- NamTaf 13y ago
- reledi 13y ago> Each time I sit down to brush up on the details of Prim's algorithm or the exact implementation of quicksort, my eyes glaze over and I start thinking about how I'd much rather be building or tinkering with something. So that's what I end up doing. Nailed it. Another interesting thing I noticed about myself in technical interviews is that I have a lot of trouble doing things that I would have no trouble with if I'm tutoring someone. Perhaps it's the anxiety, and practice will surely help, but see above, I'd rather spend my time tinkering with stuff than preparing for interviews.
- marblar 13y agoHas anybody here ever actually been asked to exactly implement quicksort?
- stephencanon 13y agoYes, by Microsoft in 2001. (Strangely, by a non-technical recruiter who wouldn't have known if it were correct or not anyway; apparently he was trying to "gauge my confidence".)
- deleted 13y ago[deleted]
- sushantsharma 13y agoMore than once. Also, merge sort, heap sort, and some problem specific variations of these.
- peterbotond 13y agoquicksort, shellsort, then implement it for parametric type.
- lsiebert 13y agoI am not even sure what implementing it for a parametric type means... can someone point me to a link?
- MrQuincle 13y agoI totally agree. I happily turn down a company that requires me to do C/C++ exams in the application process. I know my strength, which is coming up with new algorithms, or implementing them straight from a scientific paper, and most often efficiently enough to run on resource-limited robots. I know a lot of languages and technologies, which necessarily means my knowledge of those languages cannot all be in-depth. If I have to implement quicksort for a job interview I am applying for the wrong position. IMHO it's like asking a poet for the number of words (s)he can rhyme with "cat". :-)
- nodemaker 13y agoThinking from an employer's perspective, if you cant gather up enough motivation to prepare for the interview process and solve those non-interesting problems, how will you do all the shit work that will inevitably be assigned to you when you get the job?
- groby_b 13y agoIf the job your interviewing for requires dealing in algorithms, having your eyes glaze over while you look at quicksort means you're not a good fit. (Really. There are plenty of people who enjoy looking at algorithms and their implementation) Obvious note: Many jobs _don't_ require those skills, they're simply cargo-culting their interview questions. In both cases, you've learned something valuable about the potential employer.