Специалисты
Опыт работы с языками:
Скриптовые: Bash, Python, Node.js
Конфигурации: YAML, TOML, JSON
Веб: Javascript ES6, Typescript, CSS3, HTML5
Приложения: C, C++, Python, Go
Работа с данными: SQL, pg/plSQL, Python(pandas), Dataweave
Опыт работы с фреймворками:
Vue.js, Quasar; Django, Django DRF, Flask, FastAPI, SQL Alchemy, Pytest;
Опыт работы с веб библиотеками и технологиями:
Vue.js, Vite, Quasar, Vuex, Pinia, Axios, Vue router,
Moment, Material Design, Antd, Taiga UI, Charts.js,
SCSS, Styled-components,
Web components, OpenAPI, Telegram InstantView
Опыт работы с инструментами и платформами:
Docker, Docker-compose, Kubernetes, Helm,
Nginx, HAProxy,
Kafka, RabbitMQ, Celery,
Git, GitLab CI/CD, Jenkins,
Java Virtual Machne, JNI, JVM TI,
Alpine, Debian, Fedora Linux,
Amazon Web Services, Google Cloud Platform,
Mule ESB, TIBCO Spotfire (конкурент Power BI)
Опыт работы с инструментами мониторинга и логирования:
Grafana, Prometheus, Loki, Datadog, ELK stack, OpenSearch
Опыт работы с инструментами *-as-Code:
Ansible, Terraform
Опыт работы с СУБД:
PostgreSQL, SQLite, DuckDB, Clickhouse, Redis, Cassandra
Также опыт работы c:
Jira, Confluence, BPMN 2.0, DFD, SOA, Бессерверные вычисления, Git Flow, Trunk-based
development
Автоматизированный сбор, классификация, анализ и хранение данных из сети Интернет на 26 языках мира
Роль: DevOps Состав команды: 2 DevOps, 1 team lead, 1 product manager, 1 sales rep., 2 data scientist, 2 fullstack developers Что реализовывал: мониторинг кластера Kafka и ZooKeeper стеком Grafana, JMX exporter, Prometheus. Покрытие тестами Python кода обработчиков и преобразователей текста и произвольных данных из Интернета. После инцидента с несанкционированной отправкой запроса в неизвестный приёмник настроил iptables правила для блокировки пакетов и Snort IDS для обнаружения подозрительной сетевой активности в периметре проекта
Python, Pytest, Django, Docker; Amazon Web Services, Gitlab, CentOS 7; Grafana, Prometheus, JMX; ELK Stack; iptables, Snort, ssh
3 месяца месяцев
Электронная система автоматической подачи заявлений на командировочные визы
Для международных компаний предоставляется услуга электронного документооборота, которая позволяет подготовить пакет документов для подачи на визу сотрудникам, которые отправляются в командировку в какую-либо страну из списка. Роль: Backend разработчик/DevOps Состав команды: 1 разработчик и DevOps, 1 системный аналитик, 1 ведущий проекта Что реализовывал: Дорабатывал новые фичи по запросу, поддерживал код. Поддерживал сборку на Jenkins конвейере, подключал к целевой машине для выгрузки с защитой сертификатом TLS v1.3
Python, FastAPI, SQL, Jenkins, Groovy, ssh, TLS
3 месяца месяцев
Облачный сервис и мобильный SDK для традиционных банков, которые хотят внедрить современные FinTech практики в свой банк и стать конкурентоспособными
Система позволяет удалённо: 1) зарегистрировать нового клиента при наличии документа, удостоверяющего личность, и внести его во внутренние сервисы банка, 2) безопасно авторизовать существующего клиента банка, 3) создавать постоянные и временные виртуальные карты, управлять ими (создание, изменение, удаление) и использовать их (переводы с карты на карту, оплаты в магазинах посредством NFC и QR кода, оплата в онлайн магазинах) 4) оценивать рискованность транзакций и блокировать подозрительные с точностью, стремящейся к 100% Весь вышеупомянутый функционал успешно прошёл аудит PCI-DSS и был сертифицирован и рассчитан на внедрение в собственные банковские приложения, включая мобильную и веб-версию. Роль: backend разработчик Состав команды: 1 ведущий разработчик, 1 ведущий продукта, 1 инженер по качеству, 1 Ops-инженер, 1 разработчик, 2 разработчика SDK для мобильных устройств, 1 специалист по антифроду Что реализовывал: Участвовал в разработке модуля по оценке рисков совершаемых транзакций, дополнял экспертным мнением по грядущей эксплуатации в промышленном контуре и инфраструктурным соображениям. Разрабатывал функционал, дополнял, покрывал тестами, создавал отчеты по нагрузочному тестированию и рефакторил текущий код с расчётом на дальнейшую интеграцию в общий проект и как самостоятельную бизнес-услугу. Участвовал и успешно прошёл PCI-DSS аудит системы.
Amazon Web Services, Serverless (Бессерверные вычисления), Mongo Atlas, Gitlab, Git Flow, DevOps; Node.JS, npm, Yarn, Lerna, монорепозиторий, Sinon.JS, Jest, k6, Mastercard Nudetect
13 месяцев месяцев
Наблюдаемость распределённой банковской системы в публичном облаке
Banking-as-a-Service. Виртуальный банк как услуга Роль: DevOps / Site Reliability Engineer Состав команды: 1 ведущий инженер и менеджер специалистов Site Reliability Engineering, 6 инженеров по надёжности (Site Reliability Engineer) Что реализовывал: Анализировал потенциальные решения наблюдаемости в комплексе, задокументировал результаты и предоставил на голосование, предложив по своему мнению наиболее подходящий стек. Реализовал систему наблюдаемости 60+ микросервисов, включая метрики, логи и трассировку запросов. Подобрал, рассчитал, задокументировал и внёс на самостоятельный дашборд различные показатели SLO и SLI, рассчитал Error Budget для каждого показателя. Ввёл периодические синтетические тесты на проверку состояния сервиса и критических для пользователя сценариев. Предложил внедрение подхода Infrastructure-as-Code, договорился о выделении доступов, вычислительных ресурсов и времени в текущий план разработки. Спроектировал и заложил основы CI/CD и репозитория для корректного развёртывания системы наблюдаемости. Разработал самостоятельный экспортёр метрик по расчёту потребления ресурсов публичного облака AWS, изучил и задокументировал гибкие и жёсткие лимиты сервисов облака, которые используются в проекте.
Amazon Web Services, Serverless, Datadog, Splunk, Node.JS; Gitlab, YAML, Terraform; Node.JS
13 месяцев месяцев
Непрерывная сборка и развёртывание в публичном облаке
Banking-as-a-Service. Виртуальный банк как услуга Роль: DevOps / Site Reliability Engineer Состав команды: 1 архитектор, 1 ведущий CI/CD специалист, 3 CI/CD разработчика Что реализовывал: Участвовал в проектировке и разработке Gitlab CI/CD линии для команды 60+ человек по методологии Git Flow. Участвовал в развитии CI по мере продвижения проекта, предлагал, голосовал и реализовывал фичи для CI. Рефакторил конфигурацию CI по хорошим практикам DRY, SOLID, KISS, YAGNI. Общая команда была разбита на несколько автономных команд, это было отражено при сборке и тестировании проекта на различных ветках (feature, development, master). CI развёртывала самостоятельный стек в облаке, полностью развёртывая проект со своими доменами (напр. feature-134.baas.company.com) с установкой политик по самоочистке ресурсов облака для оптимизации расходов. Внедрял и настраивал: проверку качества кода, нагрузочное тестирование, анализ используемых зависимостей по лицензиям. Участвовал в определении безопасной процедуры непрерывного развёртывания в промышленном контуре (отсутствие доступов к промышленным сервисам в облаке < 1 минуты). Самостоятельно проводил процедуру развёртывания и формировал отчёты о доставленных обновлениях.
Amazon Web Services, Gitlab, bash, python, YAML; SonarQube, yarn, lerna, ClamAV, Slack
13 месяцев месяцев
Агрегатор логистических ставок
Веб-портал по заказу логистических перевозок. Остальное - NDA Роль: Fullstack engineer / DevOps Состав команды: 1 product owner, 1 Fullstack engineer / DevOps Что реализовывал: Весь ИТ-продукт: Фронтенд для поиска ставок между городами со специфичной логикой поиска ближайших терминалов. Перенёс на Vue.JS дизайн-систему TaigaUI (активно поддерживается и используется Т-Банком) и использовал её. Разрабатывал страницы по мере добавления дизайнов в Figma, обсуждал о сложностях и сроках реализации тех или иных фич. Внедрил веб-аналитику по выявленным пользовательским сценариям. Бэкенд служил легковесной API прокладкой для данных и дополнительных внутренних сервисов (парсер Excel) в контейнере. Настроил развёртывание в облаке Google Cloud Platform после оценки стоимости сервисов и подбора оптимального варианта для MVP. Настроил CI/CD в GitHub Actions с уведомлением об обновлениях в закрытый канал Телеграм. Внедрил сервисы веб-аналитики (Umami, Яндекс.Метрика). Мониторил поведение пользователей после запуска рекламной компании через Яндекс, собирал данные для правок и потенциальных фич. Изучил стандарты протоколов IATA для внедрения в потенциальные фичи проекта и задокументировал
Vue.JS, Quasar Framework, PWA, Taiga UI, Figma, OpenAPI Swagger; Python, Flask, SQLite, PostgreSQL; Google Cloud Platform, Docker, Cloudflare, CORS, Render, Umami Analytics, Yandex.Metrika; Github, Github Actions, Telegram; Excel;
12 месяцев месяцев
Шина данных для центрального хранилища и магазинов
Шина данных, интегрирующая систему 1С и несколько маркетплейсов. Синхронизация данных между системами в реальном времени с использованием общей БД Postgres и 110+ микросервисов Mule ESB. Роль: Инженер данных, DevOps Состав команды: 1 менеджер проекта и системный аналитик, 4 инженера данных и DevOps-инженера Что реализовывал: Собирал функциональные требования к микросервисам, проводил и документировал системную аналитику микросервисов с учётом глобальной SOA карты, давал оценку по времени и сложности каждого этапа разработки микросервиса. Поднимал мониторинг и оповещения и вносил логирование для каждого микросервиса. Создавал сценарии приёмки и проводил демо по сдаче каждого микросервиса. Консультировал и помогал разработчикам по вопросам SQL и организации данных. Развёртывал шину и запускал миграцию данных в промышленном контуре Kubernetes. Создал MVP мониторинга состояния микросервисов, представил команде, внедрил и развивал. Воспользовался решением и обнаружил утечку памяти в одном из контейнеров, подобрав быстрое, простое и эффективное решение скриптом. Команда неоднократно использовала решение для анализа состояния системы при перезапусках и при спорных ситуациях с заказчиками. Создал MVP мониторинга качества данных в шине, представил команде, внедрил и развивал. Команда неоднократно использовала на практике решение для обнаружения неконсистентных сообщений и их исправления, тем самым возобновляя потоки синхронизации данных.
1С, протокол Odata 3.x; Mule ESB, Dataweave, BPMN 2.0, DFD, Postman; SQL, PostgreSQL, pl/pgSQL; ELK stack, Grafana; Gitlab, Docker, Kubernetes, Helm, Ansible, ssh, bash; JVM, C++, Telegram
3 месяца месяцев
Интеграция данных на высоконагруженном онлайн-магазине
Шина данных по синхронизации пользовательских учётных записей и созданию новых через различные каналы, способная справиться с пиковой нагрузкой. Служит заменой решению с CRM и Magento, которое не выдерживало нагрузки и теряло сообщения. Роль: Инженер данных, DevOps Состав команды: 1 менеджер проекта и системный аналитик, 2 инженера данных и DevOps-инженера Что реализовывал: Собирал функциональные требования к микросервисам, проводил и документировал системную аналитику микросервисов с учётом глобальной SOA карты, давал оценку по времени и сложности каждого этапа разработки микросервиса. Поднимал мониторинг и оповещения и вносил логирование для каждого микросервиса. Создавал сценарии приёмки и проводил демо по сдаче каждого микросервиса. В итоге собрал шину данных, способную справиться с пиком 15.000 входящих запросов в секунду без потери сообщений. Собрал образ для БД с непрерывным бэкапом в хранилище S3. Проводил нагрузочное тестирование промышленной БД для достоверности, что шина не перегрузит БД в промышленном контуре. Развёртывал шину и запускал миграцию данных в промышленном контуре Kubernetes.
WSO2, XML, XSLT; Mule ESB, Dataweave, BPMN 2.0, DFD, Postman, Jmeter; SQL, PostgreSQL; ELK stack, Grafana; Gitlab, Docker, Kubernetes, Helm, Ansible, ssh, bash
2 месяца месяцев
Закрытый маркетплейс федеральной компании для её партнёров
Маркетплейс по поставкам материалов, сборе требуемой документации и отслеживанию поставок всеми участниками процесса. Система содержит ролевую модель, созданную вручную, для разрешённых действий, пользовательских сценариев и разграничения доступов к данным и действиям. Роль: Backend разработчик, DevOps Состав команды: 3 backend разработчика, 3 фронтенд разработчика, 2 инженера данных, 1 project manager/product owner Что реализовывал: Фичи для бэкенда, ролевую модель, валидации доступов в соответствии с бизнес-процессами по ТЗ. Внедрил авторизацию по сессии. Спроектировал и вынес на утверждение полноценных CI/CD со стадиями внедрения для различных этапов и шагов по мере нужд разработчиков. Поддерживал и разрабатывал CI/CD и целевой контур для разработчиков. Настраивал nginx, политики CORS. Обнаружил и проактивно решил в течение 3 часов проблему с блокировкой Docker Hub в России 30 мая 2024 года скачиванием и проверкой по безопасности подходящих версий образов из других официальных источников образов Docker и сохранением образов во внутренний реестр Gitlab. Образ Certbot пришлось переписать ввиду внешних зависимостей.
Python, Django, Django DRF, Pytest, PostgreSQL, Postman, CORS; Gitlab, Nginx, Certbot, Docker, Harbor, Portainer, ssh, bash; TypeScript, React, Ant Design, JSON, Datareon, Keycloak, OpenAPI Swagger
3 месяца месяцев