Python в шапке резюме недостаточен. Язык не профессия сам по себе: backend, данные, автоматизация, боты — разные слоты и разные тестовые. Рекрутер за 15 секунд ищет, к какой задаче привязан стек, а не список Django–FastAPI–Pandas–Airflow «на всякий случай». Один фреймворк и один сервис закрывают слот чаще, чем простыня библиотек из десяти курсов подряд. Выберите карточку до рассылки, не после десятка тихих откликов. Стек без задачи в шапке Python не спасает: назовите сервис, домен и фреймворк тестового.
Ниже — как собрать резюме Python-разработчика: выбрать одну карточку, привязать стек к сервису, написать пули, два заполненных примера. Общий каркас — в как составить резюме. Пули — в как описать опыт. Если ещё выбираете направление — в как стать Python-разработчиком. Чистый backend без акцента на языке — соседний материал резюме backend-разработчика. Не закрывайте одним PDF слоты Django, аналитики и Airflow: тестовые разные, папки разные.
Коротко:
- Одна карточка: Python backend, Python данные/скрипты ETL, Python автоматизация. Не все сразу.
- Фреймворк в шапке только тот, на котором готовы к тестовому.
- Пули про сервис, данные, очередь, скрипт с эффектом — не «писал на Python».
- Pandas и ML в backend-файл не кладите, если слот — API и Postgres.
- Один репозиторий с README сильнее десяти сертификатов Stepik.
Куда кладут файл с Python
На вакансиях Python-разработчика названия врут: часть слотов — Django API, часть — скрипты и отчёты, часть — «Python» в DS. Шапка должна совпасть. Иначе тестовое будет не про ваш опыт.
За 15 секунд смотрят:
- Backend, данные или автоматизация?
- Django / FastAPI / Flask / скрипты без веба?
- PostgreSQL и прод или Jupyter?
- Есть ли ссылка на сервис, не на набор каталогов курса?
- Не fullstack ли без фронта в фактах?
Карточка роли — резюме IT-специалиста. Навыки языка без простыни — навыки в IT-резюме. Roadmap языка не заменяет файл, но помогает сузить стек: python-roadmap, fastapi-roadmap, django-roadmap.
Структура Python-карточки
Шапка: Python + роль (backend / автоматизация / данные), фреймворк, город / UTC, одна ссылка. Summary: контур и 2 факта. Опыт. Учебный сервис, если штата нет: резюме без опыта. Навыки группами: язык и веб; данные; очередь; тесты; поставка. Образование внизу.
Не дублируйте «Python, ООП, SOLID, чистый код». Это не стек. Стек: Django, DRF, Celery, PostgreSQL, pytest — если были. Как отбирать — стек в резюме. Summary — summary. Remote — удалёнка.
Заголовок: привязка к задаче
Было. Python-разработчик. Django, FastAPI, Flask, Pandas, NumPy, Spark, Airflow, Docker, Kubernetes, ML, Telegram-боты. Коммерческий опыт и пет-проекты.
Стало. Python backend, Django / PostgreSQL / Celery, уведомления и заказы. 2 года. Репозиторий сервиса статусов: [ссылка]. Pandas и Spark в работе не использовал. Новосибирск / UTC+7, remote.
Если цель — данные, шапка другая: «Python, SQL, выгрузки и витрины», без Django, если его нет. Два файла лучше одного универсального.
Пули: сервис, не язык
Не «разрабатывал на Python». Пишите контур:
- API: ресурс, ошибки, авторизация, версия;
- данные: запрос, миграция, целостность;
- очередь: повтор, идемпотентность, что перестали терять;
- скрипт: какая ручная операция умерла;
- тесты: какой контур покрыли;
- админка / команды management, если это был ваш прод.
Эффект без выдуманных RPS. «Письмо статуса больше не шлют руками» достаточно. Канцелярит — ошибки в резюме. Проекты — как описать проекты.
Пример 1. Junior, FastAPI, учебный сервис
Вакансия: junior Python, FastAPI или Django, SQL, Git, тестовое.
Junior Python backend, FastAPI / PostgreSQL. Учебный API заказов — [ссылка]. Коммерческого штата нет.
Собрал ресурсы заказа: создание, статус, отмена. Ошибки валидации — 422, не 500. OpenAPI в репозитории.
Вынес письмо «собран» в очередь (Redis). Повторная доставка не создаёт второй заказ. Идемпотентность описана в README.
pytest на статусы и повтор. В README честно: нет оплаты и ролей.
Django на курсе — не в шапке. К тестовому на FastAPI готов на этой неделе.
Узкий фреймворк совпадает со слотом. Не дописывайте Django «ещё знаю» в первую строку.
Пример 2. Django в продукте
Вакансия: Python, Django, PostgreSQL, очереди, сопровождение.
Python backend, Django / DRF / PostgreSQL / Celery. Платежи онлайн-курсов. 3 года. UTC+3, remote.
Собрал сервис уведомлений об оплате: Celery + повтор вебхука. Поддержка перестала слать письма руками на пике.
Разобрал таймаут отчёта задолженностей: запрос и индекс, сборка с 40 до 12 секунд, отчёт перестал падать.
Покрыл вебхуки тестами на повтор. Регресс кассы перед релизом — с полудня до часа.
Дежурил по инцидентам биллинга, вёл статус в канале. Не обещаю Spark и Airflow: пайплайнов данных не вёл.
Это Python как backend. Слот «Python для аналитики» этим файлом не закрывайте — соберите аналитическую карточку.
Боты, скрипты, фриланс
Телеграм-бот — опыт, если есть пользователи, очередь, ошибки, деплой. Бот «погода за час курса» в шапку не ставьте. Фриланс: отрасль заказчика, API, срок поддержки. Три парсера без сопровождения слабее одного сервиса.
Автоматизация Excel/1С на Python — отдельная карточка под слоты автоматизации, не под Django middle. Не маскируйте.
После сборки — проверка резюме. Часто всплывает стена библиотек и ноль контура.
Письмо, тестовое, созвон
Письмо указывает на сервис и фреймворк вакансии: сопроводительное, без стажа — письмо без опыта, генератор.
Тестовое часто API + SQL. Не обещайте неделю. Тестовое задание. Вопросы — вопросы на собеседовании Python, interview-prep. Live-coding — готовьте свой сервис к рассказу: как рассказать о проекте. Тишина — почему не отвечают: часто DS-слот или Java-слот при Python-шапке без фильтра.