Skip to content
View igorsimb's full-sized avatar

Block or report igorsimb

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
igorsimb/README.md

Игорь Симбирцев

Senior backend-разработчик на Python


О себе

Я backend-разработчик, последние несколько лет работаю с внутренними системами и аналитическими контурами: загрузка данных, обработка, контроль качества, отчёты и инструменты для аналитиков.

В основном это production-системы, которые:

  • ежедневно обрабатывают десятки миллионов строк данных,
  • работают с ClickHouse объёмом в терабайты,
  • используются аналитиками и бизнесом

Моя основная зона ответственности — backend и данные.
Фронтенд использую прагматично: чтобы поверх сложной логики был удобный и понятный интерфейс.


Чем я в основном занимаюсь

  • проектирую и поддерживаю backend-системы для аналитики;
  • выстраиваю пайплайны загрузки и обработки данных;
  • работаю с ClickHouse, Postgres и фоновыми задачами;
  • делаю внутренние admin-интерфейсы и инструменты для команд;
  • много внимания уделяю стабильности, поддерживаемости и понятности систем.

Стек

Backend

  • Python 3.9–3.13
  • Django, Django REST Framework
  • FastAPI, Flask
  • asyncio (использую в production, без фанатизма)

Хранение данных

  • PostgreSQL
  • ClickHouse (TB-scale)
  • Redis
  • ScyllaDB

Фоновые задачи и планирование

  • Celery, Celery Beat
  • Airflow (около 15 активных DAG’ов)

Инфраструктура

  • Docker, Docker Compose
  • GitHub Actions (CI)

Качество и поддержка

  • pytest
  • loguru
  • структурированное логирование и документация

Некоторые проекты, которые я разрабатываю (production, private)

Внутренняя аналитическая платформа и admin-интерфейс

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

Система объединяет:

  • загрузку данных от поставщиков (email / FTP),
  • валидацию и консолидацию файлов,
  • ночные пайплайны обработки данных,
  • отчёты разной сложности поверх ClickHouse,
  • интеграции с внешними сервисами.

Технически это Django-приложение с Celery и Airflow, работающее поверх ClickHouse (~2.4 TB) и Postgres.

Что удалось сделать:

  • перевести контур аналитических данных из «реактивного» состояния в управляемый;
  • снизить количество повторяющихся инцидентов;
  • сделать процессы предсказуемыми и воспроизводимыми;
  • дать аналитикам возможность работать с данными без постоянного участия разработки.

Pricelens — наблюдаемость загрузки данных

Отдельная подсистема, которую я спроектировал и реализовал для контроля загрузки данных от поставщиков.

Она фиксирует события на всех этапах пайплайна, хранит причины ошибок и даёт интерфейс для расследования проблем.

В результате:

  • появилась сквозная видимость процесса загрузки;
  • проблемы стали выявляться раньше;
  • стало проще находить нестабильных поставщиков и узкие места в контуре.

Emex Upload

Модуль внутри Django-приложения для загрузки и проверки больших файлов.

Основная сложность здесь — валидация и UX:

  • файлы до ~1 млн строк,
  • сложные правила проверки,
  • почти realtime-обратная связь пользователю,
  • подробные сообщения об ошибках и статусах обработки.

Как я подхожу к работе

С инженерной стороны мне важны:

  • поддерживаемость кода,
  • понятная архитектура,
  • тесты и документация.

Со стороны бизнеса — умение объяснять сложные технические вещи разным аудиториям.
Благодаря образованию в лингвистике я довольно легко переключаюсь между «инженерным» и результат-ориентированным языком.


Контакты

Pinned Loading

  1. admin2 admin2 Public

    Python

  2. mp-monitor mp-monitor Public

    Django app for scraping Wildberries

    Python 1

  3. enerdjized enerdjized Public

    A django project template with basic setup, templates, Tailwind, allauth

    Python

  4. ez2task ez2task Public

    Currently, my flagship project.Task and project management app. Supports multiple users working on the same projects with different access privileges.

    CSS 2

  5. atani-report atani-report Public

    Python app that takes specific info from an excel spreadsheet and creates a text report using this info

    Python