Анонс: DigitalDataManager теперь называется SegmentStream!

Software Engineer

Engineereing Team

JS
Node JS
Docker
Amazon
Ruby
Python
SQL

В SegmentStream, мы создаем продукт, который помогает сотням компаний построить масштабируемую и надежную инфраструктуру для сбора и обработки данных (Customer Data Infrastructure). Миссия нашей компании - позволить любой компании извлекать реальную пользу из своих данных, не думая о каких-либо технических препятствиях.

Мы постоянно ищем в команду талантливых fullstack разработчиков. Сейчас нам нужен профессионал с преимущественно бэкэнд-фокусом, который обожает заниматься построением сложных высоконагруженных распределенных систем с неограниченной масштабируемость.

Откликнуться

не указана

заработная плата

3–6 лет

опыт

в офисе

полная занятость

Что мы делаем:

  • Мы разрабатываем высоконагруженные конвейеры данных используя NodeJs и множество решений для хранения данных и построения очередей их обработки.

  • Нам нравится строить UI на React.

  • Мы разрабатываем наш бэкенд-API на NodeJS и PostgreSQL.

  • Мы верим в использование правильного инструмента для правильной задачи.

  • Мы деплоим наш код несколько раз в день. Мы обожаем эффективность, облачные решения, CI/CD, Kubernetes, Docker и Terraform.

  • Мы гордимся кодом, который пишем, но мы не зациклены на определенных методологиях и технологиях. Мы уверены, что делать “правильные вещи” важнее, чем делать “вещи правильно”. Но несмотря на это, мы очень серьезно относимся к ответственности перед нашими клиентами за обеспечение надежной инфраструктуры, на которую завязано множество их важных бизнес-процессов.

Кого мы ищем:

  • Ты умеешь превращать сложные бизнес-требования в работающий продукт, который полюбят наши клиента.

  • Ты гордишься кодом, который пишешь, но при этом остаешься прагматичен и самокритичен.

  • Ты знаешь, когда время рефакторить и когда время релизить.

  • Тебя воодушевляет поиск элегантных решений для сложных технических задач.

  • Ты сфокусирован, мотивирован, самостоятелен и способен завершать начатое, какой бы сложной ни оказалась задача.

  • Тебе не чужда эмпатия, ты терпелив и всегда рад прийти на помощь члену команды.

  • Ты знаешь основы архитектурных паттернов и паттернов проектирования

  • Ты понимаешь, что такое разрабатывать продукт, который уже находится в продакшне и которым пользуются миллионы людей. Ты понимаешь, что с момента запуска на продакшн - это больше не лабораторная работа. Ты серьезно относишься к тестированию, понимаешь ценность логирования, мониторинга и отслеживания ошибок.

Примеры будущих задач:

  • Создание масштабируемой и отказоустойчивой микросервисной архитектуры с балансировкой нагрузки и функциями автоматического обнаружения новых сервисов.

  • Параллельная обработка терабайтов данных в условиях жестких ограничений по оперативной памяти.

  • Создание высокодоступных конвейеров обработки событий в реальном времени с неограниченной масштабируемостью.

  • Проектирование любого рода систем, которые легко масштабируются в зависимости от нагрузки.

  • Построение эффективных систем кэширования и проксирования.

  • Управление изменяемым shared state для различных платформ баз данных SQL и NoSQL с low-latency требованиями

  • Умное шардирование очередей, баз данных, сервисов, в случае, если стандартные балансировщики не справляются.

  • Снижение расходов на облачную инфраструктуру при сохранении той же скорости разработки.

Требования:

  • Ты можешь писать как серверный так и клиентский код (да-да, мы любим fullstack) на JavaScript используя последние фичи и API.

  • Имеешь хороший фундамент по теории алгоритмов, структурам данных, паттернам проектирования. Есть высшее образование в Computer Science.

  • Минимум 3 года “промышленного” опыта в разработке или наличие крутых open-source проектов на GitHub.

  • Доказанное умение писать код, который решает реальные проблемы.

  • Ты глубоко понимаешь все нюансы и сложности написания масштабных single-page приложений.

  • Сильная теоретическая база и практический опыт проектирования и реализации высокодоступных, высоконагруженных, отказоустойчивых распределенных систем.

  • Опыт внедрения масштабируемых конвейеров обработки данных и событий, предпочтительно с использованием потоковых технологий.

  • Ты хорошо разбираешься в параллельном вычислении и не путаешь его с распределенным вычислением.

  • Знаком с лучшими практиками деплоймента и тестирования кода на продакшн окружении.

  • В своей работе демонстрируешь использование архитектурных паттернов для построения масштабируемых веб-приложений (правильный дизайн API, высоконагруженные конвейеры данных, эффективные алгоритмы, и т.д.)

  • Ты ценишь командную работу и соглашаешься с утверждением, что «команда - это группа людей, которые несут ответственность за решения друг друга».

  • Ты знаком с основами машинного обучения.

  • Ты свободно говоришь и пишешь на английском без ошибок.

Откликнуться

Хочешь присоединиться к команде
или узнать больше деталей о продукте?

Оставь свои контактные данные
и мы свяжемся с тобой в течение 8 часов.

Спасибо!
Мы свяжемся с вами в ближайшее время.