← К результатам

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

з/п не указана
Tourvisor · Россия, Пермь, улица Куйбышева, 95б
Полный день Постоянная занятость опыт от 3 лет
Откликнуться на источнике →

Описание

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-компаний; Полный социальный пакет и конкурентную заработную плату, ДМС после испытательного срока; Гибкое начало рабочего дня в офисе (возможна частичная удаленная работа), уютный офис с панорамным видом на город; Целеустремленный коллектив, в котором приятно работать.

Источник: hh · Опубликовано: вчера