That's the way to do it, I think. In my own technical interviews, I pose (relatively) simple questions that require some problem analysis, a strategy discussion, and then some coding and testing, with a goal of testing aptitude for basic programming abilities like modularization, indirection, recursion, defensive programming, unit testing, etc. I keep things interactive and collaborative and see how much the candidate can do for themselves.
Asana Engineering Interview Guide
11–20 of 152 posts
Re: Asana Engineering Interview Guide
#12I don't understand this. Why do they not want to see how well a candidate performs the tasks that they will be expected to perform on the job? Does this not result in them selecting for the wrong set of skills/knowledge?
Re: Asana Engineering Interview Guide
#13Earlier quoted context omitted.
Yes! Would be interested in seeing how much coding they ask for when interviewing for devops or ops positions. Some orgs require only scripting, some go so far as to want application engineers who also know everything about AWS for devops/ops roles. Disclaimer: I already asked via their google form for this information to be added in their docs.
I haven't followed the recent updates to our interview process closely but we traditionally looked for general knowledge over specific knowledge. I'm not sure how much that has changed recently though. Edited In Response To Parent Edit: Thanks for asking! We should definitely make it clearer if there are differences per role.
Re: Asana Engineering Interview Guide
#14Re: Asana Engineering Interview Guide
#15> We’ll ask you to solve some coding questions in a language and text editor of your choice. Feel free to bring your own laptop, or we’ll be happy to provide one. Notably, we ask candidates not to compile or run their code during this exercise, and not to refer to online resources. Every time interviewing comes up, I have this funny feeling about letting people look things up vs. whiteboarding them out. Reading this…
> They'll pass over people who are exceptionally good at searching / synthesizing information.
I also admire that they are upfront about this, but the attitude in general rubs my classical engineering self the wrong way.
"[R]eason[ing] about things from first principles" is not the same thing as having those first principles memorized. That was one thing my undergrad taught me repeatedly. Engineering isn't about memorizing formulas, it is about learning what those formulas mean, how to use those formulas, and when to apply them to a task at hand. Software engineering should be no different. Expecting people to solve hard and novel problems with no resources whatsoever is ludicrous.
Re: Asana Engineering Interview Guide
#16Re: Asana Engineering Interview Guide
#17Was expecting to then see a list of specific resources that a candidate could use to become prepared and confident. Instead, the guide provides a high-level overview of "algorithms", "data structures", and "modeling" and refers me to "HackerRank and Interviewing.io" for tips on how to prepare.
This seems like it could be improved. You value learning -- so give candidates something to learn and see if they can do it.
> Our goal is not to simulate day-to-day software development — where we read docs and write lots of tests!
I feel very confident in doing day-to-day software development. I do not feel as confident speaking about abstract hypotheticals in front of a whiteboard.
Re: Asana Engineering Interview Guide
#18I had an onsite interview for a new grad engineering position at Asana recently. It's true that they test you on technical problems you don't know the answer to; sometimes it seems like they tested me on technical problems that had no answer. One of their interviewers, who was in charge of both conducting a one-on-one with me and explaining the programming questions to me, was very friendly but also had a hard time c…
I think this a common problem. Many companies let a single interviewer has huge influence on hiring decisions. What if the interviewer himself/herself had some bias that s/he wasn't aware of?
Re: Asana Engineering Interview Guide
#19Much more interesting is the guide that this blog post mentions at https://asana.com/eng/interview-guide .
I don't really see whats interesting about this either way. Lots of places you interview at tell you what the interview is going to be like and what you are expected to be familiar with. This is just 'write code and we'll be testing you on data structures and algorithms!' There's some flowery language there about having a genuine desire to want to hire you unlike those 'other evil companies!'... sounds like the same…
Re: Asana Engineering Interview Guide
#20Earlier quoted context omitted.
I haven't followed the recent updates to our interview process closely but we traditionally looked for general knowledge over specific knowledge. I'm not sure how much that has changed recently though. Edited In Response To Parent Edit: Thanks for asking! We should definitely make it clearer if there are differences per role.
"looked for general knowledge over specific knowledge" - incidentally, I was rejected because I could not answer (to the interviewer's satisfaction) how to implement an in-memory LRU cache. I made some good recommendations but the interviewers were expecting a very specific answer which exactly matched http://www.programcreek.com/2013/03/leetcode-lru-cache-java/
This is one commonly thrown BS regarding interviews. At the end of the day it is all about one-dimensional usual algorithmic questions.
Regarding LRU cache, I think this is one of less crazy interview questions. In one phone interview, I had to solve a DP problem, code it perfectly and pass all the test-cases on HackerRank in less than twenty minutes. I am not certain how many developers out there can pass such interviews without months of preparation in such situations. Tech interviews are basically programming contests. I am not against programming contests or algorithmic questions. But it seems the interview questions are getting crazier day by day.