Taro Logo

How do I learn Java faster?

Profile picture
Senior Software Engineer at Unemployed [Laid off]9 months ago

I recently got an offer for a Senior Java developer. While the interview rounds were mostly language agnostic, I know the basics of Java and can debug a Java program quite easily.

Not sure how much of the language depth should be adequate for a senior engineer. I've been a C++ engineer for sometime now.

How do I learn Java fast and efficiently? I'm aware that most of the learning will occur in the job itself, but I want the onboarding (a week away) to be as smooth as possible.



  • 2
    Profile picture
    Senior Software Engineer at Intuit
    9 months ago

    Hey, the way I learnt Java was to build out projects back in the day. I personally think most learning happens just via practice, regardless of any of the books / youtube videos I have seen.

    An alternative: Instead of figuring out what project to build, simply open up Leetcode, and pick easy questions, and start solving them to learn the language. Don't worry about solving the question itself, you can take a peek at the solution, and solve it using Java on an IDE, like IntelliJ.

  • 0
    Profile picture
    Tech Lead @ Robinhood, Meta, Course Hero
    9 months ago

    You can pull out the extra stops to further learn the language (Rashmi's tips are great here), but I actually think you should just relax and not worry about it before joining. Here's why:

    1. You already have solid Java proficiency.
    2. You have a deep background in C++, which is quite similar to Java except it's harder. This means it's relatively easy to go from C++ to Java (but not the other way around). I can vouch for this as I started off as a C++ developer at UCLA and then pivoted to Java for Android - The transition was indeed pretty smooth.
    3. You'll probably have better ROI enjoying the job gap and coming in with a relaxed, fresh mental state.

    If you really do want to come into the new job prepared, I recommend this thread (it also covers non-technical action items): "What's the best way to prepare 'before' joining the next team/company?"

    Once you start the job, you can use the advice here to ramp up quickly on the codebase: "Learning a code-base in a new language - How to do it?"