13 ms·
I'd say rather than practicing interview questions, work on a side project that really stretches your technical ability. And a hard project, something that you
by daxfohl 8y ago
I'd say rather than practicing interview questions, work on a side project that really stretches your technical ability. And a hard project, something that you don't even know where to start, not just "I'm going to rewrite this todo app in vue.js". I think that gives your brain more of a workout than droning through interview questions day after day. Even though you could say "you don't run marathons to practice for a sprint", just in my experience it works better. The interview practice websites are too easy to get distracted from, or look up the answer, or whatever, and your brain really doesn't get the workout that a solid long-term low level project gives it.
Plus, at the end, at least you have a project you've done.
- lucasmullens 8y agoI'd agree that doing projects is a better way to learn in general, but some level of practicing interview questions is needed when applying to companies that do whiteboard interviews. Projects can boost your resume and get you in the door, but they're not a huge help in passing some algorithm question.
- bradlys 8y agoUnfortunately, this doesn't translate to interviewing in silicon valley. It's a completely separate skill unless your job is explaining out loud various algorithms and data structures to other people to solve a variety of contrived problems. I'll admit I've done things that are close to this for real world situations but it's maybe once every month or 3. Not a situation for /most/ of us on a regular basis.
- daxfohl 8y agoNo, not a work project. Agree most of our jobs are pretty banal, figure out how to get this css to center correctly in IE6. Rather, selectively choose a side project to do that likely will involve some interesting data structures and algorithms. That will give your brain a really deep workout and it'll be more prepared to go through silly interview questions.
- badfrog 8y agoSadly there tends not to be much correlation between real life programming and interview programming. Most of the software engineers at my company feel that we couldn't pass our company's interviews because we're out of practice.
- daxfohl 8y agoReal life programming for work isn't really the "hard" programming I'm talking about. Create a language runtime, a distributed database, a video player, a network stack. I think if you can focus on something like this in whatever free time you have available, you're exercising your brain a lot more than the little leet speed drills.
- ethanburrell 8y agoI think that something that should be mentioned that these coding challenges are the norm for hiring out of college. It doesn't matter (at 90% of companies, from personal applications) that you have a resume/portfolio of cool and interesting project/experience. All companies count on this coding interview to screen you. Some companies give you rather outlandish questions to screen you on the first try. My cool personal projects have never been mentioned by a interviewer.
- daxfohl 8y agoI wasn't suggesting doing projects in order to talk about them at an interview (though if you can, then great!), but more about selecting challenging projects that give you more of a brain workout. I have found this more effective preparation for interview questions than just running through practice questions.
- kyleblarson 8y agohttps://twitter.com/mxcl/status/608682016205344768?lang=en https://twitter.com/mxcl/status/608682016205344768?lang=en
- daxfohl 8y agoYeah that occurred to me just after I submitted the post. I'll still stand by my own experience though. I felt so much more prepared on this latest round of interviews after having worked on a type inference engine side project for the previous couple months, than I ever did after spending a couple months stressing over leet. Just, brain felt stronger for whatever reason. And I think it makes sense too. When I conduct interviews, I look more for how is this person thinking about the problem, than can they solve the question in isolation in the allotted time. Because unlike leet, it's not in isolation. There's always some back and forth, and that's where I think leet's shallowness shows.
- joshuamorton 8y agoHomebrew isn't particularly technically complex and in the follow max even says as much. It probably isn't brain stretching.
- bubersson 8y agoI'd recommend actually doing both. Find a good project and make it work well. By this process you will hopefully uncover and learn practical details, skills, programming language, how to write high quality code... And learn Computer Science (algorithms, structures) to show that you are smart and can learn stuff and when given a problem you can solve it efficiently. When hiring, - we definitely check if you have something interesting on github - we ask both computer Science questions and then some more practical questions (e.g. if you are Web FE, then rendering some interesting situation, maybe optimizing page speed...)
- ndnxhs 8y agoI started on a side project after getting rejected from one job and the interviewer on the next job said they read the code on my project and said it looked great. This was a fairly difficult project that I'm still working on today. 8 months later and its almost ready to use :p