Node.js инженер (backend developer)
Neuragames
Мы ищем Node.js инженера в нашу команду для разработки инновационного сервиса знакомств. Эта роль предоставляет возможность работать с технологиями интерактивной коммуникации, реляционными и нереляционными базами данных, продвинутыми алгоритмами поиска и решениями на основе ИИ.
Обязанности:
– Разрабатывать и оптимизировать серверные приложения на Node.js, обеспечивая их надежность, масштабируемость и совместимость (RASUI).
– Создавать функционал для интерактивного и увлекательного пользовательского опыта (рекомендательная система, чат, бизнес-правила).
– Оптимизировать операции с данными для поддержки высокопроизводительных приложений.
– Участвовать в код-ревью, планировании спринтов и ретроспективах.
Требования:
– 3+ лет опыта в разработке на Node.js, знание event loop, потоков и асинхронного управления потоками.
– 3+ лет опыта работы с TypeScript.
– Знание структур данных: graph, vector, linked list, хэш-таблицы и их практическое применение.
– Понимание основных алгоритмов (**dynamic programming**, divide-and-conquer, concurrency, **greedy**) и умение их применять (подбор, оптимизация).
– 3+ лет опыта работы с фреймворком NestJS, знание NestJS request lifecycle и Lifecycle Events.
– Опыт работы с push-уведомлениями и WebSockets.
– Опыт работы с базами PostgreSQL (3+ лет), Redis (2+ лет) и MongoDB (2+ лет), включая отладку сложных запросов.
– Опыт работы с распределенными системами обмена сообщениями (**NATS**, RabbitMQ, Kafka или **AWS SQS**).
– Понимание архитектурных принципов: layered, microservices, modular monolithic.
– Знание жизненного цикла разработки ПО (**SDLC**).
– Знакомство с принципами SOLID и практиками написания чистого кода.
– Опыт работы с Git и Gitflow.
– Сильные навыки решения проблем и внимание к деталям.
**Будет плюсом:**
– Понимание различий между monorepository и multi repository для организации кода. Практический опыт создания и управления monorepository.
– Опыт применения техник кеширования Cache-Aside, Read-Through, Write-Through и Write-Back для оптимизации производительности и надежности.
– Опыт работы с векторными и графовыми структурами данных в PostgreSQL, написание UDF.
– Опыт работы с технологиями ИИ, включая инженеринг запросов (интеграция OpenAI API).
– Опыт работы с облачными платформами, такими как Google Cloud Platform (GCP) и AWS.
– Знание принципов предметно-ориентированного проектирования (DDD) и событийно-ориентированной архитектуры (EDA).
– Знакомство с Agile-методологиями, такими как Scrum.
– Опыт разработки и поддержки масштабируемых, высокопроизводительных API.
**Что мы предлагаем:**
– Заработная плата 3 000$ и бонусы по результатам работы.
– Возможность работать над высокоэффективным и инновационным проектом с использованием передовых технологий.
– Гибкий график работы и возможность удаленной работы.
– Команда, ориентированная на создание исключительного пользовательского опыта.
– Возможности для профессионального роста и развития.