Skip to content

How did I “crack” the coding interview

Posted on:October 20, 2023 at 01:22 PM

Note: this article was originaly posted in Medium.

It’s not a secret that nobody likes interviews, probably even less when we talk about coding interviews. Maybe you are looking for your first job or the next step in your career, perhaps you are willing to move to a different country, or you are working in a toxic environment (get out of there!).

No matter the reason or your experience you have to go through them, and to avoid doing tons of interview, you have to prepare yourself!

As I mentioned before, there are different reasons to apply for a new job; in my case, I moved to a new country.
I had to start new and find new opportunities. After 18 interviews in three different companies, I managed to get a job as a Developer Advocate for the Android Partnerships Team at Google.

In this article, I want to share my experience, thoughts, and tips that helped me get the job.

The searching

Photo by rawpixel on Unsplash

This step sometimes is skipped when you get approached, but in my case, I wanted to find a new job.

First things first, prepare your CV. A good CV won’t give you the job but will help you get into the first door. Here are my tips:

  1. KISS principle, Keep It Stupid Simple. I am not saying that the HR or the recruiter is stupid, but they get tons of CVs and their time is limited.
    Don’t try to add fancy designs and a lot of information. Make sure to highlight the relevant information and make it visual enough that with a quick look the reader gets a good feeling of your skills.
  2. Make sure to add links to your profile in GitHub, StackOverflow, a blog site or your personal apps. If you don’t have any, don’t worry that does not make you a bad developer, but it helps your CV.
  3. Add relevant projects you worked on, with a small description.
    i.e: “Created an e-commerce app with a team of 3 devs and a designer.”
  4. Ask a friend to review it, fix typos and ask if she/he understands it.
    Remember, HR or the recruiter might not be technical at all.

After the CV is ready, it’s time to look for potential companies. Don’t apply randomly; make sure the position and the company fit with your interests; the interview process is costly for you and the company.

Some of the sources I used:

Finally, don’t be afraid to push the SEND button. It does not matter if you don’t fulfill all the skills. If you think the position and the company is a fit, apply.

The waiting

Photo by Ben White on Unsplash

This step is the worst of all, and it’s not only after you send the CV, but also between interviews and waiting for an offer.

I send around eight applications. Only three of them replied at the end. The full process in the case of Google took nearly three months.

A long waiting period does not mean you are out, things happen, even more in big organizations, change of budgets, hiring freezes, vacations, etc.

As a tip, if you are waiting for a long time or you have any doubt, don’t be afraid to reach your recruiter or point of contact, they are here to help.

One of the companies I applied, took nearly two weeks to answer me after the coding interviews, after reaching to them, they were honest and explained to me that the company was going through a re-organization and the hiring was paused. Yet, after a while, they resumed the process and made an offer.

Conclusion, be patient but push for transparency.

The interview

Photo by Dice Insights

HR or a recruiter reached you back; probably you will have a phone call, usually not technical (except for the case of Facebook, the recruiter asked me basic Android questions).

Depending on the company there are different steps. In this article, I will only focus on the coding interview. If you are interested in the Google case, you can have a good overview here.

Unfortunately, our industry has some standard practices for coding interviews that are outdated and does not reflect the skills of the interviewee.

There are many articles and critics out there. A clear example, from the creator of Homebrew:

Yet, many companies are not willing to change this practice.

With Google, I had seven interviews containing algorithm problems, Android-related, and behavioral questions. While with Facebook were four coding interviews, one architectural and one behavioral. And the last mid-size company I applied, had “only” two pure algorithm interviews.

That being said, don’t be afraid, as much as these interviews are hard and probably not reflecting your skills. The process is intended to be fair, and it’s not black or white. I am not good at resolving this kind of problems, yet I managed to convince (somehow) I have the skills for the position.

The following tips and “process” worked for me, but it might work differently for someone else.

The practice

Before the coding interview

During the coding interview

Once I understood the problem and the examples, I followed a simple process that helped me during the interview.

The crucial points from above are:

I mentioned before, it’s not black or white, even if you don’t solve one problem, it does not mean you are out. Keep calm, and prepare for the next round.

The offer

Photo by Cytonn Photography on Unsplash

Hopefully, the interview was good, so the company decides to make you an offer. I can’t give you many tips here, but there are many resources online that might help you with that.

My only tip is to research the salary conditions for your experience in the country where you applied for, then set the minimum you would take and the desired offer, but never say it before they make the first step.

I hope this article helps those dealing with interviews or planning to start. If you need some more advise, please don’t hesitate to contact me, you can reach me via Twitter