

Михаил Мартыненко
Project Manager, DevOps engineer и FullStack Web-разработчик на Python
Обо мне
Больше 4 лет пишу на Python для автоматизации работы. Работаю комплексно - как с бэкендом (Python, Ubuntu/Linux, Nginx, Docker, Kubernetes, PostgreSQL, Django, Helm, Terraform), так и с фронтендом (HTML, CSS, JavaScript).
Понимаю и практикуюсь в DevOps:
- Деплой: VM, Docker, Kubernetes
- OS: Linux/Ubuntu
- Web-server и балансировщики: Nginx/Ingress
- Firewall: UFW
- GitOps: AgroCD
- Secret Management: Hashicorp Vault
- Конфигурация: Ansible
- CI/CD: Gitlab CI, Jenkins
- IaC: Terraform
- Monitoring: Prometheus, Grafana, Loki
- Опыт в облаках: Yandex Cloud
Постоянно занимаюсь саморазвитием - участвую в профильных конференциях, обучающих программах как на работе так и вне работы по интересующим меня направлениям. Это помогает мне понимать стэк технологий и видеть широкий спектр инструментов существующих на рынке.
На проекты всегда смотрю комплексно - для меня важно знать не только что я делаю, но и зачем. Умею договариваться с разными группами людей для налаживания совместной работы.
В мае 2023 закончил обучение по программе DevOps для эксплуатации и разработки - Яндекс.Практикум. Full-stack веб-разработчик на Python (Python, Django, jQuery, HTML, Linux - администрирование + Dev-Ops).
Инфо
Навыки
Языки
Опыт работы
- реализована поддержка и развитие геоинформационной системы РусГИС (учет объектов недвижимости, цифровой двойник) в Сочи и Новороссийске. Проведена интеграция РусГИС с системой межведомственного электронного взаимодействия (Project management)
- в рамках pre-sale системы интеллектуального видеонаблюдения создана мини-ГИС для расчета и формирования пунктов ТЗ в соответствии с изменяющимися пожеланиями заказчика (Python 3.2, Ubuntu 20.04, Django 4.2, MySQL, JavaScript, Leaflet)
- разработал предложения для создания системы учета и мониторинга исполнения энерегосервисных контрактов
- инициировал, обосновал и создал обособленное от департамента ИТ подразделение по развитию цифровой экономики
- сформировал и обучил команду
- организовал разработку и принятие местных правовых актов для реализации проекта "Умный город", дорожной карты
- организовал обучение муниципальных служащих (более 150 человек из смежных подразделений, включая руководителей) по программе цифровой трансформации
- силами своей команды реализовал ряд MVP проектов (см. далее)
- провел работы по подготвке к внедрению (формирование команды из заинтересованных лиц, привлечение ЛПР, анализ предложений и выбор системы) системы электронного документооборота, а затем внедрил СЭД для 1500 пользователей на старте и более 2500 в продолжении
- провел инвентаризацию локальной вычислительной сети, подготовил проект по ее модернизации
- внедрил электронную систему "Обращения граждан"
- выбрал и внедрил open-source решение для ВКС on premise, позволяющее обеспечить потребности организации в проведении конференций и горизонтально масштабироваться (Jitsi meet)
Образование
DevOPS, CI/CD, Gitlab Ci, Jenkins, Terraform, Ansible, Docker, Linux Debian/Ubuntu, k8s, Nginx, Nexus, Hashicorp Vault.
Курсы
Debian/Ubuntu, Nginx, CSS, HTML, Python, Flask, PostgreSQL, Django, JQuery
JupyterLab, Pandas, Numpy
Проекты
Python 3 / Django / PostgreSQL / JavaScript / HTML / CSS / JQuery / Docker / Linux
Система мониторинга энергоснабжения Краснодара
- обрабатывает сигналы об аварийных отключениях (получаемых в текстовом виде) и отображает их на тепловой карте. Позволяет вести журнал работ по отключению.
Моя часть работ:
- идея проекта, руководство проектом
- привлечение ЛПР
- решение всех организационных проблем (выделение ВМ, почты, организация получения сообщений от энергоснабжающей компании)
- фронтенд (50%) - JavaScipt, HTML, JQuery, Leaflet
- бэкенд (100%) - Python 3, Django, PostgreSQL, Memcached
- сбор, адаптация и импорт исходных данных (около 50 тыс. объектов)
В настоящее время система работает на моих ресурсах. Аналогов на территории Краснодара не имеет. Собраны уникальные данные по отключениям, на основании которых возможно сформировать инвестиционную стратегию энергоснабжающей компании
Python 3 / Django / PostgreSQL / Memcached / Javascript / HTML&CSS / JQuery
Умные остановки
Создано веб-приложение для отображения прогноза прибытия общественного транспорта путем размещения QR-кодов на остановках.
Цель - помочь человеку понять какой именно транспорт и когда подъедет именно к этому месту, и куда этот транспорт направляется. При этом в отличие от электронных табло, стоимость установки которого от 100-200 тыс. рублей + ежемесячное обслуживание в районе 5-10 тыс. рублей, стоимость нанесения QR-кода для одной остановки- 200 рублей.
Моя часть работ:
- идея проекта, руководство проектом
- привлечение ЛПР
- фронтенд (50%) - JavaScipt, HTML, JQuery, Leaflet
- бэкенд (100%) - Python 3, Django, PostgreSQL, Memcached
- сбор, адаптация и импорт исходных данных, получение потоков из навигационной системы
Система работает до настоящего времени на территории Краснодара.
Python 3 / Django / PostgreSQL / Memcached / Javascript / HTML&CSS / JQuery
Система электронных пропусков
За месяц до того как QR коды появились в федеральной повестке и это стало мэйнстримом, предложил и совместно с разработчиками ЭР-Телеком разработал прототип системы выдачи пропусков для передвижения людей, в том числе на личном траспорте в период пандемии.
Моя роль:
- идея и концепция проекта
- постановка задач разработчикам, ежедневный разбор
- организация презентаций для ЛПР
- обеспечение интеграций с ведомственными системами (ЕСИА, внутренние ИС)
Проект был реализован одним из первых в стране.
Python 3 / Django / PostgreSQL / Memcached / Javascript / HTML&CSS
Мониторинг общественного транспорта
В свободное время продолжаю развивать проект по отображению общественного транспорта в Геленджике.
Зачем и почему:
- на сегодняшний день нигде из общедоступных ресурсов транспорт онлайн не отображается, в том числе и на яндекс картах (при этом, согласно пресс-релизам, интегация с яндексом прошла)
- на региональном ресурсе данные есть, возможно через api получить маршруты и транспорт привязанный к муниципалитету
- вопрос отображения транспорта особенно актуален в курортный сезон
На данном этапе мое приложение в состоянии брать данные из региональной системы по всем муниципалитетам (пока я ограничил только Геленджиком).
Отображать на карте положение транспорта, его статус, маршруты. В случае если автотранспортная организация привязала свои автобусы к маршрутам (такое происходит очень редко), то тогда полноценно видно карту маршрута.
В планах:
- автоматически привязывать автобус к маршруту на основании пройденного трека
- после привязки к маршруту вычислять прогнозное время прибытия к остановке
- как только заработает прогноз, реализовать идею с QR (см. проект выше)