7 ms·
Hey guys, I am the person behind this website. Please know that it is still in progress. I wanted the initial version out so it is just the "roadmap" images for
by kamranahmed_se 7y ago
Hey guys, I am the person behind this website. Please know that it is still in progress. I wanted the initial version out so it is just the "roadmap" images for now. However, I am working on making these roadmaps more accessible for the beginners and easier to contribute to. In the list of things planned for the coming week is the textual version for each with different sections (job-ready, intermediate, advanced, overall landscape, etc) and each of the steps are going to be clickable with resources to learn from.
The website and the content is opensource and can be found at https://github.com/kamranahmedse/roadmap.sh https://github.com/kamranahmedse/roadmap.sh. Please feel free to contribute, drop your feedback, feature requests and issues there.
- la_fayette 7y agoPlease add web components to frontend, instead of pick a framework...
- k_ 7y agoYes. I'd still recommend learning about one of those frameworks to anyone aspiring to be a skilled front-end developer. Not because it is essential to master them, but because there are interesting concepts in there that could help with front-end applications development.
- wdroz 7y agoIMO, you could put Remote Procedure Call (RPC) technologies such as gRPC for backend developer.
- xmprt 7y agoDefinitely a great idea. gRPC has been a huge benefit for us. I'd also get rid of learning NoSQL databases. It's good to know but in 99% of situations you should be dealing with them especially not before you learn about things further down the list like Docker, RESTful APIs, Auth, etc.
- threeseed 7y agoI would hope new developers ignore comments like yours. NoSQL databases are just a tool like other tools. And you should know when and why to apply such tools not just dismiss learning them altogether. Also every developer goes on their own journey. So if someone wants to build a social network then a graph database is going to make more sense even at the beginning than a relational one.
- majewsky 7y agoYes, but the current version of the roadmap makes it seem like NoSQL databases are way more important than they are (IMHO). I would say a junior backend developer needs to know about web servers, REST, AuthN/AuthZ and even Docker way before they need to know about NoSQL.
- oakejp12 7y agoI'm interested as to why junior developers even need to learn Docker. I'd say learning Docker would be a "nice-to-have," but you can go years, or even forever, without having to deal with it, or even having a need for it. I'm not saying learning Docker is fruitless, just that Junior Developers might not get enough out of learning Docker to put it in good use. As for NoSQL. I'd say that definitely should be on the roadmap. I've assumed that they've already learned RDBMS, but knowing when to use the two is essential. Most companies now are working with data lakes and unstructured data (e.g. user and session data). Knowing how to get around that flexibility, how to structure your business logic and models, and what tool to pick (i.e. Redis for caching), etc. goes alongside NoSQL knowledge.
- wdroz 7y agoUsing docker force you to declare step by step what you need to build/use your code. If you combine that with good CI/CD, that easier to provides help to the junior developer if you can quickly reproduce the environment. I had a bad experience with a project that I was assigned to "help". The build steps documented used incompatible lib version. It's hard to help if you can't even build/run their codes.
- brillout 7y agoThere is also Wildcard API [1] for Node.js [1]: https://github.com/reframejs/wildcard-api https://github.com/reframejs/wildcard-api
- charlieflowers 7y agoThis is an outstanding piece of work. Kudos.
- itronitron 7y agothe frontend developer roadmap is a hot mess and looks like it is intended as humor, especially in contrast to the backend developer which is much more descriptive
- pjmlp 7y agoFrontend roadmap completly ignores everything that isn't a Web browser. So no Qt, wxWidgets, Android, iOS, WPF, Forms, UWP, WinUI, GNOME, KDE, ...
- Scarblac 7y agoI think job descriptions saying "Frontend Developer" and "Backend Developer" nowadays imply the Web.
- pjmlp 7y agoExcept when it doesn't.
- jlokier 7y agoThese days, I think the job-ad word coding is: - Frontend = In a web browser; HTML, CSS, JavaScript - Mobile = Android, iOS - Desktop = Qt, wxWidgets, WPF, Forms, UWP, WinUI, GNOME, KDE
- Scarblac 7y agoImplying desktop job ads exist...
- pjmlp 7y agoPlenty of them, specially in automation.
- Crinus 7y agoAnd games, medical, research, etc. In my previous job i was working on game tools with wxWidgets, in my current job i am working on game tools with Qt. In between i got an offer (which i rejected since i am interested in games) for a Qt tool to be used for (IIRC) DNA research (or something like that, i'd just be doing the UI not the actual logic).
- 7y ago
- rimliu 7y agoI would rethink including "Learn CSS3". CSS has moved away from single versioned spec to modules and levels, so CSS3 does not mean much now. If you want to emphasize some specific parts (like animations), better say so explicitly.
- madiathomas 7y agoInstead of learning JavaScript frameworks, isn't it better to advise people to learn and master JavaScript itself? I feel learning HTTP, HTTPS, HTML, CSS, and JavaScript inside-out will benefit someone than to try to learn a framework that will disappear very soon. When you know undelying technologies, it is easier to learn new frameworks because they will always be based on underlying technologies.
- BigJ1211 7y agoAngular/React/Vue are unlikely to dissappear they've existed for a long time now. Angular: 3* years *9 if you count AngularJS React: 6 years Vue: 5 year That's a long time by web standards, they also keep up and push native javascript forward. So yes, learn native JS. Definitely learn a framework though, as those skills are ultimately what you need to work on anything more complex than a simple website.
- madiathomas 7y ago5-10 years is too little considering the fact that they spent first 2-3 years gaining momentum. Even worse for Angular because it was completely changed along the way. JavaScript knowledge is still relevant even after 24 years. Whatever is on those libraries and frameworks will one day make its way into JavaScript and that will be theur end. Frameworks will come and go. Even the most successfull JavaScript library ever, jQuery, is on the decline because of newer frameworks and features like querySelector.
- brojonat 7y agoLearning a framework will enable more participation and contribution _now_. And arguably knowing the framework isn't so important compared to going through the _process_ of learning one; if you know how to do that then you can just latch onto the next up-and-coming framework. But yes, it's certainly also good to master JS itself.