Pull to refresh

Technotext

Как мы внедряли QoS InfiniBand для приоритизации ML-обучений с точки зрения сети

Reading time13 min
Reach and readers4.7K

В статье расскажем, как мы командой Yandex Infrastructure внедрили QoS в сетях InfiniBand при ограниченной вендорской поддержке и скудной практической документации. Обсудим мотивацию: рост смешанных нагрузок во внутреннем облаке и необходимость предсказуемых SLO для различных обучений. Отдельно рассмотрим как могут быть связаны QoS и топология сети DragonFly+.

Читать далее

Эволюция сбора flow-статистики в Яндексе: архитектура, грабли и оптимизации

Level of difficultyMedium
Reading time10 min
Reach and readers9.3K

Привет, Хабр! На связи Саша Лопинцев, SRE в группе разработки сетевой инфраструктуры и мониторинга Yandex Infrastructure. Я очень люблю мониторинг — а когда дело касается видимости сетевого трафика, нам не обойтись без анализа flow‑данных. 

Сегодня расскажу, как и почему мы переехали с устаревшего flow‑коллектора на GoFlow2, реализовали запись в БД и через etcd решили проблемы с шаблонами. Новая система обрабатывает 85 тысяч пакетов статистики в секунду, обеспечивает отказоустойчивость и помогает создавать отчёты. Если вам интересно узнать чуть больше об архитектуре, экспериментах, ошибках и решениях, полезных для инфраструктурного мониторинга в продакшн‑среде, читайте далее.

Читать далее

Offline First в мобильных приложениях. Кэширование

Level of difficultyMedium
Reading time9 min
Reach and readers3.4K

Привет, Хабр! Это Ахмед Шериев, сооснователь стартапа VoxOps, а сегодня — еще и гостевой автор блога Friflex. Моя статья — про опыт разработки офлайн-приложений. 

Я делал офлайн-поддержку в приложениях на самых разных языках. Как вовремя и успешно, так и с факапами. Например, обещал за две недели внедрить офлайн, а потом появлялись скрытые кейсы, и разработка затягивалась до месяца, двух, трех… 

Здесь постараюсь поделиться, как не зарыться в тонну инфраструктурного кода и избежать некоторых других ошибок.    

Я внедрял поддержку offline как в роли разработчика, так и в роли руководителя и директора по разработке. Поэтому тема мне хорошо знакома с обеих сторон. Кто помнит, с ней я выступал на CrossConf.

Читать далее

Первый проект на HarmonyOS — мой плейлист для старта с нуля

Level of difficultyEasy
Reading time24 min
Reach and readers12K

Привет, Хабр! Это Юрий Волковский, техлид фронтенда в компании Friflex. Я работаю, в том числе, с мобильными приложениями на React Native. Разработка под HarmonyOS сразу заинтриговала меня тем, что ArkTS — это как бы TypeScript, но не совсем. И сам ArkUI сочетает в себе элементы и из React Native, и из Flutter, который мне тоже знаком. 

Я решил: создам на Harmony OS базовое мобильное приложение и посмотрю, насколько дружелюбна эта платформа. Если вы мобильный разработчик (особенно с опытом Android или Flutter) и тоже хотите разобраться, что это за платформа и как с ней работать — вы по адресу. Создадим базовый плейлист по шагам.

Читать далее

Нестандартные применения LLM и синтетических данных: от антивируса для завода до сжатия данных языковыми моделями

Reading time7 min
Reach and readers6.2K

Привет, Хабр! Меня зовут Вадим Кондаратцев, я руковожу ИИ-направлением в Friflex и небольшой ИИ-лабораторией в МГТУ им. Баумана. Последние 10 лет работаю на стыке ML, HPC и Edge Computing, преподаю машинное обучение и примерно раз в день запускаю что-нибудь на суперкомпьютере.

Это расширенная версия моего доклада на CrossConf 2025 про мой опыт применения синтетических данных в проектах, которые связаны с интеграцией систем машинного обучения в промышленности и науке. Если интересно посмотреть, какая бывает синтетика и что она позволяет покрыть, прошу под кат.

Читать далее

Трейдинг в TUI: пишем легковесный клиент на Go через Finam Trade API

Level of difficultyEasy
Reading time6 min
Reach and readers9.1K

Меня зовут Сергей, я разработчик в «Финаме». Торгую на бирже около четырех лет. Большую часть дня провожу в терминале - пишу код, деплою, работаю с инструментами. И в какой-то момент заметил нестыковку: все мое рабочее пространство уже в консоли, кроме одной вещи - торгового терминала.

Так появился Finam Terminal - TUI-клиент с открытым кодом для торговли через API брокера «Финам». Написан на Go в свободное время, работает прямо в консоли, весит ~24 МБ. В этой статье расскажу, зачем он нужен, как устроен и почему наличие хорошего API у брокера - это приглашение что-то построить.

Читать далее

Не LLM единым: генерируем юнит-тесты из реального исполнения на лету

Level of difficultyMedium
Reading time11 min
Reach and readers9.3K

Представьте себе: вы отлаживаете новый баг в сложном многослойном приложении (например, на Spring). Чтобы воспроизвести проблему, приходится взаимодействовать со всей системой end-to-end: отправлять запрос на эндпоинт или что-то кликать в UI. Юнит-теста, который бы изолировал нежелательное поведение до уровня злополучного сервиса или утилиты, нет. А хотелось бы, чтобы он был: во-первых, воспроизводить баг было бы проще (особенно если UI кликает QA, а не вы), а во-вторых, его потом можно было бы легко превратить в регрессионный и улучшить стабильность системы.

Тем временем все данные, нужные для воспроизведения бага в изоляции, есть. В окне отладчика видно, что приходит в метод, и в каком состоянии находится сервис перед тем, как все пойдёт не так. Мы в Explyt RnD решили, что нечего добру пропадать, и научились перехватывать это состояние, а потом генерировать юнит-тест, который в точности его воспроизводит.

Сегодня расскажу о пройденном исследовательском пути, о том, как попробовать нашу экспериментальную фичу в плагине для IntelliJ IDEA, и о том, что у неё под капотом (спойлер: не только LLM).

Читать далее

Как бы я рассказал про линейную регрессию (если б меня кто-то спросил)

Level of difficultyEasy
Reading time80 min
Reach and readers14K

Привет, Хабр! Если вам когда‑либо хотелось разобраться в том как работает линейная регрессия, или хочется освежить в памяти основные моменты без необходимости продираться через разрозненные источники, то прошу под кат. Это не статья "от начинающего для начинающих". Экстра лонгрид — писал больше года. Статья концептуальная, а концептов пять: 1) ключевой повествовательный компонент — визуализации (их около сотни), текст — вспомогательный; 2) анимации везде где только можно (их всего 34); 3) простота — достаточно знаний со школьного курса математики чтобы начать читать; 4) воспроизводимость — подавляющее большинство медиаматериалов сгенерированы при помощи Python а исходный код выложен в open‑source и, самый главный, 5) фокус на практике, — например, если упоминается векторная запись метода наименьших квадратов, значит она в нарративе решает возникшую боль читателя

Читать далее

Мегатренды в дизайне интерфейсов. Технологии и наука

Level of difficultyEasy
Reading time13 min
Reach and readers11K

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

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

В этой статье мы разберём мировые тренды технологий, и как они переплетаются с дизайном интерфейсов.

Читать далее

Запуск приложений в Linux c использованием политик планирования «реального» времени

Level of difficultyEasy
Reading time7 min
Reach and readers12K

В октябре 2025 года в Нижнем Новгороде на форуме «Промышленная автоматизация: переход на открытую АСУ ТП» с коллегами зашел интересный разговор о Linux с патчем реального времени. В разговоре затронули разные интересные моменты: работа через гипервизоры, выделения ядер и отличия от QNX.

Договорились о том, что я напишу небольшой гайд, рассказывающий что и как можно сделать, чтобы оптимизировать время отклика. Отдельно отмечу, что задачу доказать, что Linux с патчем PREEMPT_RT является операционной системой жёсткого реального времени перед собой не ставлю. На мой взгляд, она такой не является, так сказать by designe, в отличие от тех же QNX , VxWorks и ThreadX.

Читать далее

Регресс без регресса: стратегия автотестов

Level of difficultyMedium
Reading time6 min
Reach and readers6.7K

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

Меня зовут Гайнутдинов Роман, я старший инженер по автоматизированному тестированию в компании «БКС Мир инвестиций». За плечами построение автоматизации с нуля, поддержка готовых решений и оптимизация уже раздутых регрессионных наборов.

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

Читать далее

Превращение в «жука»: эволюция IT-оборудования в дата-центрах Яндекса

Reading time8 min
Reach and readers24K

Меня зовут Владимир Аксёнов, я работаю в Yandex Infrastructure и руковожу IT‑поддержкой в том самом дата‑центре Яндекса, который стал первой площадкой в собственности компании. Это определило его судьбу первопроходца: именно здесь мы тестируем множество технологий, которые затем распространяются на другие дата‑центры.

За 13 лет на этой площадке мы наблюдали радикальные изменения форм‑фактора сетевого и серверного оборудования, что повлекло за собой серьёзные метаморфозы во всём дата‑центре. Мы прошли путь от стандартной 19-дюймовой стойки до четвёртого поколения стоек собственного дизайна, а от холодных коридоров с доохлаждением — пришли к энергоэффективному фрикулингу. 

В этой статье покажу, как за это время поменялось IT‑оборудование, как это повлияло на облик дата‑центров, и что интересного ждём в наших дата‑центрах в 2026 году.

Читать далее

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

Reading time9 min
Reach and readers9.5K

Привет, Хабр!

Я Никита Дубина, руководитель команды автоматизации Департамента больших данных РСХБ. В этой статье расскажу о том, что такое теневые ИТ, почему они возникают в крупных организациях, особенно в банках, какие риски несут и как при правильном подходе могут стать источником новых идей. Делюсь опытом борьбы с ними. 

Читать далее

Поднимаем сеть на коаксиальном кабеле в 2026 году

Level of difficultyMedium
Reading time7 min
Reach and readers37K

Приветствую всех!

Многие сейчас уже и не вспомнят, что такое «тонкий Ethernet», зачем компьютеру кабель, внешне похожий на телевизионный, и какими в своё время были компьютерные сети. И, признаться, те, кто не застал это всё, практически ничего не потеряли.

И вот как-то раз я задумался: а как насчёт попробовать связать пару компьютеров по такой сети уже в наши дни? Что из этого получится, и стоит ли вообще пробовать всё это? Сейчас и узнаем…

Press F1 to continue

Битва за миллисекунды: Как мы ускорили банковское приложение РСХБ в 60+ раз

Reading time9 min
Reach and readers13K

Привет, Хабр! Меня зовут Алексей Кутневич, я работаю ведущим Архитектором в ЦК архитектуры БЦТ РСХБ-Экосистема. В этой статье хочу поделиться реальными кейсами оптимизации микросервисной архитектуры из проекта «Свои финансы» — нашего нового банковского приложения. Покажу, как эти решения помогли существенно улучшить производительность системы. 

Читать далее

«Волки» и «кабаны»: на чьей стороне правда?

Reading time5 min
Reach and readers11K

Привет, Хабр!

Меня зовут Света Гречишкина, я работаю в РСХБ-Интех в Блоке Цифровой Трансформации, где занимаюсь подбором персонала. Мой опыт в этой сфере составляет восемь лет. Хотя кто-то может сказать, что это не так много, для мира ИТ это целая эпоха. За эти годы я наладила много полезных контактов и постоянно повышала квалификацию на курсах. Однако в нашей команде я и мои коллеги все чаще сталкиваемся с проблемой, которая касается найма начинающих специалистов, то есть джунов. Таким кандидатам порой просто невозможно войти в сферу IT, и это вызывает большое беспокойство.

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

Что же делать тем, кто только хочет начать свой путь в IT?

Есть ли у них надежда на легкий и быстрый вход с заманчивым оффером, или это всего лишь миф? Чтобы ответить на этот вопрос, погрузимся в реалии HR. На IT-рынке наблюдается деление специалистов на два основных лагеря — «кабанов» и «волков». К «кабанам» относятся те, кто начинает свой путь в IT «снизу», проходя стажировки, участвуя в различных пет-проектах и проводя бессонные ночи за решением задач на Leetcode. Их вера в возможность вертикального роста подкрепляется годами усердной работы и постоянной прокачки своих навыков. Они стараются избегать фокусов и не обманывают в своих резюме, поскольку верят, что честный путь всегда будет вознагражден.

Читать далее

Собираем Linux, который весит меньше, чем мем с котиком, ну или почти…

Level of difficultyMedium
Reading time13 min
Reach and readers38K

Мне всегда было интересно, насколько минимальным может быть Linux.

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

В отличие от предыдущей статьи, в этой я рассматриваю Linux с более свежим ядром с минимальной конфигурацией на основе tinyconfig, оформленный в виде одного файла и загружаемый при помощи UEFI.

Зачем вообще нужно создавать такие сборки Linux?

Установил готовый дистрибутив или загрузился в Live — работай и изучай. Но такой подход не даёт настоящей уверенности в знаниях. Представьте: водитель и шофёр. Водитель просто ездит. Шофёр знает устройство автомобиля и может его починить.

Современные автомобили сложны — починить всё самому уже нельзя. Но вы можете открыть капот, измерить уровень масла, заменить колесо в случае прокола, установить винт для буксировочного троса и т. д. Так же и с Linux: коммерческий дистрибутив вы вряд ли соберёте, но на одну ступеньку вверх по лестнице профессионализма подниметесь.

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

Как минимальный Linux служит для понимания более сложных вещей, так и моя статья даёт базу для дальнейшего более глубокого изучения.

В комментариях к моей предыдущей статье я видел замечания, что можно использовать buildroot или книгу Linux From Scratch. Скажу только, что я преследую другие цели: собрать минимальный Linux без использования специализированных программ и сделать это как можно проще.

Всем, кого заинтересовало, добро пожаловать под кат.

Читать далее

Метеостанция на Аtmega328 и NRF24L01 с выносным датчиком

Level of difficultyMedium
Reading time11 min
Reach and readers14K

Казалось бы, простой проект метеостанции. Но при чем тут линейная интерполяция, хорды Архимеда, прочностный расчет, а также ошибки с разделением земли? Читайте в статье!

Читать далее

История Уолли Уика — персонажа, который подарил жизнь новому жанру… и Диззи

Reading time42 min
Reach and readers14K

Из всего многообразия жанров, которые были представлены на домашних компьютерах 80-х и 90-х, один — незаслуженно забыт, хотя в своё время был дико популярным. Англоговорящие товарищи называют его Platform Adventure или Arcade Adventure, а в русском языке устоявшегося названия нет. Но можно условиться на «аркадном квесте» — почему бы и нет?

Владельцам ZX Spectrum этот жанр, скорее всего, известен по серии игр про Диззи. Помимо привычной беготни с прыжками в стиле Super Mario Bros., в таких играх нужно решать разные задачки‑головоломки и общаться с персонажами.

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

Аркадные квесты всегда вызывают живой интерес посетителей Яндекс Музея, потому что геймплей кардинально отличается от того, к чему они привыкли. Сейчас этот жанр не очень востребован: платформеры и прочие аркады выходят отдельно, а квесты и прочие приключенческие игры — тоже сами по себе. Разумеется, есть исключения, но их мало, и это, как правило, инди‑игры, не претендующие на широкую известность и большие продажи.

Но в 80-е аркадные квесты гремели если не на весь мир, то как минимум на всю Европу. Игры этого жанра попадали в топы продаж, а то и вовсе занимали в них первые места. Наибольшая популярность, само собой, досталась вышеупомянутому Диззи, поэтому аркадные квесты частенько называют «диззиподобными» играми. Вот только это определение не очень справедливое, ведь жанр зародился за три года до появления Dizzy — The Ultimate Cartoon Adventure.

Нет, первым было отнюдь не улыбающееся яйцо в боксёрских перчатках. Первым был простой британский трудяга по имени Уолли Уик. А игрой, породившей целый жанр, — Pyjamarama

Читать далее

Как варить внутренние инструменты быстро, красиво и эффективно

Reading time13 min
Reach and readers10K

Всем привет! Меня зовут Дарья Андреева, я руковожу командой бэкенда Биллинга и B2B‑платформы Яндекс 360. Наша команда, чтобы сократить TTM и освободить разработчиков от рутины, создаёт удобные внутренние инструменты. Сегодня я хочу поделиться своим опытом и порассуждать о внутренних инструментах.

Начну с контекста. Яндекс 360 — это виртуальный офис для работы и личных дел, куда входят Диск, Почта, Календарь, Телемост, Мессенджер, Документы и другие сервисы. В течение четырёх лет команда растёт больше чем в два раза каждый год. Растёт нагрузка на сервисы, и вместе с ней бэклог. Поэтому автоматизация и ускорение процессов для нас вопрос выживания: без этого мы не смогли бы двигаться с той скоростью, которая нам нужна.

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

Читать далее