👋 Стартовала третья неделя марафона, посвящённая мотивации и отношениям в команде! Со Skyeng и IVI обсудим, как дружить с коллегами на удалёнке и находить в себе силы на работу и общение. Регистрируйтесь на страничке марафона и присоединяйтесь!
borovilovborovilov

Руслан Боровилов

Python developer and CI/CD engineer · Бэкенд · Разработка ПО
Не ищу работу
Возраст: 28 лет
Опыт работы: 6 лет и 8 месяцев
Регистрация: 18.09.2013
Последний визит: 2 недели назад
Местоположение: Россия, Москва
Войдите, чтобы посмотреть контакты пользователя

Обо мне

Специализация и профессиональные навыки: Python программист. Работа с Django. CI/CD engineer.

В разработке на Python стремлюсь к написанию хорошо читаемого, легко поддерживаемого, масштабируемого кода. Стараюсь придерживаться python zen, ищу pythonic way. Покрываю код тестами и комментариями.
Опыт в использовании Python 2 и 3 и Django уже более 5 лет.

Знаком с технологиями веб-фронтенда HTML/CSS/JS/LiveScript/ExtJS/AngularJS. Работал с PostgreSQL. Умение читать и писать запросы на SQL. Опыт работы с WxPython и Tk. Владею слепым десятипальцевым методом печати. Работа по Agile, Scrum с использованием JIRA, Redmine, TFS и систем контроля версий Git и Mercurial. Опыт работы с системой непрерывной разработки Teamcity/Jenkins. Знание парадигм ООП и функционального программирования, паттерны проектирования. Продвинутый пользователь Linux. Английский, достаточный для чтения зарубежной технической литературы по специальности.

Профессиональные цели: Стремлюсь к интересным задачам, которые помогут мне сделать себя лучшим программистом.

Личные качества: Ответственный, исполнительный, доброжелательный, без вредных привычек, при наличии доступа в Google и Stackoverflow могу решить практически любую задачу.

Участие в профессиональных сообществах

  • GitHub
    @Pycz, c янв. 2012 (8 лет и 10 месяцев)
    143 вклада в 7 репозиториев, связан с языками:

Опыт работы

  • Крупнейшая российская поисковая система и портал. Яндекс есть также в Казахстане, Беларуси и Турции.
    Москва · Более 5000 сотрудников
    Разработчик
    Февраль 2019 — По настоящее время (1 год и 10 месяцев)

    Улучшал жизнь бэкенд-разработчиков Яндекс.Такси путем автоматизации процессов разработки, тестирования и деплоя сложной системы микросервисов на разных языках программирования (Python2.7/Python3.7/C++).

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

    Разработал несколько внутренних инструментов для разработчиков: систему для проверки кода линтерами локально и на Teamcity для языка Python, аналогичную систему для форматирования JSON и YAML файлов, несколько Greasemonkey скриптов для внутренних веб-ресурсов компании. Также занимался разработкой и поддержкой генерации документации для микросервисов на основе OpenAPI схем.

    Участвовал в работе над внутренним фреймвёрком для кодогенерации микросервисов.

  • Информационная безопасность, разработка ПО
    Москва · От 100 до 1000 сотрудников
    Руководитель группы
    Октябрь 2018 — Февраль 2019 (5 месяцев)

    Продолжал работать над комплексом для защиты сетевой инфраструктуры АПКШ «Континент» 4.0.

    Кроме разработки и поддержки основного проекта вел обучающую работу с командой Django-разработчиков начального и среднего уровня, размер которой с течением времени варьировался от 1 до 3 человек. Имеется опыт проведения собеседований.

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

    Ведущий программист
    Апрель 2018 — Октябрь 2018 (7 месяцев)

    Продолжал работать над комплексом для защиты сетевой инфраструктуры АПКШ «Континент» 4.0.

    Кроме разработки и поддержки основного проекта вел обучающую работу с командой Django-разработчиков начального и среднего уровня, размер которой с течением времени варьировался от 1 до 3 человек.

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

    Старший программист
    Январь 2017 — Апрель 2018 (1 год и 4 месяца)

    Работа в команде разработчиков над комплексом для защиты сетевой инфраструктуры АПКШ «Континент» 4.0.


    Занимался разработкой серверной части системы управления иерархией серверов на Django. Задача бэкенда - управление конфигурациями: валидация связей между объектами, версионирование, проверка прав, конфигурирование Linux-компонент, выдача конфигурации другим модулям, написанным на C++.

    Для создания и редактирования конфигураций клиентское C++ приложение вызывает REST API сервиса, реализованного на Django. Сервис валидирует пришедшие данные, проверяет конфигурацию на наличие конфликтов, формирует файлы конфигурации сервисов Linux при помощи шаблонов (nginx, squid, openssl, и т.д.), сохраняет конфигурацию в PostgreSQL.

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

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

  • Вооружённые Силы Российской Федерации
    Красногорск
    Сержант срочной службы
    Декабрь 2015 — Декабрь 2016 (1 год и 1 месяц)
    По результатам срочной службы было присвоено звание "младший сержант", вел деятельность по канцелярской части.
  • FIX LLC
    Казань
    Инженер-разработчик
    Июль 2015 — Декабрь 2015 (6 месяцев)

    Работа в команде разработчиков над проектом по продаже и подписке на контент для мобильных устройств и персональных компьютеров - http://informpartner.com/.

    Вел разработку внутренней административной веб-функциональности, в работе в основном использовались Django1.7/PostgreSQL/AngularJS1.0/LiveScript.

  • Создаем технологии, меняем жизнь
    Казань · От 1000 до 5000 сотрудников
    Разработчик
    Апрель 2014 — Июль 2015 (1 год и 4 месяца)

    Работа над проектами "БАРС. Ветеринария" - крупной онлайн системой учета животных для врачей-ветеринаров и "БАРС. Электронная Школа" - комплексная онлайн система для оказания государственных услуг школам, учителям, ученикам и их родителям.

    В основном разработка велась с использованием Python2/Django1.3/PostgreSQL.

Высшее образование

  • КФУ

    Казанский федеральный университет
    Институт вычислительной математики и информационных технологий
    Сентябрь 2010 — Июнь 2015 (4 года и 9 месяцев)
    Кафедра теоретической кибернетики.

Рекомендательные письма

  • Денис Поликашин
    · знакомый
    linux впитал с молоком матери. Первые его слова были sudo rm -rf
    Письмо написано 07 октября 2013 в 18:37
  • Денис Поликашин
    · знакомый
    Если ему необходимо найти файл на PC или в WEB, то он не будет искать его вручную, он сотворит скрипт, который сделает это за него.
    Письмо написано 07 октября 2013 в 18:11
  • Денис Поликашин
    · знакомый
    Git так прочно сидит в его жизни, что он делает commit перед принятием важного решения и chekcout, если последствия ему не понравились.
    Письмо написано 07 октября 2013 в 18:15
  • Эмиль Шарифуллин
    python программист · знакомый
    Отлично работает с ним
    Письмо написано 07 октября 2013 в 18:26