Разработчик серверного бэкенда (Go + Python)
Imunify360 Security Suite — продукт компании CloudLinux Inc., создателя ОС №1 по безопасности и стабильности для хостинг-провайдеров. Imunify — это инновационное решение для безопасности, разработанное специально для общих серверов, VPS/выделенных серверов. Автоматизированное, простое в использовании решение с шестиуровневым подходом к безопасности обеспечивает комплексную и полную защиту от атак.
Мы ищем динамичного и опытного Backend Developer в нашу серверную команду. На этой должности вы будете проектировать, создавать и поддерживать высокомасштабируемые серверные системы, которые обеспечивают работу Server, гарантируя надежность, производительность и бесперебойную работу с клиентами. Вы будете работать в крупномасштабной инфраструктуре, сотрудничать с кросс-функциональными командами и помогать формировать будущее продукта. Позиция полностью удаленная с гибким графиком, что позволит вам планировать свой день и работать из любой точки мира.
Ключевые обязанности:
- Проектирование, создание и поддержка серверных сервисов для серверной платформы Imunify360;
- Разработка и улучшение высокопроизводительных, отказоустойчивых конвейеров обмена сообщениями и обработки данных;
- Эксплуатация и поддержка основных серверных компонентов, включая прокси, брокеры сообщений, кэши и базы данных;
- Исследование и решение сложных проблем в распределенных системах, обеспечение времени безотказной работы и надежности;
- Написание и поддержка модульных/интеграционных тестов для обеспечения надежного, поддерживаемого кода;
- Сотрудничество с командами Infrastructure, Monitoring и другими продуктовыми командами для доработки архитектуры и оптимизации производительности системы;
- Мониторинг продакшн-сервисов с использованием Grafana, Telegraf и связанных инструментов, проактивное устранение узких мест и проблем масштабирования;
- Улучшение CI/CD конвейеров для автоматизированного, эффективного развертывания;
- Участие в обзорах дизайна, анализе инцидентов и внесение вклада в долгосрочное техническое видение команды.
Требования
Чтобы преуспеть в этой роли, вам потребуется:
- Более 5 лет профессионального опыта в качестве Backend Developer;
- Опыт работы с высоконагруженными приложениями. Мы говорим о ~100 тыс. запросов в секунду.
- Глубокое знание Golang как основного языка разработки (включая практический опыт работы с goroutines) и практический опыт работы с Python, включая разработку на основе asyncio;
- Опыт поддержки Linux сервисов и веб-приложений на Linux машинах;
- Опыт в AI инженерии: LLM, RAG, методы оптимизации затрат, prompt engineering и т. д.;
- Практический опыт работы с распределенными системами и фреймворками обмена сообщениями, такими как RabbitMQ, Kafka (или аналогичными);
- Опыт работы с MongoDB и Redis (включая распределенное кэширование и локальные сценарии использования RPC);
- Знакомство с ClickHouse (или другими колоночными базами данных) для крупномасштабной аналитики;
- Практический опыт работы с Docker для локальной разработки и продакшн-сред;
- Опыт работы с HAProxy или аналогичными решениями для балансировки нагрузки/прокси;
- Глубокое понимание проектирования высокопроизводительных сервисов и проблем распределенных систем;
- Знакомство с CI/CD конвейерами, системой контроля версий (Git) и автоматизированными рабочими процессами развертывания. Идеальным будет опыт создания таких конвейеров с нуля;
- Отличные навыки отладки, с возможностью глубокого погружения в сетевые, данные и системные проблемы;
- Отличные коммуникативные навыки и навыки сотрудничества, комфортная работа в распределенной команде;
- Владение английским языком на уровне Upper-Intermediate (устно и письменно).
Приветствуется:
- Опыт работы с системами управления конфигурацией (например, Ansible, Puppet, Salt);
- Опыт работы со стеками мониторинга и метрик (Grafana, Mimir, Graphite, Telegraf);
- Опыт работы с DNS системами (Unbound или аналогичными).
Мы ценим разработчиков, которые:
- Любознательны и бесстрашны в решении проблем – не боятся копаться в существующих системах, исследовать первопричины и предлагать улучшения;
- Прагматичны и ориентированы на детали – сосредоточены на создании надежных, поддерживаемых систем;
- Командные игроки – комфортно чувствуют себя, работая в распределенной команде и внося вклад в общую миссию;
- Эффективные коммуникаторы – способны четко излагать идеи, конструктивно обмениваться обратной связью и способствовать сотрудничеству между командами;
- Увлеченные и проактивные – привносят энергию, инициативу и позитивный настрой, который укрепляет культуру команды.
Преимущества
Что мы предлагаем?
- Сильный фокус на профессиональном развитии с возможностями для обучения и роста:
- Интересные и сложные проекты,
- Менторство и другие программы обмена знаниями;
- Полностью удаленная работа с гибким рабочим графиком, позволяющая вам планировать свой день и работать из любой точки мира;
- Оплачиваемый отпуск 24 дня в году, 10 национальных праздников и неограниченное количество больничных для обеспечения здорового баланса между работой и личной жизнью;
- Компенсация частного медицинского страхования;
- Компенсация коворкинга и спортзала/спортивных занятий;
- Возможность получить награду за самую инновационную идею, которую компания сможет запатентовать, что способствует развитию культуры творчества и инноваций.