Git Product home page Git Product logo

from-junior-to-senior's Introduction

From junior to senior

My study plan for going from junior to senior software developer (i. e. from level 1 to level 3 of the Programmer Competency Matrix). Inspired by Google Interview University.

This study plan attemts to cover a lot of topics related to math and theoretical computer science, but it can miss some applied topics, like mobile or frontend development. Also this plan doesn't (and never will) include something related to SEO, advertising, marketing etc.

Usage

  1. Fork this repo
  2. Mark all items as undone
  3. Add missing topics (optional)
  4. Study!

Table of contents

Calculus

Functional Analysis

Geometry

Analytic Geometry

Linear Algebra

Abstract Algebra

Category Theory

Combinatorics and Probability

Discrete Mathematics

Graph Theory

Type Theory

Data Structures

Algorithms

Basic algorithms

Sorting

Complexity

Programming Languages

Assembly

C/C++

Haskell

Rust

Programming Paradigms

Object-Oriented Programming

Functional Programming

Actor Model

Computer Architecture

Systems Programming

Operating Systems

Linux

Compilers and Interpreters

Compilers

Interpreters

Garbage Collectors

Networks

Web Development

Server-side

Client-side

Databases

SQL Databases

Concurrent Programming

POSIX Threads

SIMD

Security

Cryptography

Web Applications Security

See also

Resources

You can find more courses, articles, videos etc here:

Online documentation:

Wikimedia Foundation projects:

Forums, Q&A:

Online Tools

  • Math
  • Coding
    • Cloud9 — a development environment in the cloud
    • Codepen — a playground for the front end side of the web
    • Compiler Explorer — an interactive online C, C++, D, Rust and Go compiler
    • Ideone — a free online IDE, compiler and debugging tool
    • Repl.It — a REPL, compiler & IDE
    • RunKit — a Node prototyping tool
    • Reepl — an online ClojureScript REPL

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.