Today I came up reading a GitHub project by kamranahmedse.In that project, he has mentioned what are all the requirements needed to be a complete web developer, including the front end and back end development.
In the flowchart, the starts from the basic things to be learnt to master the development cycle neatly.The flowchart comprises of every modern trend which helps to become a quality full stack developer.
Contents
Introduction:
In the introduction section, he motivates us to learn the basic things for any development that may be for mobile or web or devops.Those things were
- git
- SSH -secured shell
- HTTP/HTTPS and APIs (for accessing information or data over internet)
- basic terminal usage (will be helpful for launching server instances over cloud)
- Data structures and Algorithms
- Character encodings (like Unicode, etc)
- Design patterns
- Git-Hub
Front-end roadmap:
In the front-end section, the map covers the path to be a healthy front-end developer.To be successful in the front end, one has to be strong in HTML, CSS and javascript.Mastering the javascript will be helpful to become a hybrid app developer (by using JS frameworks like angular, ionic or react one can build apps for iOS, Android and web in the same time without changing design).After mastering basic things one can start learning bootstrap or any other grid layout systems to build responsive sites.
My recommendations:bootstrap,javascript,typescript,Angularjs or Reactjs
Back-end roadmap:
In backend roadmap, he covers the whole database, storage, caching and server-side things.And recommends learning
- Javascript frameworks like node.js, express js
- Python and its frameworks
- PHP frameworks like laravel
DevOps Roadmap:
DevOps is a software engineering culture and practice that aims at unifying software development (Dev) and software operation (Ops). The main characteristic of the DevOps movement is to strongly advocate automation and monitoring at all steps of software construction, from integration, testing, releasing to deployment and infrastructure management. DevOps aims at shorter development cycles, increased deployment frequency, more dependable releases, in close alignment with business objectives. [DevOps source: wiki]
DevOps is focused on
- Code — code development and review, source code management tools, code merging
- Build — continuous integration tools, build status
- Test — continuous testing tools that provide feedback on business risks
- Package — artifact repository, application pre-deployment staging
- Release — change management, release approvals, release automation
- Configure — infrastructure configuration and management, Infrastructure as Code tools
- Monitor — applications performance monitoring, end-user experience
ALSO READ: How to host your website in firebase for free