By Rustam-Z 🚀
Can be used by Backend Developers, Data Engineers, Automation Engineers, and anyone who wants to advance in Python.
- Advanced Python topics
- Object model, data structures (mutable and immutable, LEGB rule, shallow and deep copy, dict hashing, data type caching in Python)
- Dataclasses,
collections - Decorators
- Iterators, generators
- Context managers
- Advanced topics in OOP (Method Resolution Order MRO, Inheritance diamond problem, dunder methods, ABC abstract class,
super(), descriptors, property, method overriding and overloading, duck typing, monkey patching, mixin) - Concurrency:
threading,asyncio, I/O bound - Asynchronous programming (coroutines, async & await)
- Parallelism:
multiprocessing, CPU bound - Memory management
- Global Interpreter Lock (GIL)
- Garbage collector (reference counting, three generation garbage collection mechanism)
- Metaprogramming (runtime code execution)
- Python clean coding, and engineering excellence.
- Check resources below ⬇️
- Development principles (SOLID, DRY, KISS)
- Coding design patterns
- Testing
- Mocking, patching, fixtures
- PyTest, unittest for unit, integration testing
- Selenium for UI end-to-end testing
- Code coverage and static analysis tools
- Profiling and optimization with
cProfile - Package and environment management (Poetry, PyPi)
- Must know libraries:
logging,argparse,pathlib,os,sys,requests,itertools,json,yaml,csv, regex
- Python OOP 8 tips
- realpython.com best practices
- Python object model
medium, https://book.pythontips.commedium, https://medium.com/techtofreedom/python/homemedium, https://pythontutorial.netmedium, https://docs.python-guide.orgadvanced, https://thedigitalcatonline.comadvanced, https://python-3-patterns-idioms-test.readthedocs.ioadvanced, https://www.fullstackpython.comadvanced, https://testdriven.io/
- GitHub: Python clean code
- PEP 8
- Google's Python style guide
- testdriven.io: Clean code in Python
- LinkedIn: Clean coding practices
- LinkedIn: Advanced Python
- My notes on SOLID
- My notes of design patterns
- Python design patterns
- YouTube: 8 Design Patterns EVERY Developer Should Know
- YouTube: 10 Design Patterns Explained in 10 Minutes
- Concurrency and Async Programming, realpython.com
- LinkedIn: Python Parallel and Concurrent Programming Part 1
- LinkedIn: Python Parallel and Concurrent Programming Part 2
- Book “Python testing with PyTest”
- Book “Python testing with Selenium”
- Book “TDD in Python”
- Book “Python Unit Test Automation“
- Book "XUnit Test Patterns" book
- "Python basics"
- "Python tricks"
- "Clean Python"
- “Practices of the Python Pro”
- “Python Workout”
- “Effective Python”
- "Fluent Python"
- "Learning Python”
- "Python Cookbook"
- "Advanced Guide to Python 3"
- "Mastering Object-Oriented Python"
- “The Python workshop”
- “Expert Python Programming”
- @mCodingWithJamesMurphy
- @ArjanCodes
- RU: Yandex Python Practicum
- Corey Scafer
- Watch conference recordings
- "Clean Code: A Handbook of Agile Software Craftsmanship"
- "Clean Architecture"
- "Code Craft: The Practice of Writing Excellent Code"
- "The Clean Coder: A Code of Conduct for Professional Programmers" (Robert C. Martin Series)
- "Beautiful Code: Leading Programmers Explain How They Think"
- "The Pragmatic Programmer: From Journeyman to Master"
- "Code Complete: A Practical Handbook of Software Construction"
- "Soft Skills: The software developer's life manual"
- "On Managing Yourself"
- "How to answer the 64 toughest interview questions"
- "The Mythical Man-Month: Essays on Software Engineering"
- "Programming Interviews Exposed"
- "Elements of Programming Interviews: The Insiders' Guide 2nd Edition"
- "Programming Pearls 2nd Edition"
- daily.dev
- YouTube: @yegor256
- bytebytego.com
- pragmaticengineer.com
- High Growth Engineer
- YouTube: The Engineering Room by Dave Farley
- Small Batches by Adam Hawkins
- GitHub: engineering-blogs
- Dive into System Design topics: watch the "Systems Expert by AlgoExpert" course, read the "System Design interview" book.
- Dive into DevOps and Cloud Arch, pass AWS Solution Architect Certification.
- Dive into database topics (scalability, sharding, replication, NoSQL databases, CAP theorem).
- Learn best practices in the areas of your interest: backend, AI, automation.
- Constantly upgrade your coding and engineering excellence skills.