О Bitdeer:
Bitdeer — ведущая мировая технологическая компания в области майнинга Биткоина и облачных вычислений для ИИ.
Bitdeer стремится предоставлять своим клиентам комплексные решения для майнинга Биткоина. Помимо разработки ведущих в отрасли ASIC-чипов и производства майнингового оборудования, группа занимается сложными процессами, связанными с вычислениями по всей цепочке создания стоимости. Это включает закупку оборудования, логистику, проектирование и строительство дата-центров, управление оборудованием, а также эксплуатацию сетей и объектов. Bitdeer также предлагает передовые облачные возможности клиентам с высоким спросом на искусственный интеллект.
Штаб-квартира Bitdeer находится в Сингапуре, компания работает на глобальном уровне с диверсифицированным энергетическим портфелем в 3 ГВт и разворачивает дата-центры для майнинга Биткоина и HPC в США, Бутане, Норвегии, Канаде, Малайзии и Эфиопии.
О роли
Мы ищем инженера по опыту разработчиков (Developer Experience Engineer), который будет создавать и владеть Terraform-провайдером, CLI и SDK, позволяющими клиентам подготавливать и управлять GPU-кластерами и Kubernetes-нагрузками как кодом на нашей платформе. В настоящее время поддержка инфраструктуры как кода для платформы Kubernetes AI Cloud осуществляется неформально командой контроля плоскости управления как побочный продукт развертывания основного API подготовки; эта роль существует для того, чтобы превратить этот побочный продукт в первоклассный, версионируемый продукт с собственным графиком выпуска, гарантиями совместимости и уровнем качества. API контроля плоскости управления все еще развивается — формы ресурсов, семантика асинхронных операций и контракты ошибок еще не зафиксированы — поэтому непосредственная задача заключается в том, чтобы работать с меняющейся целью: отслеживать изменения схемы, поглощать критические изменения в версионировании провайдера и SDK, а не передавать их клиентам, и давать отпор команде контроля плоскости управления, когда предложенная форма API затруднит корректное моделирование провайдера или CLI. Как только API станет достаточно стабильным, чтобы его можно было зафиксировать, эта роль возьмет на себя полное, постоянное владение линиями Terraform-провайдера, CLI и SDK — приемочными тестами, обработкой состояния и отклонений, сгенерированными и написанными вручную клиентскими уровнями, документацией как кодом и конвейером выпуска в реестре — и станет авторитетом команды в том, что означает инфраструктура как код для многопользовательского GPU-облака.
Что будет входить в ваши обязанности:
- Архитектура и жизненный цикл Terraform Provider: Проектирование и реализация Terraform-провайдера, охватывающего ресурсы GPU-кластера, пула узлов, сети и хранения данных поверх API контроля плоскости управления, корректно моделируя операции создания/чтения/обновления/удаления и длительные асинхронные операции в рамках фреймворка плагинов Terraform. Владение эволюцией схемы состояния, обнаружением отклонений и безопасным импортом ресурсов, чтобы файлы состояния клиентов никогда не расходились с фактической инфраструктурой. Создание и поддержка набора приемочных тестов, которые запускаются в среде контроля плоскости управления при каждом изменении провайдера.
- Дизайн и рабочие процессы CLI: Создание инструмента командной строки, который клиенты используют для аутентификации, подготовки кластеров и написания сценариев для повседневных операций, рассматривая эргономику команд, форматы вывода и сообщения об ошибках как поверхности продукта, а не как afterthought. Разработка обработки учетных данных и сеансов, которая работает как для интерактивных, так и для CI/автоматизированных сценариев использования, не ослабляя изоляцию арендаторов. Поддержание согласованности модели ресурсов CLI и модели ресурсов Terraform-провайдера, чтобы клиенты могли беспрепятственно переключаться между ними.
- Генерация SDK и клиентских библиотек: Создание уровня SDK — сгенерированных клиентов на основе определений API контроля плоскости управления плюс написанный вручную идиоматический слой поверх них — для языков, на которых клиенты действительно создают автоматизацию. Владение конвейером генерации, чтобы новые поля и конечные точки API автоматически попадали в SDK, а написанный вручную код резервировался для пагинации, повторных попыток, аутентификации и типизации ошибок, которые генерация не может хорошо выразить. Версионирование и ведение журнала каждого выпуска SDK в соответствии с теми же контрактами совместимости, что и у провайдера и CLI.
- Партнерство по контракту API до фиксации: Прямое взаимодействие с командой контроля плоскости управления, пока API подготовки нестабилен, рассмотрение предлагаемых форм ресурсов, семантики полей и контрактов ошибок на предмет их соответствия модели plan/apply Terraform и эргономике SDK перед их выпуском. Обозначение дизайнов API, которые приведут к утечке абстракций или непредставимым состояниям в провайдере, и согласование изменений, пока стоимость изменения невелика. Определение критериев и процесса для объявления API достаточно стабильным, чтобы передать полное владение IaC этой роли.
- Версионирование, совместимость и инжиниринг выпусков: Применение семантического версионирования и политики устаревания для провайдера, CLI и SDK в качестве опубликованного контракта, чтобы изменение API контроля плоскости управления никогда не ломало молча существующее состояние Terraform клиента или скрипты автоматизации. Владение конвейером выпуска в Terraform Registry (или частном эквиваленте) и реестрах пакетов языков, включая матрицы совместимости с поддерживаемыми версиями API контроля плоскости управления. Рассматривать любое критическое для клиента изменение без пути миграции как блокиратор выпуска.
- Документация как код и внедрение: Создание документации, примеров и кратких руководств как кода — генерируемых из схемы провайдера и определений SDK, где это возможно — чтобы документация не могла молча отклоняться от поведения. Поддержание эталонного набора модулей Terraform и примеров CLI/SDK для общих шаблонов GPU-кластеров, которые также служат дымовыми тестами. Сбор телеметрии использования CLI и SDK для оценки внедрения и сбоев, чтобы определить, какие ресурсы и рабочие процессы требуют внимания в первую очередь.
Как вы будете выделяться:
- Иметь 5+ лет опыта работы в области бэкэнд- или платформенной инженерии, включая практический опыт создания или поддержки Terraform-провайдера (или сопоставимого плагина IaC, например, Pulumi или Crossplane) для реального облачного или Kubernetes control plane. Вы должны быть уверены в полном владении поверхностью, ориентированной на разработчика, от дизайна до выпуска и поддержки.
- Демонстрировать уверенное владение Go и прямой опыт работы с Terraform Plugin Framework/SDK, включая проектирование схем ресурсов, управление состоянием, обнаружение отклонений и шаблоны приемочного тестирования. Ожидается опыт генерации или ручного обслуживания клиентских SDK на основе OpenAPI, protobuf или аналогичных определений API.
- Иметь опыт создания CLI или SDK как продуктов — проектирования для сценариев использования скриптов и автоматизации, безопасной обработки аутентификации и учетных данных, а также управления версионированием и устареванием без нарушения существующих интеграций клиентов. Опыт ведения переговоров по контрактам API с вышестоящей командой бэкэнда, а не просто потребления готового API, является большим плюсом.
- Иметь практическое знание Kubernetes и примитивов облачной инфраструктуры — кластеров, пулов узлов, сетей, хранения данных — достаточное для их корректного моделирования как декларативных ресурсов. Знакомство с концепциями GPU-облака или инфраструктуры ML является плюсом, но не обязательным требованием.
- Быть готовым работать с нестабильным, развивающимся вышестоящим API — поглощая изменения схемы в версионируемые выпуски, а не раскрывая их клиентам — и четко общаться с командой платформы о том, какие изменения API являются дорогостоящими для нижестоящих систем.
Что вы получите, работая с нами:
- Культура, которая ценит аутентичность и разнообразие мыслей и происхождения;
- Инклюзивная и уважительная среда с открытыми рабочими пространствами и захватывающим духом стартапа;
- Быстрорастущая компания с возможностью налаживания связей с пионерами отрасли и энтузиастами;
- Возможность напрямую вносить вклад и влиять на будущее индустрии цифровых активов;
- Участие в новых проектах, разработка процессов/систем;
- Личная ответственность, автономия, быстрый рост и возможности обучения;
- Привлекательные социальные льготы и возможности для развития, такие как обучение и наставничество.
Bitdeer стремится предоставлять равные возможности трудоустройства в соответствии с законами страны, штата и местными законами. Bitdeer не дискриминирует сотрудников или соискателей по признакам расы, цвета кожи, гендерной идентичности и/или самовыражения, сексуальной ориентации, семейного и/или родительского статуса, религии, политических убеждений, национальности, этнического происхождения или социального происхождения, социального статуса, инвалидности, возраста, статуса коренного населения и членства в профсоюзе.