• Python
    • Typing
    • Sequence
    • Set and mapping
    • Functions, lambda
    • Iterator and generator
    • Class, objects
    • OOP
      • abstraction
      • encapsulation
      • polymorphism
      • inheritance
    • Modules, packages
    • Exceptions
    • Decorators
    • Metaclass
    • File & Input/Output
    • Testing
    • Functional programming
    • GIL, Threads, processes, Concurrency
    • PEP8
  • Django
    • Django ORM
      • Meta class
      • Inheritance model, Proxy model
    • DRF
    • Django admin
    • Django form
    • Django authentication
    • Django template, JINJA
    • Middleware
    • Django caching
    • Signal
    • Logging
    • Testing
  • Postgresql
    • Query
    • Postgresql data types
    • Sequences
    • SQL functions
      • Triggers and Rules
    • ACID
    • CAP
    • Transactions
    • Scaling
    • Indexes
    • Normalization, Denormalization
    • Database security
    • Logging
    • Replication
    • WAL, MVCC, Checkpoints

  • Basic layout skills ( optional )
    • HTML
    • CSS
    • JS
  • VSC Version Control System
    • Git
      • Git basic
      • Git workflow
      • git and GitHub basic
      • Branches
      • Git ignore
      • merge, conflicts, stash
      • forking
    • Version control system
    • Subversion ,Git
    • VCS types
    • CI/CD
  • Linux
    • Basic knowledge of the OS: directories, users
    • Commands: cd, ls, cat, mv, cp, rm, ssh
    • Ability to work in a remote development environment over SSH
    • OS: processes
    • Software management (e.g. apt)
    • ps, tail, grep
    • command-line editor (e.g. nano or vim)
    • df, du, free, top, htop, chmod, chown, scp
    • running bash scripts
  • Elasticsearch
    • Elasticsearch basic
    • CRUD operations
    • mapping, indexing, searching
    • REST API
    • Document and indexes
    • Aggregations
    • Query
    • Analyzers
    • Tokenizer
  • Tools
    • Celery
    • Redis
    • Sentry
    • Rabbit MQ
    • Kafka
    • load balancing tools (nginx, haproxy, envoy, ingress)
    • Selenium
  • Docker
  • Network & System Administration & Tools
  • Cloud
  • Algorithms
  • Testing
  • Programming Principles
  • Design Patterns
  • Software architecture