Skip to content

sama08/developer-roadmap

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

162 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Web Developer Roadmap

Roadmap to becoming a web developer in 2018

Disclaimer

This roadmap was originally created with the intent of guiding developers through the hard and slow process of becoming a good software developer, showing paths that they can follow to learn what they need to know to be good professionals. I forked this repository to structure my own study plan based on the roadmaps presented here and to adapt it to my reality structuring the content according to what I want and what I have to learn.

πŸš€ Introduction

🎨 Frontend Roadmap

πŸ‘½ Back-end Roadmap

πŸ‘· DevOps Roadmap

β˜‘ Personal Study Plan

Here is my personal study plan based on the above roadmaps, ordered by the subjects I have to study and which subjects I already have studied. Some subjects I already have a good knowledge, but I'm placing it here to review the important concepts.

Common topics

Version control

  • Learn Git
    • git config
    • git init
    • git status
    • git add
    • git commit
    • git diff
    • git pull
    • git push
    • git remote
    • git branch
    • git checkout
    • git tag
      • git show
    • git fetch
    • git reset
    • git merge
    • git rebase
    • git stash
  • Learn Github workflow
    • Creating and deleting repositories
    • Managing repositories
    • Creating and managing branchs
    • Opening pull requests
    • Discussing and reviewing code
    • Mergind and deploying code
    • Reverting changes

Operating system management

  • Linux Basics (already know some commands and concepts, but I need to study it in a deeper level)
    • Directories structure
    • Common file extensions
    • Permission system
    • Packing and unpacking files
    • Learn terminal
    • Learn text manipulation tools
      • Vim
      • awk
      • sed
      • grep
      • sort
      • uniq
      • cat
      • cut
      • echo
      • fmt
      • tr
      • nl
      • egrep
      • fgrep
      • wc
    • Learn process monitoring
      • ps
      • top
      • htop
      • atop
      • isof
    • SSH
    • Shell script basics

Protocols

  • HTTP - HTTPS
  • FTP - SFTP
  • TCP

Frontend roadmap

  • CSS
    • SASS
    • Bootstrap
  • JavaScript
    • Syntax
    • Basic concepts
      • Hoisting
      • Event bubbling
      • Prototype
    • Manipulating the DOM
    • ES6
    • Advanced concepts
      • Scope and call / apply
      • Proxies and Reflection
      • Parsing tags and code generation (I'm studying...)
      • Garbage collection
      • Performance optimization techniques
      • Security issues
    • Common APIs
      • Geolocation (I already know something, but I will review it)
      • Web storage
      • Cache
      • Canvas (I'm studying)
      • Web workers
      • File API (I already worked with it, but I need to study in a deeper level)
      • Drag and Drop (same as above)
    • CORS (Reviewing)
    • Object oriented programming concepts
      • Common patterns and architecture
    • Functional programming concepts
      • Common patterns and architecture
    • Architecture
      • Redux / Flux (I'm studying)
    • Testing
      • Jest
    • Common frameworks and libraries
      • jQuery
      • React.js (I'm studying)
      • RxJS
      • Moment.js (I need to review)
      • D3.js
    • Tooling / Development
      • NodeJS
        • NPM
        • Node scripts and tasks
        • Express.js
      • Yarn
      • Webpack
      • ES Lint

Backend roadmap

  • Data structures
    • Arrays
    • Lists
    • Queues
    • Stacks
    • Sets
    • Graphs
  • Algorithms
    • Sorting
    • Search
      • Binary search
  • Regular expressions
  • Standards and best practices
  • Architecture (I need to review all concepts)
    • DDD
    • CQRS
    • Event sourcing
  • Tests
    • Unit testing
    • Integration testing
    • TDD
    • BDD
    • Calculate test coverage
  • Application types
    • REST API
    • Web application
  • Performance
    • Caching strategies
      • Memcached
      • Redis
    • Threading
    • Optimization techniques
  • Authentication and Authorization
    • OAuth
    • Basic authentication
    • JSON Web Token authentication
    • OpenID
  • NoSQL
    • MongoDB
  • Message brokers
    • RabbitMQ
    • Patterns and best practices
  • Web sockets
  • Web scraping
  • Logging
    • Analytics tools
  • Docker integration
  • GraphQL

DevOps skills

  • OS Concepts
    • Threads and Concurrency
    • Sockets
    • Process management
    • Memory / storage
  • Web Server
    • Configure IIS
    • Configure Apache
    • Configure Nginx
    • Configure caching server
    • Configure firewall
  • Containers
    • Docker
      • Use Docker with a programming language
    • CI / CD Tools
      • Jenkins
      • Travis CI

I will be adding new subjects as I finish to study previous topics and according to necessity.

License

License: CC BY-NC-SA 4.0

About

Roadmap to becoming a web developer in 2018

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors