freehire launches on Product Hunt on 26 August.

Follow →

Backend-разработчик (Go)

Summary

Backend developer builds and scales high-load Go services for a global tour and hotel search platform, integrating data from hundreds of tour operators.

Tourvisor - ведущая система поиска туров и отелей для туристов и агентств в России и СНГ.
Основное направление работы-это создание системы поиска туров, а также предоставление поисковых модулей для сайтов туристических компаний. Решения компании позволяют любому турагентству открыть полноценный интернет-магазин туров с функцией оплаты туров банковской картой всего за несколько дней.

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

В связи с развитием продукта и растущим объёмом задач, нам нужен новый игрок в нашу дружную команду. Мы ищем Go-разработчика, который будет играть ключевую роль в создании сложных и высоконагруженных digital-продуктов.

Наш технологический стек: Go, Node.js, JavaScript, TypeScript, React, Redux, React Router, SASS, Webpack, Cordova

Храним код в Gitlab, каждый merge request проходит через code review, для трекинга задач используем Jira, документируем в Confluence.

О нашей команде:
Мы ценим дружескую атмосферу: обсуждаем идеи, делимся опытом и иногда играем в настольные игры и теннис в перерывах, а так же весело проводим время вместе вне стен офиса.

Чем предстоит заниматься:

  • Разрабатывать и поддерживать backend-сервисы высоконагруженной системы поиска пакетных туров, которой ежедневно пользуются миллионы туристов и тысячи турагентств.
  • Разрабатывать новые сервисы, API и внутренние инструменты для развития продукта.
  • Участвовать в проектировании архитектуры новых компонентов и доработке существующих решений.
  • Оптимизировать производительность сервисов, снижать время отклика и повышать стабильность работы системы.
  • Проводить рефакторинг существующего кода, повышать его качество, читаемость и поддерживаемость.
  • Разрабатывать unit- и интеграционные тесты, обеспечивать надежность и качество программного кода.
  • Участвовать в code review, делиться экспертизой и поддерживать единые стандарты разработки.
  • Работать с Docker-контейнерами и участвовать в поддержке CI/CD-процессов в GitLab.
  • Взаимодействовать с аналитиками, frontend-разработчиками, тестировщиками и другими командами при реализации новых функций.
  • Участвовать в обсуждении технических решений, предлагать способы повышения производительности, надежности и масштабируемости системы.
  • Выявлять технический долг, предлагать пути его устранения и участвовать в улучшении архитектуры продукта.
  • Участвовать в развитии инженерных практик команды, помогать менее опытным разработчикам и участвовать в принятии технических решений.

Наши требования:

Язык Go и бэкенд-разработка:

  • Уверенное знание Go: синтаксис, стандартная библиотека, идиомы, паттерны проектирования.
  • Глубокое понимание многопоточности (goroutines, channels, sync primitives) и умение избегать race conditions.
  • Понимание работы сборщика мусора (GC) и базовые навыки профилирования (pprof).
  • Опыт написания чистого, поддерживаемого кода, понимание принципов SOLID и базовых паттернов (Clean Architecture, Dependency Injection).
  • Опыт разработки API: REST (понимание идемпотентности, статусов).

Базы данных (MySQL и Redis):

  • MySQL: Умение писать сложные SQL-запросы. Глубокое понимание работы индексов, планов выполнения запросов (EXPLAIN), транзакций и уровней изоляции (ACID). Опыт работы с миграциями БД.
  • Redis: Понимание сценариев использования (кэширование, pub/sub, распределенные блокировки, очереди). Знание основных структур данных и проблем (cache stampede, memory fragmentation).

Инструменты и инфраструктура:

  • Git: Уверенное владение (rebase, merge, cherry-pick). Понимание стратегий ветвления (GitFlow).
  • Docker: Умение писать оптимизированные `Dockerfile` (multi-stage builds) и `docker-compose.yml` для локальной разработки и тестов.
  • GitLab CI/CD: Понимание принципов работы CI/CD пайплайнов. Умение читать, дебажить и при необходимости дорабатывать `.gitlab-ci.yml` (линтеры, сборка, прогон тестов, деплой).

Тестирование и качество кода:

  • Культура написания тестов: Unit-тесты, интеграционные тесты. Понимание, что и как нужно моковать (использование `testify`, `gomock` или `go-mocket`).
  • Участие в Code Review: умение давать конструктивную обратную связь и аргументированно отстаивать свою точку зрения.

Мы ценим:

  • Самостоятельность: Умение взять фичу от стадии обсуждения до выката в прод. Способность самостоятельно дебажить проблемы на проде.
  • Проактивность: Замечаете "костыли" или узкие места в архитектуре/БД — предлагаете решения, а не просто ждете тикетов.
  • Работа с неопределенностью: Умение задавать правильные вопросы аналитикам и бизнесу, если требования кажутся неполными или противоречивыми.
  • Командная игра: готовность делиться знаниями, помогать джунам и совместно отвечать за стабильность сервиса.

Будет большим плюсом:

  • Понимание Observability (Наблюдаемости): опыт работы с Prometheus, Grafana, Jaeger / OpenTelemetry (умение не только писать код, но и понимать, как его мониторить и трейсить).
  • Базовые знания Linux / Bash (умение зайти на сервер, посмотреть логи, понять, почему контейнер упал с OOM).

Мы предлагаем:

  • Работу над масштабными и интересными задачами, где ваши решения имеют реальное влияние на бизнес-результат;
  • Современный технологический стек и возможность профессионального роста в области высоких нагрузок и сложной архитектуры;
  • Участие в запуске новых продуктов и фич «с нуля»;
  • Минимум бюрократии и адекватный менеджмент;
  • Помощь и наставничество от опытных коллег;
  • Оформление по ТК РФ, компания входит в реестр аккредитованных IT-компаний;
  • Полный социальный пакет и конкурентную заработную плату, ДМС после испытательного срока;
  • Гибкое начало рабочего дня в офисе (возможна частичная удаленная работа), уютный офис с панорамным видом на город;
  • Целеустремленный коллектив, в котором приятно работать.

See also