{"id":4847,"date":"2017-08-02t09:00:14","date_gmt":"2017-08-02t09:00:14","guid":{"rendered":"\/\/www.catharsisit.com\/?p=4847"},"modified":"2017-08-02t09:00:14","modified_gmt":"2017-08-02t09:00:14","slug":"behind-the-scenes-the-magoosh-engineering-exercise","status":"publish","type":"post","link":"\/\/www.catharsisit.com\/blog\/behind-the-scenes-the-magoosh-engineering-exercise\/","title":{"rendered":"behind the scenes: the magoosh engineering exercise"},"content":{"rendered":"
stressful, inconsistent, and opaque. these are all words used to describe most engineering interviews. at magoosh, we want to provide a better experience to engineering candidates, so we\u2019re striving to create a more transparent process from start to finish. as part of that effort, i\u2019d like to share some behind-the-scene details about one important stage of our interview process: the engineering exercise.<\/p>\n
below is an overview our our general hiring process for any position. (you can also read about it in more detail in our full magoosh hiring process<\/a> blog post.)<\/p>\n the engineering exercise comes at the questionnaire<\/em> stage. we\u2019ve sought to create an exercise that\u2019s both representative of the skills a candidate would use at magoosh and helpful to us in assessing the candidate\u2019s experience.<\/p>\n <\/p>\n we ask candidates to complete two questions: a programming question and an architecture\/design question. for the programming question, we give the candidate a file and ask them to write code that is ready for production and code review. for the architecture question, we describe a challenge that we\u2019ve faced and ask the candidate to share how they would approach that challenge.<\/p>\n the first iteration of the exercise was far from perfect\u2014we received a number of questions, and we\u2019d see submissions we didn\u2019t expect. it didn\u2019t take us long to realize our instructions left something to be desired. over time, we\u2019ve taken candidate feedback and edited our instructions to make the exercise more clear. for example, we previously didn\u2019t explain that we wanted production-ready code, so some candidates solved the programming question by writing a quickly thrown-together script. we plan to continue improving the exercise as we get more feedback.<\/p>\n <\/p>\n originally, we estimated both questions would take a total of three hours to complete, so we asked candidates to set aside a three-hour window to complete the exercise. we received feedback both from candidates and from people we had hired that the short window created unrealistic stress, which is not what we wanted. based on that feedback, we now ask candidates to complete the exercise within 24 hours. that way, all candidates have the same amount of time but there isn\u2019t an unrealistic time pressure to complete the exercise exactly within three hours.<\/p>\n <\/p>\n our most senior engineer, zack mayeda<\/a>, grades the engineering exercises. with the help of others, he\u2019s created a rubric and grades against the rubric so that each exercise is graded on the same criteria. our hiring team also anonymizes as much of the candidate\u2019s information as possible before handing the exercise off to him, so he can evaluate the work with as little bias as possible.<\/p>\n <\/p>\n when designing our exercise, we knew it would be impossible to create a process that was 100% perfect, but we still wanted to run a test to see if it was at least directionally accurate (one of our core values is data > intuition). so, i asked two talented senior engineers from another company to complete the exercise and then put their submissions (stripped of their names and information) into the queue along with other candidates\u2019 submissions. if those engineers scored poorly, then we could be fairly certain that there might be something wrong with our exercise or rubric. fortunately, they both scored very well, which gave us some confidence that our exercise was a useful competency test. (as an aside, zack was very excited about the candidates, until i told him that they weren\u2019t actually applying…sorry, zack!) all this said, we still acknowledge that our exercise isn\u2019t perfect and will probably generate some false negatives and false positives. again, we\u2019re dedicated to continuing to improve the process based on feedback we receive.<\/p>\n <\/p>\n if a candidate does well enough on the exercise, we move them forward to the phone<\/em> stage of the interview process. during the phone interview we may ask questions about why they made certain decisions. if a candidate doesn\u2019t do well on the exercise and doesn’t make it to the phone interview stage, we\u2019ll let them know we\u2019re pursuing other candidates and give them the option to receive feedback on their work. we know feedback makes us all better, so we offer it to all candidates\u2014not just those who make it all the way through to the end of the interview process.<\/p>\n <\/p>\n <\/p>\n interested in working at magoosh? check out our open positions<\/a>.<\/em><\/strong><\/p>\n if you don\u2019t see an open position that\u2019s perfect for you, please submit your resume via the general application<\/a>.<\/p>\n\n
the questions<\/h2>\n
timing<\/h2>\n
grading<\/h2>\n
testing our test<\/h2>\n
feedback<\/h2>\n
tl;dr<\/h2>\n
\n
\n