Главная/ Проекты/ «Школа 21»

Развиваем образовательный проект вместе со Сбером

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

27 мая 2025

«Школа 21» — бесплатная школа цифровых технологий от Сбера, которая помогает людям без технического бэкграунда стать полноценными IT-специалистами. Обучение строится на методологии «равный равному», когда участники обмениваются опытом и знаниями друг с другом. В процессе они осваивают реальные кейсы и прокачивают софт-скиллы.

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

Команда Evrone подключилась к проекту, чтобы усилить внутренние продуктовые команды клиента. Все специалисты работали на аутстафе, но глубоко погружались в процессы и оказывали полноценную экспертную поддержку.

Фронтенд

Сервис «Отчеты» — это фильтры, которые позволяют формировать списки участников по заданным параметрам и формировать из них PDF-файлы. Например, можно задать кампус, поток и направление обучения. У него сильный бэк, который берет данные из базы «Аппликанта» и генерирует фильтры и таблицы, устанавливает порядок строк и порядок применения фильтров. Силами наших фронтенд-специалистов генерацию перенесли на фронт, но осталась возможность управлять ею с бэкенда. 

Еще мы поучаствовали в создании ботов для внутреннего чата школы. Например, с его помощью можно отправлять отчеты об ошибке. Можно вызвать слеш-команду, заполнить небольшую форму с описанием проблемы и эта информация улетит в Jira. С его помощью автоматизированы и другие рутинные операции для участников и сотрудников школы. 

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

Еще несколько задач, которые наши фронтенд-специалисты решают на проекте:

  • Обновление React до 19-й версии. 
  • Создание единого пака компонентов и общего UI-кита для всех сервисов школы. 
  • Технические собеседования с соискателями в команду. 
  • Онбординг новичков.

Бэкенд 

  • Сервисы

Одним из основных проектов стала разработка системы «Отклик» — специализированной платформы для трудоустройства выпускников школы. Мы участвовали в создании сервиса, где участники могут формировать профессиональные резюме и напрямую отправлять их HR-специалистам Сбера. В ближайших планах подключить к сервису другие компании, которые также смогут нанимать выпускников школы на свои проекты. 

Непростой была интеграция с существующей системой «Аппликант», где хранятся данные всех участников школы. Из-за отсутствия стандартной шины данных нам пришлось разработать механизм REST-взаимодействия между сервисами. В процессе мы перебрали пять различных архитектурных решений, прежде чем нашли оптимальный вариант, обеспечивающий стабильность даже при пиковых нагрузках. 

Параллельно мы провели глубокий рефакторинг кодовой базы на Ruby: унифицировали API, внедрили понятную систему ошибок и увеличили покрытие тестами с 25% до 55%.

Это не только упростило жизнь фронтенд-разработчикам, но и позволило в дальнейшем безболезненно добавлять новые функции — например, модуль статистики, который сейчас находится в активной разработке. А еще приложили руку к масштабируемому сервису генерации QR-кодов для системы контроля доступа в 19 кампусов по всей стране.

  • Производительность 

Нас ждал неожиданный вызов: основной сервис школы потреблял астрономические 64 ГБ оперативной памяти всего за несколько дней работы, причем ресурсы не освобождались. Анализ показал, что проблема кроется в неэффективном управлении памятью Ruby-приложения. Наше решение — внедрение аллокатора jemalloc — дало мгновенный эффект: потребление памяти сократилось вдвое, стабилизировавшись на отметке 16-22 ГБ. 

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

DevOps

Инфраструктура всех сервисов проекта развернута в собственном облачном сервисе Сбера. Всего в команде инженеров пять человек, один из них — сотрудник Evrone. Вместе с командой он участвовал в настройке Terraform, Redis и RabbitMQ. Одно из больших направлений работы — переход на российский софт. Например, собственную BI-систему, разработанную в Сбере. 

Мониторинг построен на связке Zabbix (для виртуальных машин) и Prometheus (для Kubernetes). Для отслеживания бэкапов мы сделали Python-скрипт, который ежедневно проверяет не только факт создания резервных копий, но и их целостность, отлавливая случаи, когда файл существует, но имеет нулевой размер. На базе обеих систем настроили систему алертов. 

Для разработчиков выстроена удобная система staging-окружений. Теперь при появлении нового члена команды достаточно запустить две джобы с его инициалами — автоматически создается полная копия среды с уникальным hostname.

Решилась и проблема с дампами production-баз — оптимизированный скрипт сократил время создания тестовых копий с 40 до 10 минут, устранив тяжелые запросы, которые перегружали систему.

Еще команда DevOps значительно переработала систему логирования. Создана новая политика, которая устанавливает, какие логи и сколько нужно хранить. Дебаг-логи теперь хранятся две недели, а критичные данные — до года. Плюс, удобнее стал UI для мониторинга. Мы внедрили систему тегов и поиска по ним, поэтому теперь логи конкретного стейджа можно найти очень быстро, не разбирая мешанину сообщений. Полезной оказалась доработка формата вывода — регулярные выражения теперь извлекают чистый текст, отфильтровывая технические метаданные.

Результат

За время сотрудничества специалисты Evrone и команда школы достигли важных результатов:

  • Оптимизировали производительность: Снизили потребление памяти основного сервиса на 50% (с 64 ГБ до 16-22 ГБ), ускорили генерацию отчетов в 3 раза за счет перехода с Excel на CSV.
  • Улучшили надежность: Увеличили покрытие тестами с 25% до 55%, внедрили систему мониторинга на базе Zabbix и Prometheus с автоматическими алертами.
  • Обеспечили безопасность: Реализовали изолированное хранение данных для разных кампусов через логическую репликацию PostgreSQL, разработали скрипты для быстрой очистки данных.
  • Автоматизировали процессы: Настроили CI/CD, создали систему staging-окружений, которая разворачивает полную среду за несколько минут, внедрили чат-ботов для рутинных операций.
  • Подготовили к масштабированию: Обеспечили миграцию в Kubernetes, создали единый UI-кит для всех сервисов.

Совместная работа со «Школой 21» стала примером эффективного партнерства, где аутстафф-команда полностью интегрируется в процессы клиента. Наши специалисты не просто выполняли задачи, а предлагали системные решения, которые позволили образовательной платформе стать более стабильной, безопасной и удобной для пользователей. 

Сегодня команда Evrone продолжает работать над развитием проекта, внедряя новые функции и оптимизируя существующие сервисы. Мы гордимся тем, что наши решения помогают «Школе 21» оставаться одним из самых инновационных образовательных проектов в России.

Хотите усилить вашу команду? Мы всегда готовы подключиться к вашему проекту и помочь достигнуть новых целей. Напишите нам — обсудим задачи!

Будем на связи
Прикрепить файл
Максимальный размер файла: 8 МБ.
Допустимые типы файлов: jpg jpeg png txt rtf pdf doc docx ppt pptx.