Pull to refresh
73
22

Компания YADRO

Send message

Ролевая модель и интеграция c Jira: что изменилось в системе для управления тестами, которая доступна всем

Reading time6 min
Views455

В конце прошлого года мы представили TestY, тест-менеджмент систему с открытым исходным кодом, которую разработала команда YADRO на замену TestRail.

Сегодня на связи я, Александр Зырянов, QA-менеджер в департаменте контроля качества YADRO и проектный менеджер TMS TestY. После первого текста о нашей системе вы обращались к нам с вопросами и пожеланиями. Некоторые предложения мы уже планировали в новый релиз, но были и те, что мы взяли в работу именно благодаря вашей обратной связи. В этой статье расскажу о фичах, вышедших в релизе 1.3, и отвечу на вопросы о TestY в комментариях.

Читать далее
Total votes 6: ↑6 and ↓0+12
Comments0

Ужасно подробные ошибки в API: пишем на Go инструмент для работы с ними

Level of difficultyMedium
Reading time14 min
Views1.5K

Привет, Хабр! Меня зовут Александр Лырчиков, я разрабатываю систему хранения данных TATLIN.UNIFIED в YADRO. СХД — сложная система, и, если при работе произошла ошибка, она должна своевременно и понятно сообщать пользователю об этом. В большинстве веб-сервисов для этого используют баннер с надписью «Что-то пошло не так», но такой способ уведомления нам не подходит.

Мы столкнулись с проблемой, когда переданных сообщений и HTTP-кодов уже не хватает. Поэтому разработали собственный инструмент для обработки ошибок Terror (TATLIN + error). В результате работа с кодом стала проще, мы получили красивый API, а пользователи — понятное описание ошибки и локализацию текста на разные языки. В этой статье расскажу, как мы создавали Terror, чтобы вы смогли повторить решение.

Читать статью
Total votes 7: ↑7 and ↓0+9
Comments0

В далекой-далекой Galaxy: как организовать общее пространство для Ansible-контента

Reading time17 min
Views2.6K

Привет! Меня зовут Павел, я DevOps-инженер в YADRO. Где бы я ни работал, я был девопсом и использовал Ansible — где-то активнее, где-то меньше. В YADRO с этим инструментом работают почти все департаменты — от enterprise, где разрабатывают серверы, СХД и другое оборудование, до телекома. 

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

В статье я расскажу, с какими проблемами мы столкнулись (признаюсь, их было немало), какие варианты решения рассматривали и к чему в итоге пришли.

Полетели
Total votes 10: ↑9 and ↓1+10
Comments0

От и Go: доклады для гоферов про инструменты для фаззинга, kuber-кластер на Go и не только

Reading time3 min
Views2.1K

Бывает, перед инженерами встает выбор: использовать существующее open source-решение задачи или написать свое. И часто, изучив все возможные опции, разработчики предпочитают второй вариант.

Большинство докладов в нашей подборке — инструкции по созданию кастомных решений, которые инженеры и разработчики из YADRO, Avito Tech, Ozon Fintech и других технологических компаний уже опробовали в собственных продуктах. Если вашей команде не хватает инструмента для фаззинга или обработки ошибок на Go — можете сделать их по примерам, которые представили инженеры в выступлениях и презентациях.

Зайти в Go-портал
Total votes 7: ↑6 and ↓1+7
Comments0

Где увидеть косимуляцию в «железе» и RFSoC FPGA своими глазами?

Reading time3 min
Views2.8K

Уже в эту субботу, 25 мая, в Санкт-Петербурге состоится ежегодная конференция FPGA-Systems 2024.1. Еще есть возможность присоединиться офлайн: не только послушать доклады про организацию верификации, ошибки FPGA-специалистов и пообщаться с коллегами, но и посмотреть на любопытные стенды, подготовленные инженерами. Один из них — «черный ящик» на КДПВ, в нем — симбиоз трех симуляторов для моделирования систем на кристалле. Что внутри — читайте под катом. 

А еще — раскрываем тайну, кто будет приглашенным спикером московской FPGA-Systems, которая пройдет 1 июня, вслед за первой конференцией.

Читать далее
Total votes 13: ↑11 and ↓2+16
Comments0

Cервисный дизайн: как мы проектируем функционал обслуживания продуктов

Reading time13 min
Views1.1K

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

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

Читать далее
Total votes 8: ↑7 and ↓1+12
Comments1

Берем ответственность за вопросы: как задавать их правильно

Reading time9 min
Views3.9K

Привет, Хабр! Я Оксана Нечитайлова, руководитель отдела сервисного дизайна продуктов в YADRO. Руковожу различными командами уже более 17 лет и за это время поняла: многие недооценивают навык формулирования правильных вопросов. Большинство специалистов уверены, что это некое «врожденное» умение. Но в реальности рабочих задач не каждый может так формулировать вопросы, чтобы получать на них полезные ответы.

Умение правильно задавать вопросы — это навык, который можно развить. И нужен он не только менеджерам и тимлидам, а всем, потому что мы задаем много вопросов по работе каждый день.

В статье расскажу:

какие виды вопросов бывают и какие ошибки в них допускают чаще всего,

какие практики повысят навык формулирования вопросов,

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

Читать далее
Total votes 18: ↑17 and ↓1+22
Comments1

Настраиваем серверные платформы с помощью PowerShell-модуля: от проверки конфигурации до монтирования образа

Level of difficultyEasy
Reading time31 min
Views4K

Привет! Меня зовут Константин, я ведущий инженер по разработке ПО в компании YADRO. Разрабатываю инструменты сопровождения оборудования, которое мы производим, в том числе серверов линейки VEGMAN. Один из таких инструментов — специальный модуль для PowerShell, который позволяет управлять серверными платформами посредством BMC, или Baseboard Management Controller.

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

Читать далее
Total votes 9: ↑9 and ↓0+12
Comments19

Инженерный FPGA-драйв: обсуждаем инструменты для работы с ПЛИС и запускаем Quake 2 на российском RISC-V

Reading time4 min
Views2.6K

Cобираем FPGA-разработчиков и сочувствующих им на встречу сообщества FPGA-Systems в Москве. Уехали из столицы? Подключайтесь онлайн. 

1 июня в 11:00 семь инженеров расскажут, как применять FPGA-плату в промышленной автоматизации, работать с инструментом ИРИС (самое время узнать, что это), реализовать контроллер SATA на ПЛИС и многое другое. А если вы любитель запускать Doom на чем ни попадя, вас заинтересует кейс инженера-программиста из YADRO, который запустил Quake на отечественном RISC-V-модуле. 

Помимо этого, будет секретный спикер, которого мы объявим ближе к событию. Знайте, что мы уже настраиваем межконтинентальный телемост. Регистрируйтесь, чтобы не пропустить. 

Узнать больше
Total votes 17: ↑16 and ↓1+18
Comments0

Этому городу нужна конференция по FPGA: шесть актуальных докладов про разработку микроэлектроники в Санкт-Петербурге

Reading time3 min
Views1.8K

Приглашаем верификаторов, RTL-инженеров и FPGA-разработчиков на конференцию FPGA-Systems 2024.1 в Санкт-Петербурге и онлайн. Обсудим аспекты безопасности в рамках систем на кристалле, тестирование верификационных компонентов, фреймворк PyUVM и его использование для верификации цифровых дизайнов ASIC и FPGA, разработку трансиверов и многое другое. 

Регистрация уже открыта — заполняйте форму по ссылке и присоединяйтесь к конференции. Под катом — полная программа встречи.

Читать далее
Total votes 8: ↑8 and ↓0+10
Comments0

Lane margining: как оценить качество PCIe-соединения без дополнительной аппаратуры

Level of difficultyMedium
Reading time17 min
Views4.9K

При запуске новых плат и устройств с PCIe-соединениями недостаточно просто вставить карту в слот. Нужно так настроить эквалайзеры, редрайверы, пресеты и ретаймеры, чтобы на каждой полосе «поднялся линк», то есть установилось соединение. Это значит, что приемопередатчики на обоих концах распознали друг друга, договорились о кодировке и скорости передачи.

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

Читать далее
Total votes 50: ↑50 and ↓0+60
Comments22

5 способов писать эффективный код на Go: от названий переменных до архитектуры

Level of difficultyEasy
Reading time8 min
Views11K

Если вы задумывались, какие практики использовать, чтобы писать код на Go быстро и качественно, этот материал для вас. Руководитель группы разработки подсистем Геннадий Ковалев и эксперт по разработке ПО Даниил Подольский обсуждают пять способов повысить эффективность разработки в команде Go-программистов: они расскажут, как называть переменные, составлять документацию и продумывать архитектуру так, чтобы специалистам в команде и смежных отделах было легко работать с написанным кодом. 

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

Читать далее
Total votes 10: ↑8 and ↓2+8
Comments8

Будьте в курсе развития RISC-V: обсуждаем обновления в разработке и изучаем бенчмарки серверов на открытой архитектуре

Reading time2 min
Views2.2K

Если вы интересуетесь развитием открытой архитектуры или занимаетесь разработкой систем под нее, не пропустите бесплатный митап российского Альянса RISC-V. Он объединяет независимых разработчиков вычислительной техники и программного обеспечения на основе свободной архитектуры. 

15 апреля в 19:00 представители альянса соберутся, чтобы обсудить последние разработки и опыт работы с RISC-V-системами. Регистрируйтесь на митап, чтобы подключиться онлайн и быть в курсе развития экосистемы RISC-V в России. Узнаете о поддержке RISC-V в Linux и результатах анализа производительности доступных на рынке RISC-V-серверов. Подробнее о программе — под катом.

Читать далее
Total votes 15: ↑15 and ↓0+15
Comments2

Уравнение с тремя неизвестными: как отлавливать баги в системах хранения данных

Reading time15 min
Views2.4K

Привет! Меня зовут Никита Гуцалов, я инженер в компании YADRO и занимаюсь разработкой ПО для системы хранения данных TATLIN.UNIFIED. Вообще с системами хранения данных (СХД) я работаю уже много лет и люблю эту тему, поскольку она постоянно бросает новые вызовы, заставляя решать довольно сложные и нестандартные проблемы, что очень увлекательно само по себе, а удачные решения приносят огромное удовлетворение.


В статье я попытаюсь погрузить читателя в проблемы, с которыми нам, инженерам YADRO, приходится сталкиваться при отладке программного обеспечения СХД. Также покажу особенности работы с такими системами. Расскажу, какие инструменты, а иногда и решения, которые мы пишем сами, приходится для этого применять. А еще постараюсь сформулировать условия, которые необходимы для нахождения причин возникновения ошибок обработки данных в системе.

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

Читать далее
Total votes 17: ↑17 and ↓0+17
Comments2

Материалы для разработчиков систем на кристалле: функциональная верификация, итеративная сборка, свой ПЛИС-кластер

Level of difficultyEasy
Reading time3 min
Views1.4K

Привет, Хабр! Принесли материалы с недавнего митапа для FPGA/ASIC/RTL-инженеров — добавляйте в закладки, чтобы посмотреть в свободное время. В докладах вас ждут:

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

Обзор плюсов и минусов существующих систем для автоматизации тестирования на FPGA-стендах.

Способ оценки производительности коммерческого ПЛИС-кластера и собственного решения.

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments1

Ищем Арнольда Шварценеггера среди мужчин, женщин и детей с помощью нейросети на С++

Level of difficultyMedium
Reading time24 min
Views8.3K

Привет, Хабр! Меня зовут Кирилл Колодяжный, я ведущий инженер-программист в YADRO. Помимо основных рабочих задач, включающих исследование проблем производительности СХД, я увлекаюсь машинным обучением. Участвовал в коммерческих проектах, связанных с техническим зрением, 3D-сканерами и обработкой фотографий. В задачах часто использовал С++, хотя машинное обучение традиционно ассоциируется с Python. Этот язык программирования буквально захватил сферу, его используют повсюду — от обучающих курсов до серьезных ML-проектов.

Однако Python — не единственный язык, на котором можно решать задачи машинного обучения. Так, альтернативой может стать С++. Если последний вам ближе, вам будет интересен и полезен этот текст.

Под катом разберемся:

как организовать работу с данными и загрузку обучающего датасета, 

как описать структуру нейронной сети, 

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

как организовать конвейер обучения сети, 

как использовать предобученные глубокие сети для решения задач. 

Читать далее
Total votes 20: ↑19 and ↓1+20
Comments15

«Код-ревью — это когда твои комментарии в интернете действительно читают»: дискуссия с разработчиками на C++

Level of difficultyEasy
Reading time4 min
Views4.2K

Заходят как-то на Хабр С++ разработчики из крупных компаний, а у них спрашивают: что такое код-ревью и используют ли они спецификатор final. Эти и другие вопросы с подвохом мы задали инженерам из YADRO, VK, Kaspersky, Syntacore и PVS-Studio. В итоге обсудили инструменты для работы со сторонними зависимостями, интерфейсы «плюсовых» библиотек и отказ (или нет) от exceptions.  

Продолжим дискуссию на митапе по С++, который пройдет онлайн 20 марта. Регистрируйтесь, подключайтесь к трансляции и пишите вопросы и комментарии в чат — ведущие озвучат некоторые из них.

Читать далее
Total votes 13: ↑12 and ↓1+15
Comments5

Укрощение примитивов синхронизации: сравниваем решения задачи с построением пула потоков на С и Go

Reading time21 min
Views4.1K

Эта статья основана на истории об одном личном челлендже. Задача звучала так: помочь с реализацией взаимодействия компонентов в программном комплексе заказчика. Иными словами, понадобилось IPC для дальнейшего развития продукта. Вызов заключался в том, что в обязательных требованиях стояло использование чистого С. Другие языки, включая С++ и Go, не рассматривались. 

В итоге я получил интересный опыт в рамках системного и параллельного программирования. Меня зовут Алексей Буреев, я работаю старшим инженером по разработке ПО в YADRO, сейчас мой основной рабочий язык программирования — Golang. В этой статье я проведу небольшой эксперимент: покажу, как можно решить одну задачу с помощью разных языков программирования. Языку С я противопоставлю Go, в основе которого есть исторические наработки проектирования языка С. Для этого немного заглянем «под капот» стандартных типов данных, которые уже были заботливо созданы для нас разработчиками языка.

Всех заинтересованных прошу под кат.

Читать далее
Total votes 16: ↑14 and ↓2+17
Comments16

Go на митап: обсудим sync.Pool, свой mini-k8s, паттерны и сообщения об ошибках

Level of difficultyEasy
Reading time2 min
Views1.5K

28 марта встречаемся на митапе по Go-разработке с инженерами из команд систем хранения данных и телекома YADRO, а также разработчиками из VK и AvitoTech. Эксперты расскажут, как: 

снизить нагрузку на сборщик мусора,

сделать свой mini‑k8s,

написать библиотеку для обработки ошибок,

использовать горутины грамотно и безопасно.

Митап пройдет в Нижнем Новгороде и онлайн. Регистрируйтесь на встречу и выбирайте удобный формат участия. А под катом читайте программу и знакомьтесь со спикерами.

Читать далее
Total votes 11: ↑10 and ↓1+14
Comments0

Железные люди Хабра: лига лучших железячных статей

Level of difficultyEasy
Reading time7 min
Views10K

Внимание! Конкурс «Технотекст» открывает железную номинацию. 

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

Читать далее
Total votes 42: ↑39 and ↓3+62
Comments14

Information

Rating
248-th
Location
Россия
Works in
Registered
Activity