Geekfactor Geekfactor

Django Developer

Разработка web-приложений на Django: ORM, админка, формы, API.

Уровни и матрица компетенций

Junior

Junior Django Developer

ORM, админка, шаблоны, формы, простые CRUD.

Задачи и ответственность

- Делать модели и формы
- Писать простые views
- Настраивать админку
- Исправлять баги

Требования

- Django basics
- ORM querysets
- Templates
- База SQL
- Django auth basics

Темы для интервью

- select_related/prefetch_related
- Миграции
- CSRF
- Permissions basics

Проекты в портфолио

- Админка + витрина
- Профиль пользователя
- CRUD с фильтрами

Рост и следующие шаги

Дальше: Middle Django (DRF, celery, performance).

Middle

Middle Django Developer

Уверенный Django в продакшене: DRF, celery, оптимизация запросов.

Задачи и ответственность

- Вести фичи end-to-end
- Делать API на DRF
- Делать фоновые задачи
- Оптимизировать ORM

Требования

- DRF
- Postgres
- Redis/Celery
- pytest
- Docker
- Базовая безопасность

Темы для интервью

- N+1 и оптимизация
- Permissions/Authentication
- Signals vs services
- Миграции

Проекты в портфолио

- API + worker
- Rate limiting
- Audit logging

Рост и следующие шаги

Дальше: Senior Django, Tech Lead Backend.

Senior

Senior Django Developer

Архитектура Django проектов, надежность, масштабирование, стандарты команды.

Задачи и ответственность

- Архитектурные решения
- Performance и наблюдаемость
- Сложные интеграции
- Менторинг

Требования

- Архитектурные паттерны
- Observability
- Миграции без даунтайма
- Security practices

Темы для интервью

- Multi-tenant
- Background processing patterns
- Caching strategies
- Data migrations

Проекты в портфолио

- Большой модуль с чистыми границами
- Переезд схемы данных
- Наблюдаемость + алерты

Рост и следующие шаги

Дальше: Tech Lead / Architect.

Статьи

PodCast Python: Асинхронщина с базами данных
Джуниорские темы из нашей повестки никуда не исчезли, но первый выпуск после трансформации Python Junior Podcast → Moscow Python Podcast преисполнен хардкора и…
Просто про Git
Git - распределенная система контроля версий, она облегчает работы с исходными кодами. Система управления версиями позволяет хранить несколько версий одного и …
Учимся использовать API сервиса Yandex SpeechKit
После прочтения статьи вы сможете: разобраться, что же такое API на простых примерах (macOS); познакомиться с сервисом распознавания и синтеза речи от Yandex; …
Библиотека Requests: HTTP for Humans
Язык Python является универсальным языком программирования. С его помощью можно решать разнообразные задачи в сфере разработки. Одной из таких сфер, в котор…
Материалы для новичков в python
Часто у новичков, которые только начинают знакомиться с программированием на python, возникает чувство некой пустоты, будто есть что-то, чем со всеми поделилис…
HR-аналитика и Python
Для каждого набора на курсах Learn Python мы создаем чаты, в которых общаются наши ученики и кураторы. Эти чаты остаются и по окончании учебы. И помимо вопросо…
Learn Python в Пензе
23 ноября начнутся занятия у учеников нового набора курсов Learn Python. Но теперь оффлайн-занятия будут проходить не только в Москве, но и в Пензе. И …
Батарейки в python есть, но они протекают - Эмбер Браун в дискуссии с Гвидо
Amber Brown (контрибьютор в Twisted) поделилась своей критикой стандартной библиотеки Python. Это оказалось самой спорной дискуссий дня; Гвидо ван Россум буква…