What Exactly to Study Before Your Next Coding Test

Read this before taking your next coding test.

Written by Michael Hines
Published on Dec. 10, 2021
Brand Studio Logo

Coding tests aren’t supposed to be as intimidating as they often feel. After all, developers are asked to prove their skills with a job offer on the line. The stakes may be higher, but the key to acing a coding test is the same as that required to pass any exam in high school or college. Simply put: If you actually know your stuff and study, you’ll be fine.

At least that’s the gist of what we got from four local software developers who gave us their advice on both how they prepare for coding tests in general and how they prepared for the coding tests they took for their current companies more specifically. While the general preparation advice was similar, the content of the tests themselves varied from company to company. 

For example, the test Senior Software Engineer Perry Hertler took at Vericred focused on an integration and testing, was timeboxed and involved a member of the company’s engineering team. Nazmus Sarwar, an engineer at Holler, had the opposite experience. He was given a test to complete at home overnight and on his own.

Every developer we spoke with works for a company that is currently hiring engineers, so if you’re actively seeking a new opportunity and want a bit of an edge in the interview process, continue reading.

 

It’s not about solving every problem perfectly9 Common Coding Interview Questions You Should Know

 

Image of Kela Kealakai
Kela Kealakai
Software Engineer II • DailyPay, Inc.

Coding tests can be nerve-wracking for even the most seasoned software developers. Kela Kealakai was not a seasoned dev when she took a coding test for DailyPay. Kealakai had just graduated from Hack Reactor, and she has some advice for bootcamp grads who, like herself, may doubt their skills when it comes time to take a “real” coding test.

 

Describe the last coding test you took. Why did you take it, and how did you feel going in?

The last coding test I took was a take-home React challenge right before I interviewed here at DailyPay. At the actual interview, I also had to do what I would describe as a pretty common coding challenge, the kind that seeks to discover whether you understand how to use something functionally or if you truly grasp a concept.
 

Sprinkle on that syntactic sugar, but make sure you have the explanation to back it up.
 

How did you prepare? Did you feel equipped to handle the coding test as you walked in?

I had just finished my bootcamp with Hack Reactor when I interviewed. I had spent much of the last three months drilling coding challenges, watching sorting algorithm videos and really lighting up those GitHub green squares. On one hand, I was as prepared as I was ever going to be without actually experiencing the life of a professional software engineer. On the other hand, I was terrified.

Without professional experience, I was a blade that hadn’t been honed by the grindstone of real business consequences. Maybe I was actually a fraud and my code was really bad but everyone was too nice to tell me! What a humiliating way this would have been to find out. Unfortunately, to paraphrase Tim Kreider: If we want the rewards of being a software engineer, we have to submit to the mortifying ordeal of people looking at our code.

 

What advice would you give to someone preparing for a coding test at DailyPay?

Be confident and open to criticism or suggestions. No one’s code is perfect, but if you can explain your thought process, engage with other perspectives and adapt to useful suggestions, you are a much more valuable candidate than someone who is more technically proficient. Having capacity for learning means that your skill is capped only by the effort you’re willing to put in.

Also, if it’s a take-home, get a little cheeky with it. I included some flourishes that I wasn’t fully confident using yet but which I knew were commonplace in professional coding environments or felt were more efficient or clean than the long-form way I was more comfortable writing. Sprinkle on that syntactic sugar, but make sure you have the explanation to back it up. Like my grandma always used to say, “No seasoning without reasoning.” Note: She did not say this.

 

 

Image of Jeffery Lee
Jeffery Lee
Software Engineer • Box

When it comes to preparing for coding tests, Jeffery Lee, a software engineer at Box, recommends both brushing up on your own past project work and doing a comprehensive review of general engineering topics. The goal isn’t to study so much that you have the answer to every question, but to build the foundational knowledge required to answer most questions. In addition, Lee also recommends hitting the books and practicing interview questions online.

 

Describe the last coding test you took. Why did you take it, and how did you feel going in?

The last coding test I took was a system design interview for Box, which was part of my virtual onsite interview panel. My recruiter was able to tell me what each interview would consist of and whether it would be more data structure and algorithm-based, system design or behavioral. I was also given guidance on how to approach problems and what to do if I got stuck. During the interview, I was presented with a design problem and asked my interviewer some clarifying questions to narrow down the problem’s scope.

After, we used a whiteboarding application to jot down some of my ideas on the problem, including diagrams of high-level classes and functions that could be a solution. Lastly, we used a text editor to write some of my ideas as code to further break apart the problem and get a picture of what the solution as code would look like. I felt good going into the interview because I was given context on what the interviews could consist of and advice on how to work with my interviewer to figure out a solution.
 

I was given context on what the interviews could consist of and advice on working with my interviewer to figure out a solution.
 

How did you prepare? Did you feel equipped to handle the coding test as you walked in?

I prepared for my coding interviews by reviewing data structures and common algorithms, reviewing past software development projects and practicing software engineering interview questions on websites like LeetCode. I also worked through exercise problems in books like “Cracking the Coding Interview” to revisit topics that I hadn’t been currently working on. I felt quite prepared as I completed a good amount of studying on a breadth of computer science subjects.

I also reviewed my past work so I would be able to describe development projects in detail. Additionally, I reviewed all of the resources I was given by Box for my interview, which included videos on interviewing at Box and descriptions of the interviews. My recruiter at Box was able to discuss interview details directly.

 

What advice would you give to someone preparing for a coding test at Box?

Study and be comfortable with general software engineering interview topics like data structures and algorithms as these will probably come up. Being knowledgeable about general computer science and technology topics is valuable. For example, topics like binary, how the internet works, databases and Unix systems may not be the answer of an interview question, but having knowledge about those things will help in coming up with an answer. 

Keep in mind that your interviewer is there to help! Whenever I got stuck on a problem, I was able to rely on my interviewer for clarity and have them help me understand the question or have them explain what was expected of me. Another recommendation is to review the interviewing resources Box sends you and get familiar with the online code editor and whiteboarding applications before your interview. You’ll be able to focus on showcasing your ideas instead of figuring out how to use the apps!

 

 

Image of Nazmus Sarwar
Nazmus Sarwar
Software Engineer • Holler

Along with studying common algorithms and data structures, Nazmus Sarwar, a software engineer at Holler, recommends that developers make sure to focus on best practices when taking tests. While your answer is important, Sarwar also notes that factors like the readability of your code and the scalability of your solution should not be overlooked.

 

Describe the last coding test you took. Why did you take it, and how did you feel going in?

I believe the internal dread that floods your body in anticipation of a coding test is a shared feeling among all job-seeking engineers, and I am no different. Performance anxiety often hinders otherwise talented engineers who are perfectly capable of performing a test given any other circumstances. At Holler, I was provided a detailed technical question to work through overnight at home. There was relief in the fact that there were no strict time limits or possible chances of blanking out under pressure. In circumstances like these, I felt as though my ability to succeed in the test would not be hampered by arbitrary stressors but instead by my own technical ability.

The Holler coding test involved thinking through a detailed problem, writing out a solution and unit testing that solution to make sure it was correct. For me, this meant that I had to iterate through several solutions, refactor my code to make it elegant and make sure that my unit tests reflected the correctness of the solution I wrote. Given I already had experience in the industry, those steps closely reflected my everyday practices at work.
 

Distinguish yourself from other applicants through proper software engineering practices instead of your solution to the problem at hand.
 

How did you prepare? Did you feel equipped to handle the coding test as you walked in?

To prepare for software engineering coding tests, I review the most common algorithms and data structures. Given that coding tests differ from company to company, the key is to make sure that you practice on a range of questions for each data structure and algorithm so that you can pick up on some of the patterns for each problem type. With enough practice, it becomes easier to recognize that certain questions may involve backtracking or a binary tree to solve the problem. 

Going into the coding test for Holler, I felt I was prepared as I was able to slowly review the problem and figure out the data structures and algorithms I would need to use for the take-home test. In addition to practicing algorithms and data structures, I would also review software engineering practices such as writing clean code, unit testing code and justifying design decisions taken in code and architecture.

 

What advice would you give to someone preparing for a coding test at Holler?

Distinguish yourself from other applicants through proper software engineering practices instead of your solution to the problem at hand. Is your code readable? Did your unit tests actually test the code properly? Did you reason through your solution’s design from a scalability standpoint? 

Two books I recommend are “Introduction to Algorithms, Third Edition” and “Cracking the Coding Interview, Sixth Edition.” Everyday software engineering practices often focus on these questions, and your ability to distinguish yourself from other applicants may involve how you think about these critical aspects of software.

 

 

Image of Perry Hertler
Perry Hertler
Senior Software Engineer • Ideon

Vericred currently has several open software engineer roles, and Perry Hertler has some tips that can help applicants ace their coding tests. The Vericred senior software engineer said that the test itself isn’t designed to “trick” those taking it and that having experience with integrations is especially helpful.

 

Describe the last coding test you took. Why did you take it, and how did you feel going in?

I took the coding test as part of the interview process for Vericred. I felt confident because the test was going to be live and on my machine. I prefer doing coding tests on my local development environment instead of a coding interview platform because I do test-driven-development (TDD). Interview platforms are suited for high-level tests.
 

If you actually TDD and have done integrations, you will rock the coding test!
 

How did you prepare? Did you feel equipped to handle the coding test as you walked in?

I knew beforehand that the coding test involved an integration with a focus on testing, which made me confident. By the time I “walked into” the virtual test, I had already spoken with a member of the engineering department. I was excited about the opportunity and ready to show them what I could do.

 

What advice would you give to someone preparing for a coding test at Vericred?

Vericred isn’t going to trick you with a puzzle. If you actually TDD and have done integrations, you will rock the coding test! It’s also timeboxed and asks you to interact live with a Vericred team member, so you are able to get a feel for our approach to collaboration and feedback.