Project Title

student picture

Scott Shirley

Contact: LinkedIn

Deconstructing a Technical Problem

Companies routinely use technical interviews when hiring software developers. As the tech industry has grown, these technical interviews have become increasingly competitive. Even students who have done well in courses, have to study explicitly for these technical interviews over several months.

Our solution to addressing these concerns was to develop a course designed to help third and fourth year students practice common types of interview questions. These lessons so far consist of 117 common interview questions from the website LeetCode.com in various topics that include strings, arrays, linked lists, binary search trees, and more. To date, the course has had 196 registered students.

Solving these problems, often under a time limit and in front of others, can be intimidating. Knowing how to implement a specific data structure or being able to calculate runtime complexity of an algorithm is only half of answering technical interview questions. Students need to be able to thoroughly explain their process while arriving at their solution. Technical interviews are as much about showing that you are able to work through a problem as they are about finding the correct solution. Often there is more than one solution to a problem and having the ability to explain one’s choice is a crucial process.

This project aims to assist UW students prepare for technical interviews by not just practicing coding problems, but offering detailed explanations as to how the solution was obtained. Practicing for a technical interview usually involves working through several common questions and checking for accuracy. Our approach seeks to help students develop the skills required to decompose any problem and solve it systematically. Developing this skill set assists students in succeeding at technical interviews. Additionally, this course has helped students develop problem-solving skills that will help them throughout their education and careers in CS.