Skip to content

Learning Path

Basic

[✔] Variables
[✔] Operators
[✔] Control Flow (If / Else)
[✔] Loops and Iterables
[✔] Basic Data Structures (List, Dictionary, Set, Tuple)
[✔] Functions
[✔] Mutable vs Immutable
[✔] Common Methods
[✔] File IO

Intermediate

[✔] Object Oriented Programming
[✔] Data Structures
[✔] Comprehensions
[✔] Lambda Functions
[✔] Map, Filter
[✔] Collections
[✔] *args & **kwargs
[✔] Dunder Methods
[✔] Environments
[✔] Modules
[✔] Decorators
[✔] Generators

Advance

[✔] Context Managers
[✔] Metaclasses
[✔] Async IO
[✔] Threading
[✔] Testing
[✔] Packages
[✔] Cython

Expert (More you cover, better you become)

[✔] Advance Python
[✔] Web Framework like Django, Flask
[✔] ORM (Object Relational Mapper) libraries # Libraries in a Object oriented language to manipulate database instead of use of SQL etc like (SQLAlchemy, Django ORM)
[✔] Data Science and Machine Learning basics
[✔] Able to integrate multiple data sources and databases into one system
[✔] Understanding of the threading limitations of Python
[✔] Multi-process architecture (MVC, MVT)
[✔] Server-side templating languages like Jinja 2, Mako, etc
[✔] Basic understanding of HTML, CSS, JavaScript
[✔] Understanding of accessibility and security compliance (depending on the specific project) environments
[✔] Understanding of fundamental design principles behind a scalable application
[✔] Familiarity with event-driven programming in Python
[✔] Understanding of the differences between multiple delivery platforms, such as mobile vs desktop, and optimizing output to match the specific platform
[✔] Able to create database schemas that represent and support business processes
[✔] Strong unit test and debugging skills
[✔] Proficient understanding of code versioning tools (such as Git, Mercurial or SVN)