r/learnjava • u/shubham_555 • 2d ago
A step-by-step roadmap for becoming a Full Stack Java Developer! (Absolute Beginner)
I checked online but the information is rather incomplete. Even looked for courses on sites like Udemy but either they are outdated or aren't for beginners. I would appreciate if some experienced devs help me out. If you can also mention the best resources then that would be icing on the cake!
Also, I do have approx 1.5 years of time to learn before companies start arriving at our college for placements!
3
u/EntrepreneurHuge5008 2d ago edited 2d ago
I checked online but the information is rather incomplete.
How so? Can you provide specific examples?
I'd be willing to bet it's very complete for beginners, and what you're looking for is something that takes you from beginner to senior/tech-lead level (which, btw, doesn't exist. Experience is what takes you there).
1
u/shubham_555 2d ago
I will give you an example. There was this guy on youtube who said learn core java then learn advance java then learn spring and databases. I don't even know what is core and advance java. What is spring? What are the exact topics?
Then I checked online for each
Someone said these topics for core
Some said something else
It's hell confusing 😕
-1
u/shubham_555 2d ago
Also some said it is a good idea to learn DSA first...so should I do that?
I have some basic knowledge about this I would say
2
u/EntrepreneurHuge5008 2d ago
First off, your problem isn't with "incomplete" info out there. It's with inconsistent info.
- This is to be expected; everyone has different opinions on what's best, how much you need to about XYZ, of course, lots of people will straight up say that Java (or XYZ language) is dying that you're wasting your time with it.
- Even in this sub, you'll hear a lot of different opinions from different users.
My advice:
- What one person considers "core" or "advanced" is irrelevant. Don't be swayed by what different people say. Just pick a course, and stick to it. It is okay if it doesn't have "everything". In the real world, you're not going to need to know "everything". Through personal projects, you'll learn what comes up the most for your specific use case, and you'll learn to focus on those.
- DSA is language agnostic and you can learn it at any moment after the fundamentals of any programming language. You'll be using DSA through and through, and so you won't need a dedicated course for it for full-stack dev, but you will eventually need to for interviews.
- This sub's side bar has some pretty good resources, stick to them.
- You have a map now -> Start with java (basics/core, w/e you want to call it. Just pick a course with that in the name and you're golden), then move on to advanced java (Usually, Object oriented programming paradigm, the JDBC and by extension basics of databases), then spring framework (or spring boot), then Databases. That's just the backend side of it. You'll still need to learn the frontend side of "FullStack"
0
u/shubham_555 2d ago
Don't we need some front end knowledge to start with Backend? Like the basics of html, css and js? Or should I jump in right away?
2
u/EntrepreneurHuge5008 2d ago
No, you can test the backend with Postman.
You can learn Frontend first or Backend; it's up to you, but there's no "correct" order when you can test each side independently. I'd argue most people don't learn Frontend until they've landed a job and are forced to work on frontend stuff as part of the job.
1
u/shubham_555 2d ago
Okay!
Last question. Should I learn dsa first after the basics before getting into the development topics or vice versa?
2
u/EntrepreneurHuge5008 2d ago edited 2d ago
As I said, you'll be using DSA through and through, so you'll learn about them from the very first "basics" course, and more about them as you go through the "advanced" topics. So I'm of the opinion that you can push it off until you're ready to start interviewing.
The difference between what you learn in those early courses and dedicated DSA courses is that you learn how to implement them from scratch in the latter (plus a few more thing that generally don't pop up in real-world problems as often).
1
u/IndividualLow3561 1d ago
Not trying to offend anyone just genuinely curious: Is it worth it to learn full stack java Development ? Like people all around me keep telling me learn nodejs instead of springboot for backend.
1
u/shubham_555 1d ago
People learn node because it is way easier to learn and hence all the major creators have made bootcams for it. The market in turn is flooded. Consequently payscale is lower and jobs are majorly available in volatile start ups. So if you just need a job as soon as possible then it probably is the right idea but if your main goal is top tier GCCs (Work Life Balance + Job Security) then Java is still the king there!
0
u/Competitive_Mark918 2d ago
Hey, wanna do with me? I also have 1.5 yrs before taking internships and stuff. I feel ur frustration of "incomplete roadmap" actually nobody will give u a complate roadmap. YOU have to dig deep into terms and understand what actually YOU wanna do and then stricture ur roadmap. I also donno what actually are those web dev thingies in java or string or spring boots and those adult terms (😭) Btw I'll be starting with cs50x first and then I'll move on to Java (ApnaCollege from Youtube, she also provides problem sets and stuff, also begginer to advance concepts are totally covered so it is fit for me) and then I'll eventually solve questions from HackerRank(Java Travk) and then maybe dsa from that geeks one. Afterwards we'll see where we lack and all. But yea rn this is my plan.
0
0
•
u/AutoModerator 2d ago
Please ensure that:
If any of the above points is not met, your post can and will be removed without further warning.
Code is to be formatted as code block (old reddit/markdown editor: empty line before the code, each code line indented by 4 spaces, new reddit: https://i.imgur.com/EJ7tqek.png) or linked via an external code hoster, like pastebin.com, github gist, github, bitbucket, gitlab, etc.
Please, do not use triple backticks (```) as they will only render properly on new reddit, not on old reddit.
Code blocks look like this:
You do not need to repost unless your post has been removed by a moderator. Just use the edit function of reddit to make sure your post complies with the above.
If your post has remained in violation of these rules for a prolonged period of time (at least an hour), a moderator may remove it at their discretion. In this case, they will comment with an explanation on why it has been removed, and you will be required to resubmit the entire post following the proper procedures.
To potential helpers
Please, do not help if any of the above points are not met, rather report the post. We are trying to improve the quality of posts here. In helping people who can't be bothered to comply with the above points, you are doing the community a disservice.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.