Обо мне

Специализируюсь на разработке серверной части web-приложений.

В качестве фреймворка предпочитаю Django.

Профессиональные навыки
Опыт работы
Сентябрь 2016 — по настоящее время
Backend Developer
Тверь
Май 2016 — Июль 2016
Тутрастут
Backend Developer
Москва
Обязанности и достижения

Доска объявлений с элементами соцсети.
БД PostgreSQL, Celery для асинхронных задач + Redis в качестве брокера и кэша.
MPTT для категорий, чат с возможностью конференций, регистрация/авторизация через соцсети, чёрные списки, follow'ы и уведомления.

Март 2016 — Май 2016
Damastera
Backend Developer
Екатеринбург
Обязанности и достижения

Сервис агрегации поисковых запросов.
В качестве БД - PostgreSQL 9.5
Из-за больших нагрузок на БД было принято решение "отстаивать" данные в Redis и раз в полчаса складывать их в БД (UPSERT'ами, из-за чего используем версию 9.5).
Сейчас на небольшом VPS за 200 рублей хранится таблица размером в 10+ млн. записей.

Октябрь 2015 — Март 2016
PayStart
Backend Developer
Москва
Обязанности и достижения

Админка для платёжного шлюза.
От шлюза принимает данные, проверяет подпись (HMAC) и кладёт в БД.
В качестве БД используется PostgreSQL.
Раз в день обновляет курсы валют (ЦБРФ).
Позволяет смотреть все транзакции, выгружать их в CSV, фильтровать по статусам, дате и пр.
Графики распределения транзакций по статусам, суммам и т.д.
В качестве кэша и хранилища сессий - Redis.

Август 2015 — Сентябрь 2015
Backend Developer
Сергиев Посад
Обязанности и достижения

Биржа блогеров для http://www.livejournal.com/
Django 1.8 + PostgreSQL. API LJ для авторизации. Воркеры для отправки оповещений юзерам через API LJ. Middleware для гарантированного заполнения регистрационных данных. Context Processors для главного меню. Фильтрация блогеров с помощью AJAX.

Апрель 2015 — Август 2015
Damastera
Backend Developer
Екатеринбург
Обязанности и достижения

Площадка для предоставления услуг разных мастеров (сантехников, плиткоукладчиков и т.п.), MPTT для древовидных категорий, поиск мастеров вниз и вверх по дереву, сортировка по рейтингу, отзывы, сбор заявок, отправка емейлов и т.д.

Декабрь 2014 — Март 2015
Ecoinlife
Backend Developer
Усть-Каменогорск
Обязанности и достижения

Первый проект. Личный кабинет для компании сетевого маркетинга.
Юзеры в виде дерева. О mptt тогда не знал, поэтому все запросы обхода дерева (чаще - были обходы поддеревьев) тривиальные отдельные запросы, вызываемые рекурсивно. Т.к. это довольно затратная операция, подсчёты кэшировались в memcached. В качестве БД использовалась MySQL (и драйвер PyMySQL)

Октябрь 2014 — Апрель 2015
Workscape
Backend Developer
Усть-Каменогорск
Обязанности и достижения

Узкоспециализированная CRM для тендерных закупок. Учёт тендеров, учёт по каждому работнику, графики прибыли, парсер для разных сайтов-площадок по размещению тендеров.