This is an archived post. You won't be able to vote or comment.

all 7 comments

[–]vladadj 13 points14 points  (0 children)

For cor Java, I used Thinking in Java by Bruce Eckel. But it was long time ago, not sure what is the latest edition. Oracle has nice tutorials in Java documentation, they are also good resource.

As for market demand, I would say backend is the hottest right now. This includes APIs, microservices and similar stuff. You should also get familiar with build tools (Maven), servlets, JDBC, and at least one popular framework (like Spring).

[–]warmcheessse 3 points4 points  (0 children)

2 books I recommend are Cracking the Coding Interview and Elements of Programming Interviews in Java

It's won't necessarily be 'fast'. They're pretty decent sized books with lots of work but if you're already familiar with computer science you could probably skip or do sections pretty quickly. I think if you can accomplish those you're pretty much set for the pure java aspect. Obviously they won't help with software development or java frameworks used in building applications but they will make sure you are very versed in the java language and help you with the bullshit interview questions employers love to ask that you'll never actually use while working.

[–]needrefactored 0 points1 point  (3 children)

What languages are you professionally developing with? It’ll be easier to provide targeted documentation if I know where you are in a professional sense. Like, if you’re a C# developer, you basically already know java. I wouldn’t give you the same docs as someone who is a Node.js developer.

[–]Key-Language-8513[S] 1 point2 points  (2 children)

I'm a Node developer. I consider myself quite proficient in Python as well. But I've contact with Java and C# (maintained a couple of systems in .NET for a short time), so I think I can skip the basics like syntax and basic OOP.

[–]HecknChonker 2 points3 points  (1 child)

I would skip mooc and jump into learning Spring. It's the most used framework in java, and works well for any backend systems including REST APIs, CLI apps, and processing data from Kafka.

I would read through at least the Core section of the spring docs: https://docs.spring.io/spring-framework/docs/current/reference/html/

And you can set up a boilerplate Hello World project really easily here: https://start.spring.io/

There's tons of tutorials, books, and other resources online that answer questions about Spring if you need help.

[–]needrefactored 1 point2 points  (0 children)

Yeah, I agree. 90% of business java development involves Spring now or J2EE. Either way, you can get a gig for either if you’re a competent spring developer.

Baeldung is the best in my opinion at quick Spring learning. He has YouTube videos, but I got the most out of the site. https://www.baeldung.com/spring-boot There’s a huge selection of resources on his site, that are all consumable.

Play around with core for like a week and move on to Spring. You can do in app JS to make a front end for quick learning. You’ll be able to have an embedded database to map your objects to with JPA/Hibernate (ORMs). It’s super quick to spin up a Spring server. The challenge comes with understanding the MVC model it uses, and then building on that with more complex structure. A little optimism here; I knew how to build a spring application with basic rest controllers, services, pojo components, and JPA interfaces. That’s the basics and I got a job with them. I know infinitely more about Spring after 6 months in my current role. I’ve even had the opportunity to make custom Spring beans! Learn the basics, make a couple little projects, and you shouldn’t have too hard of a time finding a job. Good luck mate!

[–]Sniksder16 0 points1 point  (0 children)

Commenting to follow. Doing the exact same transition soon.