Python-разработчик пишет и поддерживает сервисы, автоматизацию или обработку данных. Для первой работы важнее не список библиотек, а умение разложить задачу, написать понятный код и проверить его поведение.
Что изучить для первой работы
Разберите типы данных, функции, исключения, модули, итераторы и основы объектной модели. Затем научитесь читать файлы и JSON, обращаться к HTTP API, писать запросы к базе и тестировать код. Выберите один веб-фреймворк только после основ языка: вакансии требуют разные инструменты, а ход решения остаётся общим.
Проверяйте каждую тему практикой: сформулируйте ожидаемый результат, обработайте неверный ввод и добавьте автоматический тест. Если решение работает только на одном удачном примере, тема ещё не освоена.
Какой проект положить в портфолио
Сделайте небольшой сервис с API и базой: например, учёт учебных задач без настоящих данных людей. Добавьте создание, изменение, фильтрацию, обработку ошибок и тесты. В README опишите запуск, структуру, принятые решения и ограничения.
Не копируйте большой учебный проект. На собеседовании нужно объяснить каждую часть: почему выбрана такая таблица, где проверяется ввод, что случится при повторном запросе и как тест обнаружит регрессию.
Вопросы на собеседовании Python-разработчика
Чем изменяемые объекты отличаются от неизменяемых
Объясните на списке и кортеже, что именно может измениться и как это влияет на передачу объекта в функцию. Придумайте короткий пример с общим списком у двух переменных и заранее предскажите результат.
Почему опасен изменяемый аргумент по умолчанию
Расскажите, когда вычисляется значение аргумента и почему состояние сохраняется между вызовами. Покажите безопасную альтернативу и тест из двух последовательных вызовов.
Как обработать ошибку внешнего API
Разделите тайм-аут, сетевой сбой, неверный ответ и бизнес-отказ. Объясните, какие ошибки можно повторить, как ограничить повторы и что записать в журнал без секретов и персональных данных.
Что проверяет автоматический тест
Назовите наблюдаемое поведение, а не строки реализации. Для функции приведите обычный случай, границу и неверный ввод. Для API добавьте статус ответа и изменение состояния.
Как найти медленный участок
Сначала измерьте, затем отделите ожидание сети и базы от вычислений. Не предлагайте кеш до понимания причины. Объясните, какой замер подтвердит улучшение и как не изменить результат программы.
Как провести ревью своего кода
Проверьте имена, повторения, размер функций, обработку ошибок и тесты. Запустите проект с чистого окружения по README. Отдельно убедитесь, что в репозиторий не попали ключи и локальные данные.
Как понять, что можно откликаться
Откройте несколько подходящих вакансий и отметьте повторяющееся ядро требований. Откликайтесь, если можете самостоятельно показать небольшой работающий проект, объяснить решения, добавить проверку и найти причину простой ошибки. Не ждите совпадения с каждым инструментом из объявления.
Перед интервью пройдите проект от входного запроса до записи в базу, подготовьте один пример найденной ошибки и один пример компромисса. Ответ «не знаю, но проверю так» с ясным планом лучше заученного определения.
Как Просто найди помогает
«Просто найди» собирает вакансии в одну ленту и сопоставляет их с резюме, чтобы было проще выбрать подходящие требования для подготовки. Открытая бета бесплатна: решение об отклике и отправку отклика всегда контролируете вы.