The Software Baker’s Dozen — Intro13 Software Engineer Interview Questions to Know Inside and OutAndrew OliverBlockedUnblockFollowFollowingJun 13Over this past school year, I became all too familiar with the technical recruiting process.

In the fall semester, I opted for a breadth-first search approach and applied to about 30 software companies.

In the spring semester, I helped run a technical recruiting class for undergraduate students in their first and second year.

Based on my experience and the experiences of the students in the class, I learned two key things about software interviews.

The Pareto Principle of Software Interviews: 80% of the questions asked are the same 20% of questions.

This list of 13 covers that 20%.

There’s only one question in an interview — “Why should we hire you?”.

Sure, they may ask it in a roundabout way.

But that is the only question they’ll ask.

We’ll talk more about this towards the end.

Disclaimer: This list should not be your one stop shop for technical recruiting preparation.

In your interviews, you may see all of these questions.

You may see none of them.

This is far from a software interview panacea.

For such a panacea, check out Cracking the Coding Interview.

We’ll cover 13 questions (a baker’s dozen) and their variants over the next seven parts.

Our goal is to provide thorough and exhaustive answers so we can know these questions inside and out, forward and backward.

Feel free to skip around in whatever order you like!.Or start with Part 1 here.

Part 1 — Programming Languages & StringsWhat is your favorite programming language?Is a String mutable?Part 2 — Primes & ArraysGenerate a list of all prime numbers less than some integer n.

What is the difference between an Array, an ArrayList, and a Vector?Part 3 — Stacks & Binary Search TreesWhat is a stack?Given the root node of a binary tree, determine if it is a binary search tree.

Part 4 — LinkedListsGiven a node in a singly LinkedList, determine if the LinkedList is circular.

Given the head of a singly LinkedList, reverse the LinkedList.

Part 5 — Fibonacci & Garbage CollectionWrite a method to determine the nᵗʰ Fibonacci number.

What is garbage collection in Java?Part 6 — Lowest Common Ancestor & Binary SearchFind the lowest common ancestor (LCA) of two nodes in a binary search tree (BST).

Given a sorted array, find the number of elements greater than some integer k.

Part 7 — Principles of OOPExplain the four key principles of object-oriented programmingQuestions?.Comments?.Send me an email at andrew.

oliver.

medium@gmail.

com!.I’d love to hear from you.

.