UniteLabs
Senior Python SDK Engineer (m/f/d)
Автоматический пересказ вакансии на русском. Полный текст на языке оригинала и форма отклика — на сайте работодателя.
Senior-инженер для развития Python SDK лабораторной автоматизации: владение библиотеками Bus, CDK и core Python-библиотеками, на которых строятся коннекторы к приборам. Работа в тесной связке с инженерами коннекторов и реальным железом в мюнхенском офисе.
Задачи
- Владеть Bus, CDK и core Python-библиотеками, а также SiLA-JS, Rust SiLA-библиотекой, бандлером и SiLA Gateway: API-дизайн, фичи, тесты, CI, релизы и депрекации
- Автоматизировать релизы библиотек через CI с версионированием, changelog и политикой депрекаций без ручных шагов
- Тестировать релизы библиотек против зависящих от них коннекторов, чтобы изменения не ломали продакшн
- Писать документацию, примеры и migration guides, достаточные для самостоятельной разработки коннекторов
- Работать над живыми проектами коннекторов и превращать дублирующиеся паттерны в фичи библиотек
- Выносить абстракции из реальной работы: паттерн, встретившийся в третьем коннекторе, становится фичей библиотеки
- Внедрить COM и DLL-коммуникацию в Bus — от дизайна до прототипа на реальном устройстве и миграции существующих коннекторов
- Построить автоматизированное тестовое окружение, прогоняющее каждый коннектор end-to-end в CI перед релизом на симулированных и реальных приборах
- Отслеживать и сокращать время разработки первого коннектора для нового класса приборов
Требования
- 5+ лет продакшн-разработки на Python, от которого зависят другие: async, typing, packaging, testing
- Опыт владения библиотекой, SDK или внутренней платформой с версионированием, релизами, депрекациями и обратной совместимостью
- Умение выносить абстракции из реального использования и понимание, когда обобщать, а когда оставить дублирование
- Отношение к документации, примерам и migration guides как к части продукта
- Работа с пользователями библиотек: сбор требований, письменные предложения перед крупными изменениями, проактивная коммуникация
Условия
- Гибридный формат с регулярным присутствием в офисе WERK1 в Мюнхене (отладка железа)
- Гибкая удалённая работа и PTO
- Конкурентная компенсация с потенциалом роста в VC-backed стартапе
- Ноутбук на выбор и ежегодный бюджет на продуктивность
- Бенефиты на спорт, мобильность, страхование и другое
- Тимбилдинги, офсайты и work-cations
Навыки
- Python
- Async
- Typing
- Packaging
- Testing
- SiLA 2
- gRPC
- zeroconf
- TypeScript
- npm
- Rust
- COM
- DLL
- ctypes
- comtypes
- pythonnet
- C
- .NET
- protobuf
- pytest
- Docker
- Kubernetes
- Helm
- AWS
- Terraform
- PostgreSQL
- Prefect
- NestJS
- Prisma
- Vue 3
- Nuxt 3
- TailwindCSS