Optics11 — быстрорастущая высокотехнологичная компания из Амстердама, разрабатывающая передовые оптоволоконные системы зондирования для самых требовательных сред. Наши технологии обнаруживают ранние признаки сбоев в критически важных активах — от высоковольтной энергетической инфраструктуры до подводных и оборонных приложений — и предоставляют нашим клиентам точные данные в режиме реального времени, на основе которых они могут действовать.
В рамках нашего направления подводной безопасности мы разрабатываем технологии зондирования, которые помогают обнаруживать и отслеживать подводные угрозы. Наши решения включают OptiBarrier, предназначенный для немедленного обнаружения угроз за горизонтом, и OptiArray, наш маломощный оптический буксируемый антенный решетчатый гидролокатор для беспилотных подводных аппаратов и подводных лодок.
Должность
В качестве инженера по тестированию встраиваемого программного обеспечения (Senior Embedded Software Test Engineer) в Optics11 вы отвечаете за возможности системного тестирования встраиваемого программного обеспечения для наших платформ считывателей зондов. Вы определяете, автоматизируете, выполняете и постоянно совершенствуете тестирование интеграции и регрессионное тестирование на уровне «аппаратура-в-контуре» (Hardware-in-the-Loop, HIL) и «коробки», чтобы кандидаты на выпуск программного и микропрограммного обеспечения были квалифицированы на репрезентативном оборудовании, прежде чем они перейдут на более поздние этапы формальной верификации, приемочных испытаний на заводе (FAT), полевых испытаний или валидации приложений.
Ваша зона ответственности охватывает интегрированное поведение приложений и служб на встраиваемых системах Linux, внутренние и внешние API, аппаратные интерфейсы, взаимодействие с микропрограммным обеспечением и FPGA, системное управление, калибровку и конфигурацию, диагностику, сбор данных, поведение при загрузке и обновлении, механизмы восстановления и интерфейсы датчиков. Вы создаете и поддерживаете автоматизированные тестовые фреймворки, стенды HIL, тестовые оболочки, интеграцию CI/CD и объективные свидетельства выпуска, которые делают поведение продукта воспроизводимым, наблюдаемым и измеримым.
Вы являетесь частью команды Sensing Platform Team и тесно сотрудничаете с командами Embedded Software, FPGA/Firmware, Electronics, Photonics, Architects, Product System Engineering, Product Integration, Verification & Validation, Lifecycle Engineering, командами приложений/программного обеспечения и внешними партнерами по разработке. Основная ответственность этой роли заключается в комплексном тестировании систем считывателей/HIL и квалификации выпуска. Эта роль дополняет модульное и компонентное тестирование, проводимое разработчиками, и не заменяет независимую формальную верификацию, соответствие требованиям, экологическую или комплексную валидацию приложений, выполняемую на более поздних этапах.
Обязанности
Разработка HIL и системного тестирования
- Разрабатывать стратегию тестирования считывателей/HIL, набор регрессионных тестов системного уровня и подход к квалификации выпуска встраиваемого программного и микропрограммного обеспечения для Sensing Platform.
- Транслировать требования к продукту, программному и микропрограммному обеспечению, а также к интерфейсам в планы тестирования, критерии приемки, цели покрытия и автоматизированные регрессионные тесты.
- Проектировать, создавать и поддерживать тестовые установки HIL с использованием репрезентативного оборудования, имитируемых или реальных входных сигналов датчиков и дистанционно управляемого лабораторного оборудования.
- Разрабатывать поддерживаемую автоматизацию тестирования на основе Python для управления устройствами, оркестрации тестов, сбора данных, их анализа и отчетности.
- Интегрировать регрессионное тестирование на основе оборудования в конвейеры CI/CD, обеспечивая воспроизводимое и в значительной степени автоматизированное тестирование кандидатов на выпуск.
- Поддерживать прослеживаемость между требованиями, тестовыми случаями, дефектами, результатами и свидетельствами выпуска.
Квалификация выпуска и анализ сбоев
- Квалифицировать выпуски встраиваемого программного и микропрограммного обеспечения на репрезентативном оборудовании считывателей перед последующей V&V, FAT, полевыми испытаниями или валидацией приложений.
- Проектировать и выполнять системные, негативные, стрессовые, длительные, инъекционные тесты сбоев, тесты перезапуска/восстановления, тесты обновления/отката и тесты на устойчивость на основе оценки рисков продукта.
- Анализировать журналы, состояние системы, производительность, временные параметры, поведение связи, выходные данные для выявления регрессий и проблем интеграции.
- Классифицировать сбои и поддерживать анализ первопричин проблем в программном обеспечении, микропрограммном обеспечении, FPGA, электронике, фотонике, датчиках и системных интерфейсах.
- Воспроизводить полевые, производственные и клиентские проблемы в лабораторных/HIL средах и превращать важные сбои в постоянное покрытие регрессионными тестами.
- Предоставлять четкую, основанную на фактических данных информацию о готовности к выпуску, известных ограничениях, нерешенных дефектах и пробелах в покрытии.
Тестовая инженерия и техническое владение
- Выявлять риски качества, отсутствие покрытия, слабую наблюдаемость, ограничения тестируемости и сценарии сбоев, а также способствовать практическим улучшениям.
- Оценивать тестовые фреймворки, архитектуры HIL, подходы к моделированию, инструментарий и решения для автоматизации.
- Сотрудничать с инженерами по программному обеспечению, микропрограммному обеспечению/FPGA, электронике, фотонике, системам, интеграции и V&V для улучшения дизайна с учетом тестируемости, интерфейсов, диагностики и критериев приемки.
- Самостоятельно руководить значительными рабочими потоками HIL, системного тестирования и автоматизации с минимальным руководством, обеспечивая надежность и воспроизводимость тестовых сред, инструментов, конфигураций и документации.
- Участвовать в обзорах требований, дизайна, кода, планов тестирования и результатов тестирования.
Сотрудничество и непрерывное совершенствование
- Сотрудничать с междисциплинарными инженерными командами для решения сложных проблем интеграции и качества продукта.
- Четко сообщать результаты тестов, риски качества, дефекты, зависимости и готовность к выпуску техническим заинтересованным сторонам.
- Делиться знаниями и обучать коллег в области тестирования встраиваемого программного обеспечения, автоматизации HIL, анализа сбоев и разработки надежных тестов.
- Постоянно совершенствовать автоматическое покрытие, контрольные точки качества CI/CD, отчетность по тестированию, диагностику, стабильность тестовой среды и процессы выпуска.
- Уменьшать количество «плавающих», ручных и повторяющихся тестов за счет многократно используемых тестовых активов и надежной автоматизации.
Что мы предлагаем
- Присоединяйтесь к одному из самых быстрорастущих deep-tech scale-up компаний Европы.
- Реальное влияние: ваша работа напрямую формирует наш рост и успех.
- Отличная команда в международной организации с коллегами более чем из двадцати национальностей.
- Конкурентоспособная заработная плата и пакет льгот.
- 30 дней отпуска в год.
- Ежедневные (пять раз в неделю) обеды для команды, а также регулярные командные мероприятия и корпоративные мероприятия.
Требования
- Степень бакалавра или магистра в области компьютерных наук, разработки программного обеспечения, электротехники, встраиваемых систем или смежных технических дисциплин.
- Более 5 лет соответствующего опыта в тестировании встраиваемого программного обеспечения, интеграции встраиваемых систем, автоматизации тестирования, HIL-тестирования, инженерии качества программного обеспечения или смежных областях.
- Богатый опыт тестирования встраиваемых продуктов на физическом оборудовании и интегрированных системах на протяжении всего жизненного цикла разработки продукта.
- Сильные навыки работы с Python для автоматизации тестирования, создания инструментов, управления лабораторным оборудованием и анализа.
- Глубокое понимание встраиваемых систем Linux, приложений и служб Linux, процессов разработки программного обеспечения, сетей, ведения журналов/диагностики и взаимодействия аппаратного и программного обеспечения.
- Практический опыт проектирования или поддержки автоматизированных тестовых оболочек, тестовых сред HIL или системного уровня, а также наборов регрессионных тестов для встраиваемых продуктов.
- Опыт работы с фреймворками автоматизации тестирования, такими как Pytest, Robot Framework или аналогичными инструментами; Git; Linux; Docker; и системами CI/CD, такими как GitLab CI, Jenkins, GitHub Actions или аналогичными.
- Опыт тестирования API программного обеспечения, аппаратных интерфейсов, межпроцессного взаимодействия, функций системного управления, сбора данных и интегрированного поведения встраиваемых систем.
- Сильные аналитические навыки и опыт применения структурированного дизайна тестов, классификации дефектов, решения проблем и методов анализа первопричин.
- Опыт отладки сложных проблем на границах программного обеспечения, микропрограммного обеспечения, FPGA, электроники и аппаратного обеспечения с использованием журналов, трассировок, диагностических средств и лабораторного оборудования.
- Отличные коммуникативные навыки на английском языке и способность четко излагать технические выводы и риски качества продукта как техническим, так и нетехническим заинтересованным сторонам.
- Соответствие требованиям для необходимого EU/NATO/security screening или допуска, где это применимо к должности.
Желательно
- Опыт междисциплинарной разработки высокотехнологичных продуктов, включающих программное обеспечение, микропрограммное обеспечение, электронику, FPGA, фотонику, зондирование, производство или оборонные/безопасные приложения.
- Опыт в области лабораторной автоматизации и инструментария, например, программируемые источники питания, генераторы сигналов, коммутационное/мультиплексирующее оборудование, последовательные интерфейсы, осциллографы, логические анализаторы или установки на базе LabVIEW.
- Опыт работы с SIL, моделированием, эмуляцией устройств или виртуализированными тестовыми средами, дополняющими физическое HIL-тестирование.
- Наличие сертификата ISTQB или аналогичного сертификата по тестированию является плюсом, но практический опыт в области тестирования встраиваемых систем имеет большее значение.
- Опыт проектирования тестов на инъекцию сбоев, на выносливость, восстановление, циклы питания, обновление/откат и на устойчивость для встраиваемых систем.
- Знакомство с системной инженерией, верификацией продукта, прослеживаемостью требований, управлением конфигурацией и процессами управления жизненным циклом продукта.
Проверка
Вы будете работать с клиентами в секторах обороны и безопасности. Обязательным является получение Справки об отсутствии возражений, выданной AIVD (Главным управлением разведки и безопасности Нидерландов). Это означает, что вы должны будете пройти проверку безопасности. Мы объясним процесс и поможем вам разобраться в применимых требованиях.