- Linux - be proficient using Ubuntu for example and the CLI and understand how the shell works, what are environment variables, subshells, processes/tasks, etc...
- Docker (and docker-compose) - what are containers and how they work (conceptually) and how to create and run ones
- Git - what does version control system mean and how to use Git
- RDB (relational databases) - what are relational databases, and understand tables, how to create them and make relations between them as needed... also understand that through SQLite and PostgreSQL (preferred) or MySQL
- Python - how to write Python very well and understand its [OOP] implementation...
- Virtualenv - And how to create virtual environments for python to isolate it from the system's installed version...
- Virtualenvwrapper to manage virtual environments easily