Welcome to Pirate King I'm Daniel a Software Engineer at Microsoft
ex-Software Engineer at Amazon and ebay and also a Software Engineering Mentor at two educational startups
In this video I'm going to talk about the
Let me first tell you however that companies are usually language agnostic
Meaning as long as you can code and implement an acceptable solution
They don't care which language you use And before I jump in let me quickly share
two reasons why I decided to make a video for it
One as a Software Engineering mentor at two education startups
This is by far
Two
through the comments on my How to Effectively Prepare for LeetCode video
So I thought I'd just make a separate video for it
and save myself the hassle of repeating the same thing over and over
Again check out the video here for more information on that and
Enough talking Let's dive into it
There are
that I strongly suggest you do leetcoding with
Let's go over them one by one
One the very first programming language that you should leetcode with is the one that you are
Especially if you have an upcoming interview soon
Think about it You have a technical coding interview coming in a few weeks
Would you all of sudden learn a new programming language simply because I suggested it?
No you should always use the one that you are most confident with!
Technical coding interview is not just about your problem solving skills
In the world of software engineering
the very foundation of problem solving skills lies in your programming language!
If you want to be an architect, you need to know your math
Likewise if you want to be a good problem solver you first need to know your language
Your proficiency in the programming language of your choice shows how strong your blueprint is
Never walk into an interview with a weak blueprint
You'll regret it because you do get assessed by your proficiency level in the programming language of your choice
In fact I can immediately tell how good people are
just by looking at how they write their first few lines of code
Yes pros do make mistakes the syntax errors and such
But they don't make the same mistakes the amateurs do
Worst of all pros know what or where their mistakes are
Amateurs don't even realize why their code doesn't work
Trying to work your way out with a spectacular algorithm that you can only describe verbally won't get you anywhere
So stop the struggle
You don't have the time to fight the language syntax
You need to know how to read music in order to play for an orchestra
Likewise you first need to know your programming language in order to become a Software Engineer
So what if you have some time and can afford to learn a new language or two?
The second programming language that you should leetcode with is
It's arguably the most popular and widely used statically-typed language in the world
And that maybe is one of the reasons why most of the LeetCode solutions are in Java
Many of the solutions posted by the individuals are in Java too
So you have a plenty of community resources to refer to
Java in LeetCode also comes with many built-in libraries
All the basic data structures and algorithms you need including
And some complex but not as commonly used structures such as
Lastly but most importantly
Despite the diminishing popularity in the industry
I still believe that Java is one of the best programming languages for beginners to learn
Especially if you're serious about becoming a software engineer because it's
In my opinion, statically- and strongly-typed programming languages are the
And the two best languages for that I think are
Java's simply more popular
So if you want to LeetCode with
while picking up a new statically-typed language I suggest you go with
The third and last programming language that you should leetcode with is
According to Stack Overflow
It's the third most popular programming language in 2021
the most wanted language for its fifth-year
And the language that you can solve a LeetCode problem with the least amount of code
For the purpose of interview
this is by far the best because you want to maximize your time
developing your logic and minimize it fighting the syntax
Simply put
I guess it's the
Aside from LeetCode Python is frankly
the most attractive programming language nowadays
where virtually any question you have has already been answered by someone
And lastly it's
meaning it can be used in nearly any kind of environment including
Not to mention that it's dominated the fields of
So if you want to LeetCode while
in hand, I suggest you go with
So we've explored the three programming languages you should use to solve LeetCode problems
In conclusion you can leetcode with any programming languages
However, I do not recommend anything other than
because either one
the resources available in those languages including the solutions are relatively scarce
Or two
the nature of the language requires you to write so much more code to answer the same question
forcing you to spend more time fighting the syntax than completing the logic
But most importantly
Remember
you can try both Java and Python
but should always revert back to
during an actual interview
Unleash your full potential
Lastly don't forget to subscribe to gain an unlimited access to my brain
Thanks for watching I'll see you on the next one
Bye