Here in this post we will discuss an important part of an Interview Process that is How to pick a coding(C,C++,Java) Language? Coding is the brain of any interview process, you must crack initial coding round to get a ticket for a face to face interview with the interviewer . Hence, a proper thinking should be there in choosing your programming/coding language.
Pick a coding(C,C++,Java) Language
Before anything else, you need to pick a programming language to do your interviews in. Most companies will let you code in any language you want, the only exception I know being Google,Cisco where you are asked to write coding in a specific language.
Some languages are more suited for Interview
Personally, Python is my de facto choice for algorithm coding interviews because it is succinct and has a pretty huge library of functions and data structures available. One of my top reasons for recommending Python is that it uses consistent APIs that operate on different data structures, such as
for ... in ... and slicing notation on sequences (strings/lists/tuples). Getting the last element in a sequence is
arr[-1] and reversing it is simply
arr[::-1]. You can achieve a lot with minimal syntax in Python.
Java is a decent choice too but having to constantly declare types in your code means extra keystrokes which results in slower coding/typing speed. This issue will be more apparent when you have to write on a whiteboard during on-site interviews. The reasons for choosing/not choosing C++ are similar to Java. Ultimately, Python, Java and C++ are decent choices of languages.
Pick a Language you are familiar with
Most of the time, it is recommended that you use a language that you are extremely familiar with rather than picking up a new language just for doing interviews because the company uses that language heavily or just because you want to show that you are trendy.
If you are under time constraints, picking up a new language just for interviewing is hardly a good idea. Languages take time to master and if you are already spending most of your time and effort on mastering algorithms, there is barely spare effort left for mastering a new language. If you are familiar with using one of the mainstream languages, there isn’t a strong reason to learn a new language just for interviewing.
If you have been using Java at work for a while now and do not have time to be comfortably familiar with another language, I would recommend just sticking to Java instead of picking up Python from scratch just for the sake of interviews. Doing so, you can avoid having to context switch between languages during work vs interviews. Most of the time, the bottleneck is in the thinking and not the writing. It takes some getting used to before one becomes fluent in a language and be able to wield it with ease.
Hope you have made your decision of choosing your language now,do not worry about language you choose for coding the only thing is that matters is how you can master that language.Hope we will bring a article on that as well.Till then happy coding and if your looking for resources for coding and do not know from where to start you can check our ULIMATE CODING RESOURCE LIST.