At Workship, we’ve streamlined your job search through the Workship Qualifier which includes a technical quiz and a technical interview. If you get through that, you directly get called for in-person interviews for the opportunities you apply for.
We came across a lot of candidates curious about what “the Workship Interview” entails and how best they could prepare for it. So, we decided to take the concerns to our founder, Dr Sandeep Deshmukh. Here’s what he had to say.
Is the Workship Interview similar to the technical interviews we go through at various companies?
Yes and no. Depends on which company you are talking about. There are aspects of the interview that are similar to what you experience in any technical interview but it is different too. Overall, our aim is to evaluate you in three dimensions. Given that we pose a real-world problem, we try to understand how you map that problem into a computer science problem and propose a solution. Secondly, we see how you convert your thoughts (proposed solution) into a working, clean and modular code and test that with simple data. And at last, we evaluate how well you are communicating during the entire process.
In the first step, we share the written problem statement with you and you are expected to go through it and ask relevant clarifying questions. This is the time for you to get clarity around the problem and ask for situations that are possible or not possible. You need to express your assumptions if any.
Then, you have to come up with a plausible solution to the problem and discuss the approach you’d be taking with your interviewer. At this step, you both discuss the data structures you’d be using, its complexity, brainstorm alternate data structures that can be used and their complexity. Once the expert and you agree on the approach, you move on to code it.
And finally, you convert your proposed solution to the actual code that is readable, clean and modular. You are free to choose the language and the editor you like to work with. We suggest that you use the editor that you are the most comfortable with. At this stage, we expect you to be as vocal as possible about what you are doing so that the expert interviewing you can nudge things in the right direction if they find you deviating. Remember, you can browse the web if need be. While coding, we want you to be at ease and code how you would in your day-to-day life.
How did you decide on this process? What is the rationale behind it?
To begin with, my team members and I researched the best practices from across the world. We then surveyed hiring managers and tried to understand their perspective and expectations. And finally, we used our experience of working with tech startups for the last couple of years. Using data and information from all these sources, we found a common pattern and developed our secret sauce, which I will choose not to disclose.
How much time do I have to finish my code? And what if I am not able to do it within the said time?
Well frankly, we have not really demarcated a fixed time for the discussion and coding and I let the experts use their discretion on this. However, in an ideal situation, the interview would be an hour-long where you will have 30 minutes to discuss the said problem and the other 30 for coding. With that said, this is not set in stone. The problem-statements are designed keeping the time and these considerations in mind, so you would most likely be able to finish the task in time. More than that, the approach and the skill to write a clean readable code are what we are judging you on, so don’t let this bother you too much.
Who would be interviewing me?
Our interview panel has veterans in the software product industry who have themselves built large and scalable distributed systems. They have built high performing teams and interviewed hundreds of candidates. Workship interviewers have worked in companies like Google, Microsoft, Cisco, and have also contributed to the growth of several up-and-coming startups Also, all the interviewers undergo extensive training with Workship and have expertise in conducting the process, Workship-style.
What are the evaluation criteria?
You are evaluated on three major factors. First, is the problem-solving. Given a real-world business scenario, you have to understand it and solve the same using computer programming. It’s not that you need to know everything. Interviewers would help you in the right direction. You need to pick up hints and move in the right direction.
Secondly, we assess your coding style. You are expected to write clean and readable code and be able to test it with simple test data. And as I said earlier, for the brevity of time, you are encouraged to assume/simplify a few things as long as they are communicated explicitly to the interviewer.
And finally, we evaluate your communication skills. Throughout the interview, the questions you ask, the way you explain what you are coding, and the discussion you have with the interviewer help us gauge this. You are expected to be enthusiastic, vocal and should be able to comprehend the discussion.
Any pointers which would help me in coding?
Don’t get locked down with very fine details in the coding. The key is to communicate them with the interviewer and move on, mark them as ToDo etc. For example, first of all, try to come up with the structure of the code, then fill in the essential parts first and then the second level details. It’s important to complete the basic approach than spending time on a particular part of coding.
Another suggestion would be to think about how you can test the program with the right values rather than spending time on how would you get that data. You can simply hardcode the data
Will I get feedback on my performance?
Yes, definitely. We always share constructive feedback based on your interview with you. All interviewers map the feedback to instances in the interview to give you a clear picture of your strengths and areas of development. For instance, possible feedback would be, “You need to refresh your understanding of complexity as you didn’t seem very confident with your responses for the complexity related questions.” This is our way of helping you prepare for the in-person interviews that lie ahead after our evaluation.
What is the best way to prepare for the Workship Interview?
First and foremost, I think you should refresh your basics of data structures and algorithms. You must know various data structures, how to use them in different situations and their complexity. Considering the fact that you are expected to solve a real-world problem, you should have a strong understanding of where to use what data structure. Additionally, you are also expected to compare and contrast them in the discussion. I also recommend that you have a clear understanding of time and space complexity too.
Can you suggest some resources to use for preparation?
Well, there are always websites like HackerRank or Leetcode that you can go to. But my personal favourite is the book, Cracking The Coding Interview. It is the best guide to prepare you for any technical interview.
Hope you have a better understanding of our interview process now. Did we miss out on something? Feel free to leave a question you want us to ask our founder, Dr Sandeep Deshmukh, in the comments section. Alternatively, you can also mail us at firstname.lastname@example.org with the subject line “Query-Workship Interview” and we will add your question to the list above at the earliest.