Здесь собран обзор технологий, которые часто встречаются в вакансиях Python-разработчиков. Не нужно знать весь список одинаково глубоко: важно понимать назначение каждого инструмента и уверенно владеть стеком, который нужен для выбранной роли.
Python и web
- Фреймворки: Django, Django REST Framework, FastAPI, Flask.
- Работа с данными: Django ORM, SQLAlchemy, Alembic.
- Тестирование: pytest,
unittest, интеграционные и end-to-end-тесты. - Качество кода: Ruff, mypy, Black, pre-commit; в существующих проектах также встречаются Flake8 и isort.
- Запуск web-приложений: Uvicorn, Gunicorn.
- Другие библиотеки: aiogram для Telegram-ботов.
Базы данных, кэши и очереди
- Реляционные БД: PostgreSQL, MySQL.
- Аналитические БД: ClickHouse.
- Кэши и NoSQL: Redis, Memcached, MongoDB.
- Брокеры сообщений: Apache Kafka, RabbitMQ.
- Фоновые и периодические задачи: Celery; Apache Airflow — прежде всего для оркестрации data pipelines.
Наблюдаемость
- Логи: Elasticsearch, Logstash и Kibana (ELK/Elastic Stack).
- Метрики и дашборды: Prometheus, Grafana, Datadog.
- Ошибки и трассировка: Sentry и другие APM-инструменты.
Инфраструктура
- CI/CD: GitLab CI/CD, GitHub Actions.
- Контейнеры и оркестрация: Docker, Docker Compose, Kubernetes.
- Базовые инструменты: Linux, Git, Nginx, S3-совместимые объектные хранилища.
Дополнительные технологии
Они реже нужны на старте, но могут встречаться в конкретных командах:
- Helm, Ansible, HashiCorp Vault и Consul;
- DynamoDB, Cassandra, Aerospike и Tarantool;
- Docker Swarm и Rancher.