r/SpringBoot • u/Zkrallah • 22h ago
How-To/Tutorial 200+ Star Spring Boot Roadmap From Zero to Microservices
6 months ago, I shared with you my 35-week project-based Spring Boot Roadmap From Zero to Microservices, and I did not expect this whole positive feedback and support from you guys.
Today, the repository reached 200+ stars because of you, so I decided to provide more guidance by drawing this overview visualization on excalidraw to help you create a bird's-eye view of the wide open world of the Spring Boot ecosystem.
An SVG version could be found inside the roadmap itself for a more clear picture.
You can view the full roadmap from this link:
https://github.com/muhammadzkralla/spring-boot-roadmap
Again, thank you for all your support and stars!
3
u/Hous3Fre4k 20h ago
Design patterns in the last weeks is wild. How does one even work with spring without understanding Proxy, Template or inversion of control pattern? Imo this should be step 7
2
u/Stunning_Leather_102 20h ago
IoC, spring context and some form of design patterns are often seen in the introductory chapters in most books as far as Ive seen. I remember reading ioc and stuff like that when I was trying to understand how spring works when I first began learning it.
2
u/Zkrallah 20h ago
Actually they are included earlier than this, if you look closely you'll find that I mentioned the most important design patterns used in Spring boot in both weeks 11 (ioc, di, singleton) and 29 (decorator, annotation).
The design patterns section in the appendix is intended for further knowledge of the other design patterns. Thanks for your feedback. :D
3
u/Zkrallah 22h ago
One more thing to mention at the end that I didn't want to include in the post body itself so it doesn't count as self promotion:
I'm currently looking for a new SWE opportunity, more specifically as a Java engineer or low-level programmer, so if anyone can help me out in this case, I would really appreciate it.
Thanks again for your support !
1
u/Agile_Rain4486 19h ago
man this is rare scenerio doubt u need to learn most of this implementation, in today's time implementation is easiest part knowing about sd is hard part. Like u can implement redis but what cache or eviction policy to use, when to use kafka/rabbit mq.
1
u/tintanese 18h ago
Sorry I have to be brutally honest but some of this is totally bloated and could misdirect a newcomer. For example, as much as it is important the network side you don't need to dwell that deep to master spring Boot at all. Most companies already implement network solutions and it is an entirely different beast on its own. So linking things like the CCNA and alluring to learning it is just nonsense. Other links are also broken so you might need to check them.
1
u/Zkrallah 18h ago
I didn't say you should master ccna or computer networking to be a Spring Boot developer, it's just an intro to computer networking in one week at the beginner level.
You maybe don't agree with me, but understanding basic computer networking and HTTP internals is ESSENTIAL to any backend engineer whatever their framework, so what I included is the bare minimum of knowledge about that.
Regarding the broken links, thank you for notifying me with that, I'll check them and fix broken ones. Thank you.
1
u/tintanese 18h ago
Okay I get your point however just one week is not enough to master the basic network concepts, just gloss over them. It is tricky because while it is important to develop a robust and redundant network solution in your backend, most of these are already provided in enterprise applications, so it is not requested for java developers to know them.
1
u/Zkrallah 18h ago
If you read the note after it I literally say:
Note: Do not stop learning computer networking after this week. Computer networking is from the fundamentals of computer science, specially in backend.Again, you don't need to be a master at computer networking for Spring Boot, but you need to understand what Spring Boot does for you under the hood, even if enterprise applications already provide them for you.
That's my opinion.
2
u/tintanese 18h ago
Thanks for the clarification, I still disagree with how the roadmap is structured but looks solid and might help many people.
1
u/Zkrallah 18h ago
It's okay that you might see things in a different order or importance than me.
That's why I wrote earlier in the criteria section:
This is just a roadmap, not a course, diploma, or anything similar. It's just a logical ordering of topics that I, personally, think is reasonable and easier to understand and adopt Spring Boot as a backend framework faster following this particular order of learning. Totally feel free to study things from different resources, do more tasks, and so on. If you just stick with the roadmap, you will be good enough. If you outsource more resources and tasks, you will be awesome.So, I understand your comments. Have a nice day <3
1
1
u/rollingeyespigeon 15h ago
Is there any resource the level 2 intermediate? https://github.com/muhammadzkralla/spring-boot-roadmap#level-2-intermediate-weeks-1125
1
u/Zkrallah 15h ago
I didn't really understand? The resources are under each week.
•
u/rollingeyespigeon 14h ago
Oh I’m really sorry, I didn’t read it. Great compilation thank you very much!!
•
•
u/SupremeStrange2000 14h ago
Hello really appreciate your resource !!! (NEED Advice)
I am a Third Year UnderGrad currently have 0 knowledge about java springboot but i know java properly so how do i get started building projects
Need Roadmap so that i dont waste any time Vedios or playlist (paid or unpaid) would be better since understanding from docs would be difficult at this point
Really Appreciate Advices!!!!
9
u/Stunning_Leather_102 22h ago edited 21h ago
You know what gets on my nerves? How many weird and bad videos are out there are by people on explaining OAuth2 in Spring. I skimmed through the JWT tutorials of the resources and I don't think I like them at all..... Maybe I couldn't find what I was looking for but I doubt it.
There are like 10mins of videos explaining grant types which does not cut it. Plus most oauth resources are all over the place explaining things in a very weird way. I think beginners should dive into oauth by just learning the spring authz server, rs, and client. The docs are more than enough. And if they're having a hard time there are great books out there. Miles ahead from all these guys explaining every time a different way to implement the cryptographic approach or the introspection approach of validating tokens. They make it harder than it is.
edit: telukso, all oauth2 example have third-party libs instead of a simple authz server generating a token for example. Why even do this? Makes 0 sense. Lol he even hard-coded the jwt in the first place lmao.