RTL-, DFT- и firmware-разработчик по очереди проектируют чип для игровой приставки. Получается... инженерный разгон
Инженерные разгоны — это новый формат журнала «Истовый инженер». Здесь специалисты рассматривают одну спорную тему с разных ракурсов: предлагают решения, обсуждают их, дополняют друг друга и проверяют идеи на прочность.
На недавний разгон собрались верификатор, тополог, RTL-, DFT-, firmware-разработчик YADRO и по очереди попытались затащить проект чипа. Чтобы найти рабочее решение, им пришлось разобраться, как устроена работа друг друга и какие ограничения каждый этап накладывает на остальные. Что обсудили в итоге:
почему хорошее решение для одной команды может создать проблемы для другой;
что разработчику микроэлектроники нужно знать о работе соседних команд и насколько глубоко в нее погружаться;
зачем начинающему инженеру магистратура МИЭТ и YADRO, если он уже работает по специальности.
➡ Запись инженерного разгона смотрите на «Истовом инженере». Впереди — новые активности, о которых мы тоже расскажем в постах.
Какие проблемы у верификаторов и поможет ли с ними AI — расскажут в новом выпуске «Битовых масок»
Гостем 29 выпуска нашего подкаста об аппаратной разработке и системном программировании стал Богдан Колбов — ведущий инженер по модульной верификации YADRO, специалист с широким опытом на разных инженерных позициях в индустрии.
Начав разговор с верификации кеша в многоядерных системах, собеседники перешли к сложностям для верификаторов в разных компаниях. Вспомнили о воспроизводимости багов и других рабочих проблемах, балансе энтерпрайза и open source в индустрии. Оценили успехи AI в RTL-разработке, а также обсудили его сбалансированное использование в личных проектах.
Среди тем подкаста:
в чем основная головная боль при построении чекеров кеша,
как верификаторы в крупных компаниях оказываются меж трех огней,
в чем заключается «проклятие воспроизводимости»,
как стоит использовать AI для разработки в свободное время,
как актуальные AI-модели справляются с RTL-разработкой.
🔥 Смотрите и слушайте подкаст на любой удобной платформе — и присоединяйтесь к каналу «Битовых масок», чтобы не пропустить новые выпуски!
Что интересного в архитектуре и компиляторе «Эльбруса» — узнаем в новом выпуске «Битовых масок»
Вы наверняка слышали не одну новость о российских процессорах «Эльбрус», но вряд ли могли удовлетворить профессиональное любопытство в теме. Вам поможет подкаст «Битовые маски»! В новом выпуске гостем стал Виктор Шампаров — разработчик компилятора LCC для весьма специфической линейки процессоров «Эльбрус» на базе архитектуры VLIW (Very Long Instruction Word).
Виктор провел подробную экскурсию по особенностям «Эльбруса» и архитектуры VLIW с точки зрения системного программирования. Кроме того, Виктор как опытный преподаватель оценил, как сегодня осваивают компиляторы студенты технических вузов.
Среди тем подкаста:
почему сложно сделать хороший компилятор под VLIW;
в чем разница между советским и российским «Эльбрусом»;
что в компиляторе «Эльбруса» написано с нуля;
какие особенности есть у VLIW-компилятора;
почему в архитектуре «Эльбруса» сравнительно больше регистров;
зачем в «Эльбрусе» санитайзер оптимизации;
в каких вузах стоит учиться работе с компиляторами.
Смотрите и слушайте подкаст на любой удобной платформе — и присоединяйтесь к каналу «Битовых масок», чтобы не пропустить новые выпуски!
Как разработать Linux-драйвер реального устройства для платформы RISC-V
Если вы хотите лучше разобраться во внутреннем устройстве Linux и узнать, как его ядро взаимодействует с физическими устройствами, то приходите на бесплатный офлайн мастер-класс YADRO. Вместе пройдем полный цикл создания драйвера дисплея LCD1602 для VisionFive2: от теории до добавления новых функциональных элементов и запуске на одноплатнике.
Что будем делать:
загрузим информацию о дисплее в ядро через Device Tree Overlay;
выведем текст на дисплей через драйвер Linux для embedded-систем;
считаем содержимое дисплея из ядра Linux и выведем в консоль;
научимся управлять подсветкой и курсором через интерфейсы Linux Kernel Driver;
займемся обработкой IRQ по нажатию кнопки;
разберем типичные ошибки при разработке Linux-драйверов.
Мастер-класс проведет Никита Косырев, инженер-программист группы системного ПО в YADRO. Никита — энтузиаст embedded-систем и архитектуры RISC-V, несколько лет занимался разработкой драйверов периферийных устройств в ядре Linux.
Приглашаем инженеров, которые хотят лучше разобраться в низкоуровневой разработке для Linux и особенно тех, кто работает с user space-приложениями.
Мастер-класс пройдет офлайн 3 июля в московском офисе YADRO, количество мест ограничено. Участие бесплатное, но регистрация обязательна.
Нейросети, компиляторы и гонка AI-железа — новый выпуск «Битовых масок»
В новом выпуске «Битовых масок» говорим о нейросетях, больших языковых моделях и аппаратной разработке для ИИ. В гостях — Андрей Камаев, эксперт по разработке ПО искусственного интеллекта, который начинал карьеру еще во времена независимой OpenCV-компании Itseez, а позже работал в Intel. Вместе с Еленой Лепилкиной и Антоном Афанасьевым он обсудил, как индустрия пришла к современным LLM и что сегодня происходит на рынке AI-железа.
Андрей рассказал, как развивались современные нейросети и как сегодня устроен рынок AI-железа. Также обсудили, что происходит «внутри» LLM, чем разработка нейросетей отличается от классического программирования и какие навыки помогут начинающим разработчикам строить карьеру в эпоху ИИ.
Выпуск получился одновременно историческим и практическим. Вы узнаете:
как индустрия пришла к современным LLM и что происходит на рынке AI-железа;
почему NVIDIA лидирует, а AMD пока не смогла догнать конкурентов;
чем отличаются компиляторы для нейросетей и почему сложно создать специализированный AI-ускоритель;
как устроены LLM «изнутри» и почему нейросети можно назвать «вредным джинном»;
какие навыки помогут начинающим разработчикам строить карьеру и конкурировать с ИИ.
Новый сезон «Битовых масок»: как работает беспроводная связь — от теоремы Шеннона до DSP-процессоров
«Битовые маски» возвращаются с новым сезоном! В составе ведущих к Антону Афанасьеву присоединилась Алина Галичина — руководитель группы модульной верификации YADRO. Гостем первого выпуска второго сезона стал Антон Бобков, ведущий инженер по разработке аппаратного обеспечения YADRO.
Антон работает с цифровой обработкой сигналов практически с начала эпохи массового интернета. В выпуске разбираемся:
почему нельзя просто поставить базовую станцию в любом месте;
как регулируются разные частотные диапазоны и радиоспектр;
какие физические ограничения существуют у беспроводной передачи данных (включая теорему Шеннона);
почему стандартов связи так много и как они появляются;
как WiMAX пытался объединить разные типы трафика;
какую роль сегодня играют LTE, Wi-Fi, Bluetooth и технологии для интернета вещей.
В конце выпуска отвечаем на вопросы зрителей — о будущем сотовой связи, возможных технологических скачках и о том, как искусственный интеллект может помочь инженерам в разработке систем цифровой обработки сигналов.
Стать системным аналитиком в YADRO — дело трех дней
До 29 марта открыта программа быстрого найма для системных аналитиков. Таких специалистов ищут сразу две команды:
— Телеком. С нуля создают телекоммуникационные решения для беспроводных мобильных сетей и сопутствующих услуг. Разрабатывает первые российские базовые станции стандартов GSM/LTE.
— BIOS/BMC. Инженеры занимаются разработкой и сопровождением собственных программных реализаций ПО UEFI/BIOS и BMC, используемых в различных продуктах YADRO.
Формат быстрого найма подразумевает ускоренные прохождение технического и менеджерского интервью и возможность получить оффер в компанию за три дня.
Направления, где нужны аналитики:
OAM (Operations, administration and maintenance). Специалисты тут работают с системой, обеспечивающей эксплуатационную управляемость и устойчивость операторского уровня. Отвечают за сквозные сценарии эксплуатации — от конфигурирования и мониторинга до инцидентов, SLA и масштабирования.
GSM. Здесь разрабатывают GSM Controller (BSC) и компоненты базовой станции (BTS) стандарта GSM с поддержкой GPRS и основного функционала для операторов большой тройки.
LTE. Инженеры здесь создают базовую станцию LTE (4G), реализуя полный стек телекоммуникационных протоколов «с нуля».
BIOS/BMC. Как уже писали выше, здесь занимаются разработкой и поддержкой UEFI/BIOS для продуктов компании, кода BMC для мониторинга и управления серверами, а также прошивками для MCU- и FPGA-модулей серверов (материнские платы, экспандеры и так далее).
Подробнее об ожиданиях к кандидатам — на лендинге SPRINT OFFER. Успейте оставить заявку до 29 марта.
В верификации нельзя стать сеньором просто по стажу или количеству закрытых задач. Каждый следующий уровень — это новая ответственность: за блок, подсистему, качество покрытия, сроки и иногда за других людей.
Алексей Ковалов, руководитель отдела модульной верификации YADRO, в статье рассказал, как на практике происходит рост от джуна до сеньора. И начинается все с базовых вещей. Команда Алексея использует принцип «15–45»: 15 минут попробуй разобраться сам, но если за 45 не сдвинулся — иди к ментору. Самостоятельность важна, но умение вовремя эскалировать проблему — это уже признак зрелости.
Внутри статьи:
почему «вечный мидл» — это не миф, а распространенный сценарий,
как меняется тип задач при переходе между грейдами,
что важнее для сеньора: глубина экспертизы или широта инструментария,
как не утонуть в покрытии и научиться оценивать объем работы заранее.
Если откликается описанный подход к росту, сейчас хороший момент присоединиться к команде YADRO. Мы открыли Sprint Offer для RTL- и UVM-инженеров. Подать заявку можно до 22 февраля.
Инженеры занимаются fabless-разработкой микропроцессоров на базе RISC-V — полным циклом от собственного процессорного IP до системного ПО. Работают с IP, SoC, беспроводными системами и высоконагруженными архитектурами.
Открываем быстрый найм на позиции RTL-дизайнера и верификатора в команду Semiconductors. Подать заявку можно до 22 февраля.
Кого ищем:
UVM Verification Engineers (junior/middle/senior) — UVM-окружения, VIP, SVA, регрессии, анализ багов, работа с RTL-командами.
RTL Design Engineers (junior/middle/senior) — разработка сложных ASIC-модулей на Verilog/SystemVerilog.
Как проходит спринт:
Нужно оставить заявку до 22 февраля и пройти HR-скрининг.
Далее техническое и менеджерское интервью.
И вуаля — оффер у вас на руках.
Чем занимается команда: fabless-разработкой микропроцессоров на базе RISC-V с полным циклом создания SoC — от архитектуры и собственного процессорного IP до поставки чипов с системным ПО. Решения используются в серверных, телекоммуникационных и сетевых продуктах, системах хранения данных и клиентских устройствах.
Стек и ожидания:
Verilog/SystemVerilog,
RTL-симуляторы: VCS / Xcelium / Questa,
Linux,
Git,
скрипты для автоматизации: Python / Perl / Tcl / Shell,
Апгрейд для сетевых инженеров: присоединяйся к разработке «соточных» коммутаторов
Разработчики коммутаторов KORNFELD ищут коллег. Нужны сетевые инженеры, которые будут тестировать сетевое оборудование, поддерживающее широкий спектр сервисов и протоколов, включая MC-LAG, BGP, OSPF, VxLAN, VPN, VRRP, LACP и другие. «Классические» тестировщики тут не подойдут — у успешного кандидата должен быть опыт работы с оборудованием типа Cisco, Huawei, Juniper, знание сетевых протоколов, применяемых в дата-центрах и офисах, — не только в теории, но и на практике. Фокус на мидл-специалистах и выше.
Игра-воспоминание: исследуйте 90-е, 00-е и 10-е и найдите «ошибки времени»
Вспомните, как все начиналось. Когда Интернет был в прямом смысле громким, музыка играла с Winamp, а первый компьютер был окном в новый, загадочный мир. Самое время вспомнить, как это было, — и проверить, насколько вы внимательны!
Мы предлагаем поностальгировать и сыграть в небольшую игру. Вы заглянете в 90-е, 00-е и 10-е, рассмотрите знакомые до мелочей детали и почувствуете атмосферу тех лет. Но есть одна хитрость: в каждой эпохе спрятано пять предметов, которых тогда еще не существовало, и вам нужно их отыскать.
Нажимайте «Играть», выбирайте эпоху и отправляйтесь искать несостыковки времени. Кто знает, может, вы даже услышите тот самый звук модема, устанавливающего драгоценное соединение.
Ускоренный найм для инженеров C/C++: оффер за 3 дня
Телеком-команда YADRO создает решения для мобильных сетей нового поколения: базовые станции GSM и LTE, а также весь программный стек — от низкоуровневых протоколов до систем управления. Сейчас в команде открылись вакансии инженеров, отбор на которые можно пройти гораздо быстрее, чем обычно.
SPRINT OFFER — это формат ускоренного найма: все этапы отбора проходят всего за три дня. Чтобы попасть в программу, достаточно подать заявку до 19 октября.
Software Engineer (телеком-платформа)
Вам предстоит разрабатывать платформенное решение для телеком-систем. На его основе строятся современные узлы сотовых сетей LTE- и GSM-стандартов — например, базовые станции и системы управления. В это роли вы будете:
Развивать платформу, обеспечивающую middleware-сервисы, высокую доступность и управление узлами для приложений, входящих в состав базовой станции LTE/GSM.
Разрабатывать компоненты платформы в технологическом стеке C++/Linux.
Собирать и анализировать метрики для оценки производительности продукта.
Создавать и оптимизировать высокопроизводительные каналы коммуникации между компонентами, а также работать с подсистемами временной синхронизации, управления конфигурацией инфраструктуры и компонентов.
Поддерживать средства развертывания и обновления приложений.
Разрабатывать API для взаимодействия с аппаратным обеспечением и операционной системой при конфигурации и управлении инфраструктурой.
Обеспечивать качество продукта: исправлять дефекты, писать unit-тесты, проводить код-ревью, разрабатывать техническую документацию.
Создавать инструменты, упрощающие работу других разработчиков.
Участвовать в диагностике и анализе проблем работы системы в тестовых и полевых сценариях.
Создавайте высоконагруженные системы, которые обеспечивают стандарты связи разных поколений. Работа охватывает три уровня. L1 — низкоуровневое программирование, работа с радиоканалом и сигналами, близкая к железу. L2 — логика, работа с алгоритмами и математическими моделями. L3 — высокоуровневое программирование, бизнес-логика. В этой роли вы будете:
Разрабатывать решения совместно с командой — от этапа исследования и прототипирования до коммерческого внедрения пакетного ядра сети 5 поколения (5G).
Создавать программное обеспечение для базовых станций LTE, реализуя полный стек протоколов 3GPP.
Разрабатывать спецификации и дизайн программного обеспечения.
Интегрировать решения с другими компонентами системы — как программными, так и аппаратными.
Поддерживать и оптимизировать код, обеспечивая стабильность и производительность продукта.
Исследовать и устранять проблемы, влияющие на надежность, производительность и масштабируемость системы.
Успеть за пять дней: отклик — интервью — оффер за пять дней для инженеров по безопасности
Надежные продукты начинаются с безопасного кода. Команда безопасности следит за уязвимостями, укрепляет процессы и поддерживает CI/CD в форме. И мы в YADRO укрепляем команду — ищем специалистов на позиции Application Security Engineer и DevSecOps. Принимаем заявки до 28 сентября.
Это вакансия на позицию инженера по безопасности приложений, который поможет создавать устойчивые к атакам продукты и внедрять лучшие практики SSDLC на всех этапах разработки. В этой роли вы будете:
проводить триаж уязвимостей, найденных с помощью SAST, SCA, Secret Detection и других инструментов;
оценивать защищенность продуктов на основе моделей угроз и выполнять специализированные тесты (fuzzing, сканирование портов и др.);
исследовать новые векторы атак и участвовать в тестировании на проникновение;
разрабатывать PoC решений для функций безопасности;
участвовать в выборе и внедрении инструментов тестирования.
Подать заявку и узнать больше о вакансии можно по ссылке →
DevSecOps / Infrastructure Engineer
Присоединяйтесь к нам в роли инженера, который будет развивать практики DevSecOps, совершенствовать подходы к безопасности инфраструктуры разработки и CI/CD, а также помогать командам интегрировать проверки безопасности в процессы. В этой роли вы будете:
внедрять и развивать DevSecOps-практики;
выявлять и устранять угрозы в инфраструктуре продуктов и CI/CD-процессах,
проектировать и внедрять безопасную архитектуру CI/CD;
обеспечивать стабильную работу инструментов SAST/SCA/DAST и создавать Quality Gates;
автоматизировать процессы с помощью GitLab CI, Ansible, Helm;
ставить задачи командам по улучшению безопасности и контролировать их выполнение.
Новая глава в твоей QA-карьере может начаться через три, два, один…
Упрощенная схема стенда для тестирования базовой станции LTE
Как насчет того, чтобы сменить привычную тестовую среду на что-то новое? Например, на тестовый стенд с BBU, RRU, симулятором ядра сети и т. д. И сделать это еще до осенних холодов.
Инженеры YADRO из дивизиона Телеком ищут коллег, которые присоединятся к тестировщикам-автоматизаторам. Нужны QА-инженеры с опытом работы в автоматизации тестирования от 2 лет и уверенным знанием Python. Приветствуется опыт работы с Linux и понимание сетей, базирующихся на TCP/IP.
Войти в hardware-тестирование можно с любым бэкграундом. В команде HW QA в YADRO есть специалисты, которые ранее не работали с серверами, и те, кто с первого дня уверенно пользуется осциллографом. От новых сотрудников не ожидают готовых экспертных знаний — важны мотивация и желание разбираться. Остальному обучают внутри команды.
В первую неделю — оформление, знакомство с командой, лабораторией, стендами и процессами, закрепление ментора. За 14 дней — полное погружение в работу с BMC. В первый месяц поощряется командное взаимодействие.
На 2–4 неделе — изучение Linux, устройства продуктов, компонентов, прошивок и инструментов, работа по чек-листам: запуск тестов, анализ результатов. Ко второму месяцу — доступ к целевой платформе, документации и задачам среднего приоритета.
После адаптации определяется вектор роста и формируется индивидуальный план развития с обозначением компетенций и точек роста.
Пример использования матрицы компетенций для оценки сотрудников
Сейчас команда ищет HW QA-инженера в департамент разработки аппаратных средств. Задачи — тестирование инженерных образцов, валидация компонентов, настройка стендов, автоматизация, работа с BIOS, BMC и прошивками.
CSI-драйвер и Swordfish API: как заставить Kubernetes дружить с любым хранилищем
В современных enterprise-средах важно обеспечить стандартизированный доступ к системам хранения данных (СХД) от разных производителей, избегая жесткой привязки к конкретному вендору. Одним из решений этой задачи является использование CSI-драйвера, который взаимодействует с Swordfish API. Такая интеграция позволяет Kubernetes автоматически создавать, подключать и удалять тома, избавляя команды от множества ручных операций.
Процесс выглядит так: когда приложение в Kubernetes запрашивает постоянное хранилище, оркестратор формирует PersistentVolumeClaim (PVC) с нужными параметрами — размером, типом и характеристиками. Kubernetes определяет, что создание тома должно выполняться через CSI-драйвер, и передает запрос в эмулятор Swordfish API. Тот создает том, а в случае работы с файловыми системами (например, NFS) дополнительно настраивает подключение к серверу и возвращает CSI-драйверу сведения о готовом ресурсе.
Автоматизированное создание и управление томами в Kubernetes через CSI-драйвер и Swordfish API
Дальше Kubernetes связывает созданный том с заявкой PVC, после чего CSI-драйвер монтирует его на рабочий узел к нужному контейнеру или поду. Эмулятор Swordfish API при этом добавляет путь к каталогу в конфигурацию NFS (/etc/exports), что позволяет клиентам подключаться к сетевому хранилищу.
Когда хранилище больше не нужно:
DevOps удаляет PVC.
Kubernetes вызывает NodeUnpublishVolume для размонтирования тома с узла.
CSI-драйвер передает команду Swordfish API.
API удаляет том и освобождает ресурсы (в случае NFS — удаляет запись из /etc/exports и каталог).
Kubernetes удаляет объект PV, завершая процесс.
Главное преимущество этого подхода в том, что он автоматизирует полный цикл работы с томами — от создания до удаления — и при этом одинаково хорошо работает с разными типами СХД, обеспечивая гибкость и снижение операционных затрат.
Если интересно, как самостоятельно разработать CSI-драйвер с поддержкой Swordfish API и запустить его даже без реального оборудования, то об этом — в статье, где пошагово показано, как реализовать и протестировать решение.
В прошлой статье мы пришли к выводу, что QMP — это лучше, чем ничего. Но хочется большего — библиотеку или программу (желательно, уже готовую), которая умеет читать/писать и узнавать об изменении состояния через poll() / pselect() / select() / epoll() / read().
В таком случае для каждой модели GPIO нужен «клей», похожий на тот, что используется с chardev — мы включаем его прямо в модифицированный QEMU. Очевидное название такого «клея» — gpiodev. Вот его основные функции, которые сейчас почти полностью соответствуют GPIO UAPI в Linux:
сообщать количество линий, конфигурацию, название и потребителя каждой линии,
читать и задавать состояние линии,
отслеживать изменения состояния и конфигурации линии (вход/выход, запрос/освобождение).
«Клей» состоит из двух групп, первая — это индивидуальные для каждого модуля GPIO функции, которые gpiodev использует, чтобы запросить специфическую информацию:
LineInfoHandler() — информация о линии: имя, флаги и потребитель,
LineGetValueHandler() — состояние линии: условный 0 или 1,
LineSetValueHandler() — задать состояние линии: 0 или 1.
По аналогии с GPIO UAPI напрашиваются также функции LineGetMultiValueHandler() и LineSetMultiValueHandler() для запроса и выставления линий, но я решил ограничиться минимальным набором.
Можно ли организовать прозрачное взаимодействие с устройствами внутри QEMU — использовать те же библиотеки и инструменты, как и для реальных устройств? Читайте во второй части трилогии о долгом пути до GPIO в QEMU.
DeepSeek, Qwen, T-lite, T-pro: на чем мы запускаем LLM для своих ИИ-сервисов
До фреймворка vLLM мы использовали NVIDIA Triton в паре с TensorRT LLM бэкендом. Но перешли на vLLM, потому что с ним оказалось намного проще добавлять новые модели. Да и по стабильности vLLM показал себя лучше: нормально работал под нагрузками там, где связка Triton и TensorRT начинала сбоить и падать. К тому же инференс-сервер vLLM изначально предоставляет OpenAI-совместимые REST API, что упрощает его использование в других продуктах. А инференс-сервер Triton работает с более обобщенным KServe REST API, который сложнее интегрировать в другие продукты.
Не обошлось без проблем и с vLLM: на наших валидационных тестах модель давала неконсистентные ответы даже с нулевой температурой. Оказалось, что это известная особенность vLLM, даже упомянутая в документации. Мы нашли несколько советов, как минимизировать этот эффект: отключать prefix caching опцией --no-enable-prefix-caching и фиксировать random seed опцией --seed. Это помогало при одном запущенном инстансе модели, но при нескольких, даже работающих на одном железе и версии софта, проблема всплывала снова. Также неконсистентность ответов возникает при больших нагрузках — например, когда тесты запускаются одновременно с бенчмарком.
Еще один вызов — это накладные расходы от litellm-proxy и его масштабирование под нагрузками. LLM Gateway, в качестве которого мы используем LiteLLM, превращается в боттлнек кластера, так как все другие сервисы взаимодействуют с кластером именно через него. То есть именно на него идет суммарная нагрузка от всех возможных пользователей, которая потом распределяется между разными моделями и их инференс-серверами.
О том, как устроен инференс-кластер YADRO, подробно рассказал Владислав Виноградов. Бонус к разбору программной и аппаратной части кластера — челленджи и бенчмарки!
Есть множество видов тестирования, их классифицируют по различным признакам: уровню, целям, степени автоматизации, знаниям о системе, а также типу проверяемых сценариев (функциональные и нефункциональные). Расскажем подробнее о реализации разных видов тестов, которые проводятся в лабораторных условиях:
Модульные (unit) и компонентные (component) тесты реализуют сами разработчики. Они позволяют проверить корректность работы отдельных модулей и компонентов на ранней стадии.
Бокс-тестирование предполагает интеграцию нескольких компонентов базовой станции в рамках единой среды. В этом режиме используются симуляторы пользовательских устройств и ядра сети.
Системное тестирование охватывает проверку сквозных (end-to-end) сценариев на реальной аппаратной платформе. В отличие от бокс-тестов, здесь задействуются реальные пользовательские терминалы и максимально приближенная к коммерческой опорная сеть.
Нагрузочное тестирование и тестирование стабильности позволяют оценить работу системы под высокой нагрузкой в течение длительного времени. Это важно для подтверждения отказоустойчивости и стабильной производительности.
Выделим полевое тестирование. Оно позволяет в реальных радиоусловиях с реальными абонентскими терминалами протестировать описанные выше процедуры. Для такого тестирования используется специальный автомобиль, в котором установлено оборудование для проведения drive-тестов.
Внутри автомобиля для полевого тестирования
Во время drive-тестов используются разные модели пользовательских устройств. Это важно для нормализации результатов и получения объективной оценки поведения системы при работе с многообразием смартфонов.
В статье Ивана Политова и Антон Васина, инженеров из департамента разработки и проектирования опорной 5G-сети в YADRO, читайте подробнее, как в компании тестируют телеком-продукты.
Что ты сделал для хип-хопа IT-инфраструктуры в свои годы? Писал UEFI и BMC для высоконагруженного оборудования
В YADRO есть распределенная команда, которая разрабатывает и сопровождает собственные программные реализации UEFI (BIOS) и BMC. Для самого разного оборудования — от серверов до телеком- и клиентского оборудования.
Реализуют программную поддержку новых аппаратных продуктов компании, определяют протоколы и методы взаимодействия между программными и аппаратными компонентами продуктов YADRO.
Проводят верификацию микрокода и выполняют проверку прошивок микросхем всех продуктов компании. Выстраивают стратегию тестирования.
Исследуют новые программные и аппаратные технологии для применения в продуктах. Рефакторят код для повышения производительности.
Придумывают методы безопасного обновления прошивок BIOS и BMC, чтобы обеспечить минимальный или нулевой даунтайм.
Добавляют новые фичи и меняют существующие — от WebUI до политик управления аппаратными компонентами.
Команде нужно больше инженеров — разработчиков на С/C++, тестировщиков, автоматизаторов и техлидов. Знакомься с вакансиями на сайте и вовлекайся в трушные инженерные задачи на современном технологическом стеке.