Recommended textbooks to read

Interviewing for Software Engineer positions in Japan, or anywhere else, is not an easy process and takes a lot of preparation beforehand and during the interview process. While you are preparing for the languages, it is important to review basic computer science fundamentals and your proficiency in your most-preferred programming language.

Review basic computer science fundamentals

The best resource to use when reviewing for basic computer science fundamentals is the Cracking the Coding Interview book. This book is the most recommended books by hiring managers and our clients say that often agree that if candidates read this book and understand the concepts discussed in the book, you will get an offer.

The book reviews basic computer science fundamentals and helps you prepare by providing numerous programming questions, with great solutions. Sometimes, hiring managers directly take questions from the book itself, so reading Cracking the Coding Interview is highly recommended.

Another book that we recommend you read is Elements of Programming Interviews. This is an excellent book authored by the same team that wrote Algorithms for interviews and the new book covers the topics discussed in Algorithms for interviews and more.

Review proficiency in your most-preferred language

After reviewing computer science fundamentals, it is important to also review your most-preferred programming language. We recommend you to choose one of the following languages and hyperfocus on them:

  • Java
  • Python (recommended for Data Science related roles)
  • Ruby
  • Javascript (recommended for Frontend roles)
  • Go
  • C++
  • C#
  • Swift (only if you are an iOS Engineer)
  • Kotlin (only if you are an Android Engineer)
  • Scala

We generally recommend you to focus on one programming language, as the interview process will generally allow you to use any programming language for the interview process.

For smaller companies and startups, it may be important to have proficiency in the language listed in their job description. In this case, review your most preferred programming language AND the language listed in the job description.

For Android roles, we recommend you to review both Java AND Kotlin, as Kotlin is quickly becoming a standard for Android Engineers in Japan.

How to review your programming language?

You can start by reading a textbook that explains your programming language, but this is not mandatory. Often, the textbooks are boring and you are already reading a lot of computer science fundamentals books.

Instead, we recommend you to simply do a lot of practice coding assignments online