Vero Biotech
Senior Main Application Software Engineer
Автоматический пересказ вакансии на русском. Полный текст на языке оригинала и форма отклика — на сайте работодателя.
Senior-разработчик основного приложения медицинской платформы GENOSYL для доставки ингаляционного оксида азота. Разработка и поддержка Gen 4 Main Application на C#/.NET, архитектура, тестирование и интеграция с firmware, GUI и аппаратным обеспечением.
Задачи
- Разрабатывать и поддерживать Gen 4 Main Application на C#/.NET
- Проводить код-ревью Main App, выявлять дефекты, нарушения стандартов кодирования, проблемы сопровождаемости и технический долг
- Разрабатывать и улучшать unit-, функциональные и интеграционные тесты, включая mock-based тесты; поддерживать анализ покрытия кода
- Помогать определять, реализовывать, документировать и поддерживать архитектуру Main App, интерфейсы, зависимости, проектные решения и диаграммы зависимостей
- Уточнять требования, декомпозировать и оценивать задачи, разрабатывать критерии приёмки и превращать неоднозначные требования в реализуемые задачи
- Поддерживать интеграцию Main App с GUI, firmware, Vita, ОС и другими компонентами Gen 4; устранять проблемы на стыках компонентов
- Быть технической точкой контакта по вопросам Main App и менторить менее опытных разработчиков, включая распределённые внешние ресурсы
- Устанавливать и поддерживать стандарты кодирования Main App/C#, процессы разработки, практики, материалы онбординга и улучшения качества
- Участвовать в Agile-планировании, стендапах, refinement, ретроспективах, sprint review, организации и приоритизации историй
- Координировать работу с командами software, systems, firmware, GUI, medical affairs, human factors, quality, verification и внешними вендорами
- Участвовать в подготовке требований, архитектурной и проектной документации, тестовых протоколов, отчётов и двунаправленной трассируемости в соответствии с процессами качества Vero Biotech
- Поддерживать технические интервью, оценивать инструменты разработки, анализировать метрики ПО и улучшать процесс поставки
Требования
- Степень бакалавра в Computer Science, Software Engineering, Computer Engineering, Electrical Engineering, Biomedical Engineering или смежной дисциплине; возможен эквивалентный опыт
- Как правило, 6+ лет профессионального опыта разработки ПО, включая значительный практический опыт C#/.NET
- Опыт в регулируемой медицинской, safety-critical или IoT-разработке настоятельно предпочтителен
- Сильный опыт объектно-ориентированного проектирования, архитектуры приложений, паттернов проектирования, управления зависимостями и поддерживаемых практик разработки
- Опыт разработки и выполнения unit-, функциональных и интеграционных тестов, включая mocks/test doubles, покрытие кода, статический анализ, CI/CD и конфигурационный менеджмент
- Опыт работы с приложениями на базе БД и принятия решений по проектированию или реализации баз данных
- Опыт проектирования, реализации и использования API или интерфейсов межпроцессного взаимодействия; предпочтителен опыт RESTful API
- Предпочтителен опыт интеграции ПО с firmware, сенсорами, электромеханическими системами, embedded Linux или аппаратно-управляемыми продуктами; плюс — знание Yocto
- Предпочтительно владение Python для автоматизации, тестирования, обработки данных или вспомогательных скриптов
- Опыт работы с Jira, Git, распределёнными командами разработки и внешними партнёрами
- Умение работать с неоднозначными требованиями, задавать точные уточняющие вопросы, выявлять последствия и понятно объяснять технические концепции нетехническим стейкхолдерам
- Предпочтительно знание документации по разработке ПО и ожиданий design control для медицинских изделий или других регулируемых продуктов
- Продемонстрированная ответственность, навыки решения проблем, индивидуальное лидерство и интерес к менторингу разработчиков
Условия
- Позиция onsite в Атланте, Джорджия
- Формального прямого руководства сотрудниками изначально нет; предполагается рост технического лидерства, менторинга, надзора за дизайном и координации работ по firmware и алгоритмам
- Возможность поднимать/перемещать до 50 фунтов; иногда требуется наклоняться, приседать или тянуться
- Возможность сидеть по два часа подряд
- Возможность тянуться выше головы и ниже пояса; корректируемое зрение до 20/20
- Возможность перемещаться по зданию и работать в инженерных лабораторных условиях
Навыки
- C#
- .NET
- Object-Oriented Design
- Design Patterns
- Dependency Management
- Unit Testing
- Integration Testing
- Mocking
- Code Coverage
- Static Analysis
- CI/CD
- Configuration Management
- Databases
- RESTful API
- IPC
- Firmware Integration
- Embedded Linux
- Yocto
- Python
- Jira
- Git
- Agile