Backend Engineer

Арапов Егор

Основной backend-разработчик компании: проектирование и развитие ключевых сервисов, архитектурные решения и техническое развитие backend-направления.

Обо мне

Специализируюсь на создании и развитии внутренних бизнес-систем.

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

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

Роль в компании

Фактически отвечаю за всё backend-направление компании. В зону ответственности входит:

  • проектирование архитектуры новых сервисов
  • развитие существующих систем
  • проектирование моделей данных и структуры БД
  • разработка REST API
  • проектирование интеграций между сервисами
  • обеспечение производительности и стабильности решений
  • внедрение мониторинга и логирования
  • развитие процессов CI/CD
  • исследование и устранение технических ограничений существующих систем

Большинство архитектурных и технических решений по backend-направлению принимаются мной самостоятельно на основании бизнес-требований и технических ограничений проектов.

Масштаб проектов

В разные периоды отвечал за развитие следующих систем:

CRM Сайт компании PIM Система мониторинга сервисов Password Manager

Мои любимые кейсы

все →

Модернизация CRM

Замена критичной для бизнеса 1С-CRM люксового ювелирного бренда на модульный монолит на Django. Самым сложным была не разработка, а нормализация и миграция грязных данных из старой системы.

Подключил телефонию через АТС MangoНастроил интеграцию с Яндекс.Метрикой для анализа спамаУспешно мигрировал данные из легаси
Python Django Celery MySQL Redis

Модернизация устаревшего backend

Постепенный перенос backend сайта Maxim Demidov с легаси-PHP (аутсорс, без тестов и понятной архитектуры) на Django — без остановки бизнеса, через маршрутизацию на Nginx. Попутно расследовал и устранил регулярные падения прода.

Ускорил время отклика на 90% (1,5–3 с → 200 мс)Устранил регулярные падения сервераНаладил доставку заявок в CRM без потерь
Python Django DRF MySQL Elasticsearch

Менеджер паролей

Внутренний менеджер паролей с Zero-Knowledge архитектурой для безопасного хранения корпоративных секретов. Мастер-пароль никогда не покидает браузер пользователя, а сервер физически не способен прочитать содержимое хранимых данных.

Сервер физически не может прочитать секретыВход без передачи пароля — по протоколу SRPОбмен секретами в команде без потери шифрования
Python Django DRF MySQL SRP

Взаимодействие с командой

Несмотря на специализацию в backend-разработке, значительная часть работы связана с координацией задач между подразделениями компании. Регулярно взаимодействую с:

frontend-разработчиком разработчиками 1С системным администратором отделом маркетинга дизайнерами другими сотрудниками
  • участвую в обсуждении бизнес-требований
  • формирую требования для frontend-разработки
  • проектирую API и контракты интеграций
  • ставлю задачи по обмену данными и интеграциям
  • участвую в выборе технических решений
  • оцениваю риски и ограничения предлагаемых изменений

Работа с пользователями

Одна из важных частей работы — взаимодействие с сотрудниками компании, ежедневно использующими внутренние системы. При развитии CRM и других сервисов регулярно собираю обратную связь от менеджеров и пользователей системы. Такой подход позволяет:

  • выявлять неудобные сценарии работы
  • находить повторяющиеся ручные операции
  • определять процессы, требующие автоматизации
  • проектировать функциональность с учётом реальных рабочих процессов пользователей

Многие улучшения и новые функции появляются именно благодаря регулярному общению с людьми, которые работают с системой ежедневно.

Подход к работе

При проектировании решений учитываю не только текущие бизнес-требования, но и дальнейшее развитие системы. Важны:

поддерживаемость масштабируемость наблюдаемость отказоустойчивость безопасность простота сопровождения

Поэтому при реализации проектов внимание уделяется не только бизнес-функциональности, но и качеству архитектуры, мониторингу, логированию, автоматизации и удобству дальнейшей поддержки системы.

Инициативность

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

Принятие решений

Стараюсь не ограничиваться ролью исполнителя. Заметив проблему или возможность улучшения:

  1. 01 Понять корневую причину.
  2. 02 Оценить влияние на пользователей и бизнес.
  3. 03 Исследовать возможные варианты решения.
  4. 04 Выбрать подход с учётом долгосрочных последствий.
  5. 05 Реализовать и довести решение до рабочего состояния.

Технологии

Backend

Python Golang Django Django REST Framework Celery WebSocket

Frontend

React JavaScript HTML CSS

Databases

MySQL PostgreSQL MongoDB Redis Elasticsearch

Infrastructure

Docker Docker Compose Nginx Gunicorn

Monitoring

Prometheus Grafana Loki

Tools

Git Swagger

Контакты