Go Developer в Tarantool

Дата размещения вакансии: 04.03.2025
Работодатель: VK
Уровень зарплаты:
з/п не указана
Город:
Москва
Требуемый опыт работы:
От 3 до 6 лет

Tarantool — открытая платформа in-memory вычислений с гибкой схемой данных для создания высоконагруженных приложений. Ключевыми особенностями нашего продукта является надёжность, быстродействие и поддерживаемость, что в свою очередь требует использования эффективных алгоритмов и структур данных, грамотного использование возможностей операционной системы и компилятора, написания чистого и понятного кода. Основной платформой является Linux.

Для Tarantool существует множество утилит и модулей, расширяющих функциональность и предоставляющих различные интеграции, а также коннекторов для различных языков программирования. Команда экосистемы разрабатывает эти компоненты.

Задачи

  • Поддержка существующих и реализацией новых утилит и модулей расширения функциональности Tarantool, языковых коннекторов, интеграцией со сторонними технологиями. Прежде всего, это разработка относительно крупных продуктов — на Go TCM (WebUI для Tarantool) и tt (консольный клиент для Tarantool).
  • Важным моментом является открытость разработки. Около половины разрабатываемых продуктов и библиотек командой можно найти на GitHub. Это накладывает на участников проекта обязательства по формату взаимодействия: английский язык, понятное внешнему человеку описание задач и коммитов, понятные пользователю изменения в release notes, требования по документированию неочевидного кода.

Требования

  • Опыт коммерческой разработки на Go от двух лет.
  • Умение разобраться в чужом коде, новой технологии или языке программирования. Желание программировать на разных языках (C, Lua, Python, Go).
  • Знание основ работы баз данных.
  • Письменный английский: обсуждения и code review проходят на нем.
  • Готовность писать качественный и понятный открытый код.
  • Навыки решения широко поставленных задач и проблем на стороне пользователя.
  • Инициативность: мы заинтересованы в развитии мейнтейнеров модулей, коннекторов и подсистем Tarantool.
  • Умение структурировать рабочее время в условиях большого потока различного рода активностей.