Salt Square — растущая аутсорсинговая компания, предоставляющая высококачественные услуги по разработке программного обеспечения клиентам из широкого спектра отраслей. Наша команда состоит из квалифицированных и преданных своему делу профессионалов, предлагающих инновационные решения, которые превосходят ожидания клиентов.
Наша миссия — создавать надежные, масштабируемые и готовые к будущему цифровые решения, адаптированные к уникальным потребностям каждого клиента. Мы способствуем развитию культуры «команда прежде всего», где сотрудничество, непрерывное обучение и техническое превосходство являются основными ценностями. От поддержки стартапов в запуске их первых продуктов до помощи глобальным предприятиям в масштабировании их деятельности, мы стремимся обеспечить выдающуюся ценность в каждом проекте.
В качестве инженера по работе с данными (Data Engineer) в Salt Square вы будете создавать и поддерживать масштабируемые конвейеры данных в сфере здравоохранения, преобразовывать устаревшие данные о претензиях и клинические данные в стандарт FHIR® (Fast Healthcare Interoperability Resources), а также поддерживать аналитику здоровья населения и соответствие нормативным требованиям для плательщиков и поставщиков услуг.
Мы ищем опытного старшего инженера по работе с данными (Senior Data Engineer) для проектирования, внедрения и оптимизации масштабируемых решений по работе с данными. Вы будете работать с современными технологиями обработки данных, распределенными системами и облачными платформами для создания эффективных, высокопроизводительных конвейеров данных, поддерживающих аналитику, ИИ/МО и инициативы в области бизнес-аналитики.
Типичные обязанности
- Обратное проектирование логики преобразования устаревших данных в потоках NiFi, представлениях и материализованных представлениях PostgreSQL, а также пользовательских сопоставлениях FHIR.
- Разработка инструментария Python для анализа определений потоков NiFi (XML/JSON, NiFi 1.12 и 1.19) и преобразования вложенных групп процессов в читаемую, упорядоченную структуру.
- Проектирование, разработка и внедрение надежных конвейеров ETL/ELT для крупномасштабного приема, преобразования и хранения данных, включая перестройку каналов данных с использованием моделей dbt и преобразований Trino MERGE.
- Использование ИИ-агентов для ускорения разработки при строгой проверке сгенерированного кода.
- Обеспечение качества, целостности и управления данными посредством методов проверки, мониторинга данных и автоматизированного тестирования.
- Проектирование и выполнение проверки эквивалентности между устаревшими и новыми выходными данными с учетом ограничений на перемещение данных на уровне строк за пределы защищенных сред.
- Автоматизация развертываний и тестирования с использованием конвейеров CI/CD с Git, Terraform, GitHub Actions или Jenkins.
- Разработка фреймворков для оповещения, мониторинга и наблюдаемости конвейеров данных для обеспечения надежности и проактивного устранения проблем.
- Проектирование и создание пользовательских инструментов и абстракций данных для поддержки аналитики, машинного обучения и обработки данных в реальном времени.
- Документирование устаревших ошибок, неоднозначностей и устаревших путей кода без излишнего замедления процесса миграции.
- Содействие в создании повторяемого, шаблонного рабочего процесса миграции, который может масштабироваться в нескольких средах.
- Участие в разработке архитектуры и стратегии данных, способствуя улучшению масштабируемости, производительности и оптимизации затрат.
- Постоянное изучение новейших технологий и лучших практик для непрерывного совершенствования возможностей инжиниринга данных.
Требования, описанные ниже, относятся к нашему идеальному кандидату. Если вы не соответствуете всем требованиям, но считаете, что хорошо подходите для этой роли, мы все равно призываем вас подать заявку — мы рассмотрим всех кандидатов, чей опыт соответствует большинству требований.
- Более 5 лет практического опыта в инжиниринге данных, со знанием распределенной обработки данных и фреймворков для больших данных (например, Apache Spark, Apache Iceberg, Trino, dbt, Airflow, Dagster).
- Продвинутые навыки SQL, включая разбор сложной, недокументированной логики представлений PostgreSQL и написание SQL для производственной среды в Trino или аналогичных движках (паттерны MERGE и upsert).
- Практический опыт работы с MPP-базами данных, такими как Amazon Redshift, Snowflake или Teradata.
- Опыт работы с ETL/ELT, включая инкрементальные загрузки, идемпотентность, upsert, обработку поздних и внеочередных данных, а также зависимости сущностей.
- Продвинутые навыки программирования на Python или Scala, включая разбор XML/JSON и работу с графовыми или древовидными структурами.
- Значительный опыт в настройке производительности Spark и оптимизации крупномасштабных рабочих процессов обработки данных.
- Опыт работы с технологиями потоковой передачи данных в реальном времени, такими как Apache Flink, Spark Streaming или Kafka.
- Опыт создания и эксплуатации конвейеров в Dagster (предпочтительно) или Airflow, включая планирование, зависимости и исправление ошибок.
- Опыт согласования выходных данных между системами с использованием агрегированных проверок, коэффициентов совпадения на уровне полей, эталонных тестовых наборов, а также фреймворков для сопоставления и тестирования данных.
- Практический опыт работы с CI/CD для конвейеров данных: рабочие процессы на основе Git, обзоры pull-запросов, GitHub Actions, Jenkins или Terraform, а также автоматизированное тестирование моделей SQL и dbt.
- Знакомство с AWS (EC2, S3, RDS PostgreSQL, DynamoDB, кросс-аккаунтное назначение ролей IAM) и контейнеризованной инфраструктурой (EKS, Docker, Kubernetes).
- Опыт работы с Apache NiFi, включая чтение и отладку сложных потоков, групп процессов, контекстов параметров и процессоров ExecuteScript.
- Способность читать и понимать исходный код Java/Groovy пользовательских процессоров NiFi.
- Практический опыт работы с инструментами для написания кода с помощью ИИ, такими как Cursor, Claude Code или Copilot, включая выявление тонких ошибок в коде, сгенерированном ИИ.
- Опыт работы с PHI (защищенная медицинская информация) в соответствии с правилами HIPAA или в эквивалентных регулируемых средах данных.
- Знакомство с машинным обучением/глубоким обучением (предпочтительно PyTorch, TensorFlow или Keras) и инструментами MLOps для развертывания моделей и управления их жизненным циклом.
- Самостоятельность, сильные навыки решения проблем, готовность работать с неоднозначными, недокументированными системами в быстро меняющейся, гибкой среде.
Желательно:
- Опыт работы со стандартами медицинских данных (HL7, FHIR), включая ресурсы FHIR, проверку и инструменты сопоставления.
- Знакомство с данными плательщиков (претензии, сведения о правах, участники и покрытие).
- Знакомство с инструментами отчетности и визуализации, такими как Superset, Grafana или Tableau.
- Понимание фреймворков безопасности данных, соответствия требованиям и управления (например, GDPR, SOC 2).
Что мы предлагаем:
- Конкурентоспособная заработная плата и пакет льгот.
- 23 дня оплачиваемого отпуска.
- Возможности для профессионального роста и развития.
- Сотрудническая рабочая среда с талантливыми и преданными своему делу коллегами.
Если вы увлечены созданием надежных систем данных, которые оказывают реальное влияние на здравоохранение, мы будем рады видеть вас в нашей команде.