Описание работы
1. Ответственность за проектирование архитектуры и разработку основных бизнес-модулей, включая торговлю, счета фондов, управление рисками и другие критические сервисы. 2. Руководство и оптимизация архитектуры систем с высокой нагрузкой и отказоустойчивостью, опыт настройки производительности и обеспечения стабильности при миллионах запросов и миллиардах данных. 3. Анализ и оптимизация производительности доступа к базе данных, эффективности кэширования, очередей сообщений, пауз GC, утечек памяти и других системных проблем. 4. Внедрение асинхронных, распределенных и масштабируемых решений для повышения стабильности и пропускной способности системы в периоды пиковой нагрузки. 5. Руководство или участие в модернизации архитектуры, декомпозиции сервисов и модульной трансформации для улучшения сопровождаемости и масштабируемости системы. 6. Решение сложных задач бизнес-логики и обеспечения согласованности данных для баланса корректности и производительности в условиях высокой нагрузки. 7. Участие в мониторинге системы, нагрузочном тестировании, отработке отказов и планировании мощностей. 8. Участие в ревью кода, проектировании тестов и оптимизации CI/CD для обеспечения качества поставки. 9. Наставничество инженеров среднего уровня в области анализа систем, настройки производительности и развития архитектурных навыков.
Ключевые обязанности
- Проектирование и реализация масштабируемой и надежной архитектуры для основных бизнес-модулей.
- Оптимизация производительности системы в условиях высокой нагрузки.
- Обеспечение эффективности работы базы данных, использования кэша и стабильности очередей сообщений.
- Развитие распределенных и асинхронных сервисов.
- Руководство модернизацией архитектуры и модульными преобразованиями.
- Разработка решений для сложной бизнес-логики и согласованности данных.
- Участие в инициативах по мониторингу, тестированию и планированию мощностей.
- Поддержка высокого качества кода через ревью и улучшение CI/CD.
- Техническое руководство младшими и средними инженерами.
Требования к кандидату
- Диплом бакалавра или выше в области компьютерных наук или смежной специальности, 7+ лет опыта разработки на Golang.
- Доказанный опыт проектирования и оптимизации архитектуры систем с высокой нагрузкой и отказоустойчивостью.
- Знание MySQL, Redis, Kafka, gRPC, Protobuf и OpenResty.
- Глубокие знания в области микросервисной архитектуры, включая сервис-дискавери, управление конфигурациями, балансировку нагрузки и circuit breaking.
- Понимание инструментов настройки производительности, таких как pprof, trace и benchmark.
- Знание стандартов проектирования API, включая RESTful, GraphQL, WebSocket и OpenAPI.
- Отличные навыки решения проблем и анализа систем.
Предпочтительные квалификации
- Опыт разработки биржевых систем.
- Знание фреймворков, таких как GoFrame или Go-Zero.
- Опыт работы в проектах с высокой нагрузкой.
Преимущества
Полностью удаленная работа, дружная команда и конкурентоспособный пакет компенсаций.