Обновить
64K+
4,08
Оценка работодателя
313,36
Рейтинг
120 184
Подписчики
Сначала показывать

Как мы перераспределили альфу в A/B-тестах и сократили размер выборки

Уровень сложностиСложный
Время на прочтение7 мин
Охват и читатели4.8K

Всем привет! На связи Денис Зорин и Гриша Засько, мы работаем в ASL — лаборатории прикладной статистики Т-Банка. Помогаем командам проводить A/B-тесты на масштабе всей экосистемы: от дизайна эксперимента до анализа результатов. Еще мы развиваем A/B-платформу, инструменты для экспериментов и методы, которые помогают ускорять тесты без потери статистических гарантий.

Расскажем о задачке, с которой столкнулись в тестах с множественными сравнениями. Когда в эксперименте несколько целевых метрик, нужно контролировать вероятность ложноположительного результата. Часто для этого используют поправку Бонферрони: общий уровень значимости делят поровну между метриками, это простой и надежный метод.

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

Читать далее

Scikit-rank — open-source-библиотека для нейросетевого ранжирования

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели5.1K

Всем привет! На связи Александр Милоградский, отвечаю за RnD в направлении рекомендательных технологий Т-Банка. Расскажу о нашем новом вкладе в open source — библиотеке для нейросетевого ранжирования scikit-rank. 

Сейчас scikit-rank — обертка нескольких нейросетевых моделей в формат scikit-learn-моделей, которую мы сделали для удобства адаптации нейросетевых моделей в прикладных задачах и командах. А еще scikit-rank приняли на основную международную конференцию по рекомендательным системам ACM RecSys 2026 в США в Demo track. Но обо всем по порядку. Погнали!

Читать далее

Как BI‑команда краснодарского ИТ‑хаба мигрировала HR‑отчетность и собрала GuideBook

Уровень сложностиПростой
Время на прочтение27 мин
Охват и читатели6.5K

Результатом работы BI‑аналитика должен быть не просто отчет ради отчета — важно наладить партнерство с бизнесом: понимать его потребности и боли, а уже потом превращать это понимание в конкретный продукт.

BI‑аналитик — это бизнес‑партнер по данным и отчетности. Он прикреплен к определенному домену или продукту, понимает, как этот домен работает и какие бизнес‑процессы существуют внутри него. Хорошо разбирается в данных своего направления — знает, откуда они берутся и как устроены. Именно поэтому BI‑аналитик ведет свои продукты по полному циклу — от сбора требований до внедрения и поддержки, — а не просто визуализирует то, что попросили.

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

Важно не забывать про качество данных: перед тем как строить любой продукт, BI‑аналитик проверяет корректность данных, на которых он основан. Масштаб этой работы в компании впечатляет: BI‑аналитиков у нас несколько сотен, а на BI‑платформе размещено почти 12 тысяч отчетов, с метриками MAU — 31 тысяча, с DAU — 13 тысяч.

Читать далее

ИИ-агенты в инвестициях: собираем Telegram-ассистента и торгового робота на MCP Т-Инвестиций

Уровень сложностиПростой
Время на прочтение15 мин
Охват и читатели7.8K

Привет, Хабр! Я Алексей Кабанов, разработчик в команде публичного API Т-Инвестиций. Недавно мы запустили MCP-сервер, позволяющий AI-агентам взаимодействовать с Т-Инвестициями: искать подходящие бумаги, анализировать рынок и портфель клиента. Расскажу, как можно построить автоматизацию на основе ИИ-агентов с использованием нашего MCP-сервера.

Еще недавно, чтобы автоматизировать даже несложный торговый алгоритм, приходилось писать собственный скрипт: Python, API брокера, cron и обработка ошибок на все случаи жизни. Профессиональные торговые системы существовали и раньше, но для частного инвестора порог входа оставался высоким. Сейчас между LLM и брокерским API появился стандартный слой — MCP, Model Context Protocol: модель может сама получить состояние портфеля, посмотреть стакан, выставить или отменить заявку, а вам достаточно описать задачу человеческим языком.

У Т-Инвестиций есть публичный MCP-сервер, и эта статья о том, как его использовать. Клиентом может быть что угодно: AI-агент вроде Hermes Agent, платформа автоматизации вроде n8n, десктопный ассистент, IDE. Разберем, чем эти подходы различаются и как они работают с MCP, что умеет сервер, а затем соберем два работающих примера.

Читать далее

Почему ни одна Python-библиотека для конфигурации не закрывает все задачи

Уровень сложностиСредний
Время на прочтение21 мин
Охват и читатели6.9K

Привет, Хабр! На связи Николай Видов, тимлид команды чат-ботов в Т, пишу на Python с 2017 года. За это время я успел поработать с конфигами во всех видах: INI-файлы в legacy-проектах, переменные окружения в docker-контейнерах, YAML с шаблонами в Helm, pydantic-модели в свежих сервисах, Vault и Consul в инфраструктуре покрупнее. 

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

Пройдусь по четырем заметным инструментам: python-decouple, Dynaconf, Hydra, pydantic-settings. Покажу, попадают ли они в семь требований: много источников, мердж с контролем, типобезопасность, валидация значений, понятные ошибки, секреты на уровне схемы и отладка. В конце соберу сводный взгляд: кто что закрывает и где в инструментах явная дыра.

Читать далее

Автоматизация Data Quality: как мы изменили подход к нашим инструментам

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели6.6K

Всем привет! Я Аня Мавлютова, технический менеджер продуктов Data Governance в Платформе данных в Т-Банке. Работаю в компании больше девяти лет. Начинала свой путь с дата-инженера, последние три года занимаюсь продуктами, которые помогают нашим пользователям работать с данными многократно быстрее и удобнее. В моей зоне ответственности продукты каталога метаданных Data Detective, инструменты Data Quality и сервис управления разметкой чувствительных данных.

В эпоху AI ценность данных компании сильно возросла, на них направлено более пристальное внимание. Процессы operate и observability над данными получили большой фокус: если нет уверенности, что сегодня данные построились в качественном виде, то задачу точно нельзя отдавать агенту. Данных становится в разы больше, поэтому очень важно как можно раньше отлавливать проблемы и ошибки в данных, если они возникли, чтобы предотвратить их увеличение в зависимых процессах.

В статье расскажу, как мы прошли путь от 11 длительных ручных шагов до автоматизации через AI-агента. Почему отказались от low-code-подхода, как работает распознавание intent и почему выбрали агентскую архитектуру вместо цепочки промптов. Спойлер: решение оказалось смелее, чем мы планировали в начале.

Читать далее

Эволюция пайплайна метрик: как менялась архитектура с ростом нагрузки

Уровень сложностиСредний
Время на прочтение18 мин
Охват и читатели7K

Привет, Хабр! Я Руслан Боярский, SRE в Т-Банке, отвечаю за надежность платформы Sage и принимаю активное участие в ее развитии. Sage — это платформа наблюдаемости, где мы собираем телеметрию. И я регулярно убеждаюсь, что в ИТ мы не можем существовать без метрик.

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

А еще опишу проблемы, с которыми можно столкнуться, и расскажу, как мы их решали. Попутно будет пара историй про инциденты. Поехали.

Читать далее

Как разрабатывать фронтенд без готового бэкенда: инструменты перехвата трафика, мокирования и принцип их работы

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели8.3K

Всем привет, на связи Дима Котиков! Я все еще люблю разрабатывать под Android/KMP, разбираться с инструментами для упрощения работы и латте на фундучном молоке. За пять лет мобильной разработки я неоднократно сталкивался с ситуацией, когда бэкенд запаздывает, а дедлайн горит. 

Зимой 2026 мы получили задачу: новый финансовый инструмент, дедлайн через три месяца, готовность бэкенда — через полтора. Команда начала работу на моках и успела. В статье я расскажу, какие инструменты перехвата и мокирования трафика помогли нам выпустить фичу в срок без готового бэкенда, как настроить их за один вечер и почему понимание принципов работы TLS и MITM-атаки экономит часы отладки.

Читать далее

AI‑агент вместо ручного регресса: архитектура, метрики, инсайты

Уровень сложностиСредний
Время на прочтение22 мин
Охват и читатели11K

Привет, Хабр! На связи Владимир Бойко, ведущий iOS‑разработчик в Т‑Банке. В статье расскажу, как мы построили AI‑QA‑агента, который проходит тест‑кейсы так же, как это делает человек: запускает приложение на симуляторе, выполняет сценарий шаг за шагом, анализирует экраны с помощью VLM и автоматически сравнивает ожидаемый результат с фактическим.

Идея родилась из бытовой боли. В нашем мобильном приложении десятки тысяч тест‑кейсов, регресс проводится дважды в месяц, и каждый цикл съедает значительную часть ресурсов QA‑команд. Во время регресса QA фактически недоступны для остальных задач. А с учетом санкционных ограничений окна для релизов ограничены и цена пропущенного дефекта возрастает: следующий шанс исправить может появиться не скоро.

Примерно в то же время я заканчивал задачи с VLM для Умной камеры и плотно общался с командой VLM Core — ребятами, которые развивают инфраструктуру мультимодальных моделей внутри банка. Вопрос напрашивался сам собой: а что если агент на базе VLM сможет выполнять эти проверки вместо людей?

Читать далее

Как использовать фреймворк Perseus для решения задач

Уровень сложностиСредний
Время на прочтение37 мин
Охват и читатели7.5K

Привет! Я Аня Никифорова, ML-разработчик по направлению рекомендательных систем в Т-Банке. Этим летом на Turbo ML Conf 2026 мы представили фреймворк Perseus. Он подходит для работы с гетерогенными последовательностями событий пользователей, хорошо масштабируется под различные задачи и из коробки поддерживает кросс-доменные сценарии. 

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

Читать далее

Системный анализ в большом банке: IBAN, миграция АБС и тысячи интеграций

Уровень сложностиПростой
Время на прочтение14 мин
Охват и читатели8.7K

Привет, Хабр! Я Елена Журавлева, системный аналитик в Т-Банке в команде импортозамещения АБС. Внедрять новые платежные методы в условиях санкций и одновременно менять ядро АБС — вызов для любой команды. Расскажу, как профессия стала инфраструктурой и как эта инфраструктура помогает аналитику менять проекты, не теряя в перформансе.

Моя история — часть проекта «20 в 20» в честь 20-летия компании: 20 специалистов из 20 городов делятся своими историями в серии статей, чтобы показать ИТ-хабы в разных городах и рассказать о людях, которые в них выросли.

Читать далее

Java Digest #39: 91 CVE в Spring, Value Objects в Java и AI-native разработка

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели8.5K

У Spring за один день вышел 91 CVE — больше, чем за весь прошлый год, — и нашел их в основном AI-сканер. Oracle впервые за двадцать лет выпустила патч безопасности вне квартального цикла. А еще уже совсем скоро (15 сентября) выходит JDK 27. Обо всем этом и не только рассказываем в свежем выпуске 🙂

Читать далее

Как мы внедрили Knip в Angular-проект: от настройки до CI/CD

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели9.7K

Привет! Я Незар, фронтенд-разработчик в Т-Банке. Наш Angular-проект достаточно крупный, и со временем в нем накопился неиспользуемый код. Это замедляет разработку, усложняет рефакторинг и вводит в заблуждение новых членов команды. А ручная очистка такого «мертвого» кода требует огромных трудозатрат и быстро перестает быть эффективной.

Поэтому мы решили автоматизировать этот процесс с помощью Knip — статического анализатора для TypeScript. В статье я расскажу, как мы его настроили, интегрировали в pre‑commit и CI/CD и какие результаты получили.

Читать далее

Scala Digest. Выпуск 44

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели8.3K

Привет, Хабр! Мы — Настя, Эвелина и Михаил — бэкенд-разработчики Т-Банка, пишем код на Scala и горим желанием его популяризировать. Мы собираем и агрегируем новости из разных источников, включая Scala Times, блог Petr Zapletal, добавляем дополнительные материалы и собственные комментарии. Мотивацию черпаем из желания развиваться и делиться полученными знаниями.

Всех поздравляем с наступившим сентябрем. Поздравьте учителей, переверните календарь — и вперед, читать наш дайджест! 

Приветствуем любую обратную связь! (づ ◕‿◕ )づ

Читать сорок четвертый выпуск

React Fiber: как React научился прерывать рендер и расставлять приоритеты

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели7.5K

Банальный пример — когда печатаешь в input, а интерфейс начинает лагать на большом списке: классическая боль старого React. Я решил разобраться, как и почему React переписал свою архитектуру: отказался от рекурсивного обхода дерева, изобрел новую структуру данных и научился прерывать рендер ради нашего ввода.

В статье рассмотрю проблемы синхронной отрисовки и переход к новой архитектуре,  почему пришлось отказаться от методов жизненного цикла с приставкой *will, что такое Fiber, почему первый вариант приоритизации с ExpirationTime не сработал и как пришли к React Lanes.

Читать далее

Как мы победили OOMKill и сэкономили треть ресурсов: настройка JVM в Kubernetes

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели7.8K

Привет! Я Костя Никитин, руководитель направления в одном из подразделений Т-Банка. Занимаюсь проектированием высоконагруженных систем — мы импортозамещаем автоматизированную банковскую систему. Если упростить, это автоматизация бухгалтерского учета: все банковские операции приходят к нам, нужно их сложить и посчитать. В Java-мире я уже больше двенадцати лет, начинал когда-то с 1.6.

Расскажу о проблемах, с которыми мы столкнулись, когда переехали в Kubernetes, как мы их порешали и как в итоге оптимизировали ресурсы при работе в виртуализации. Если вы хоть раз ловили OOMKilled на ровном месте и не понимали за что, может быть, узнаете себя.

Спойлер: в финале мы сократили потребление памяти на 18%, CPU — на 31%, а приложения при этом стали работать быстрее. Погнали.

Читать далее

Как мы за год снизили зависимость от наставников и ускорили адаптацию аналитиков

Уровень сложностиПростой
Время на прочтение16 мин
Охват и читатели11K

Привет, Хабр! Я Владислав Тарасенко, системный аналитик в Т‑Банке. Расскажу о том, как проектировал онбординг для аналитиков Мобильного банка.

У нас был онбординг для новых аналитиков, и он не работал. Спустя месяц новички все еще не могли выполнить базовую задачу без помощи наставника. Мы решили подойти к онбордингу как к продукту: с метриками, жизненным циклом, MVP, UAT и поддержкой — и за 320 часов перепроектировали процесс с нуля.

Что изменилось: 

1. Сделали результат онбординга измеримым.
2. Сократили время адаптации: через неделю аналитик готов к работе. 
3. Улучшили автономность: 30% новичков теперь вообще не отвлекают наставников. 
4. Лояльность: оценка удовлетворенности выросла с 7,3 до 9,2 балла. 

Читать далее

Android CameraX: детекция лица в реалтайме для биометрии

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели8.5K

Привет, Хабр! Я Евгений Шувагин, последний год работаю над компонентом Face-Shot в Т-Банке.

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

Читать далее

Чему меня научило управление платформой, которая распределяет 90 000 встреч в день

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели7.4K

Привет, Хабр! Я Светлана Чернышова, руководитель управления в рязанском хабе Т-Банка. Моя статья — часть проекта к 20-летию Т-Банка «20 в 20», в котором мы рассказываем об ИТ-хабах в разных городах и о людях, которые живут в этих инженерных сообществах.
За последние шесть лет мне посчастливилось расти вместе с продуктами, которые мы строим: от тимлида небольшой команды из 20 человек до руководителя платформ, объединяющих более 120 инженеров. За это время платформы прошли путь от вспомогательных сервисов до ключевых элементов экосистемы банка. 

В статье рассказываю о том, что происходит с техническим лидером, когда его зона ответственности растет не по дням, а по часам. О том, как приходится переосмысливать не только процессы, но и саму роль — от решения задач до создания условий, в которых другие могут принимать правильные решения. Ну и немного про Рязань, конечно 😉

Читать далее

Конфигурация в Python: эволюция подходов

Уровень сложностиСредний
Время на прочтение18 мин
Охват и читатели10K

Привет, я Николай Видов, тимлид команды чат-ботов в Т-Банке, восемь лет пишу на Python. 

Казалось бы, конфигурация — это просто .env и settings.py. Но стоит приложению вырасти — и начинается: секреты утекают в логи, port внезапно приходит строкой abc, настройки дублируются между окружениями. Я прошел путь от хардкода до типизированных схем и понял: конфигурация — это не мусорный код на скорую руку, а часть инфраструктуры, которую нужно проектировать так же тщательно, как бизнес-логику.

В статье — эволюция подходов к конфигурации в Python: откуда мы пришли, куда идем и какие грабли встречаем на пути. Разберу, как в Python-проектах обычно подходят к управлению конфигурацией. Сравнения конкретных библиотек не будет — сосредоточусь на самих подходах и границах их применимости.

Читать далее
1
23 ...

Информация

Сайт
l.tbank.ru
Дата регистрации
Дата основания
Численность
свыше 10 000 человек
Местоположение
Россия