Мы — команда Orion soft, развиваем высоконагруженное программно-определяемое хранилище, обеспечивающее масштабируемость, отказоустойчивость и высокую производительность. Наш стек включает Go, и мы ищем сильного разработчика для работы над оболочкой ядра системы.
Твои задачи:
- Разрабатывать и оптимизировать текущее решение;
- Улучшать производительность и отказоустойчивость системы (кеширование, контроль задержек, восстановление после сбоев);
- Интегрироваться с сетевыми протоколами (iSCSI, NFS, S3, RDMA);
- Писать многопоточные и асинхронные компоненты на Go;
- Разрабатывать тесты (модульные, нагрузочные, интеграционные);
- Проводить анализ производительности и оптимизацию (профилирование, тюнинг);
- Участвовать в код-ревью и техническом менторстве.
Что нужно знать, чтобы попасть в команду:
- Опыт коммерческой разработки на Go от 3 лет;
- Глубокое понимание конкурентности в Go (горутины, каналы, sync, context);
- Понимание распределённых систем (CAP-теорема, консенсус, репликация, шардирование);
- Опыт работы с Linux (системные вызовы, файловые системы);
- Знание сетевого программирования (TCP/IP, HTTP, gRPC);
- Опыт работы с высоконагруженными системами;
- Умение писать чистый, тестируемый и хорошо документированный код;
- Знание Git, CI/CD;
- Английский на уровне чтения документации.
Будет серьезным преимуществом:
- Опыт работы с Ceph, MinIO, Lustre, GlusterFS;
- Знание протоколов хранения (iSCSI, NFS, SMB, S3);
- Опыт работы с io_uring, DPDK, SPDK;
- Знание контейнеризации (Docker, Kubernetes);
- Опыт разработки клиент-серверных систем с gRPC/Protobuf;
- Опыт профилирования (pprof, trace, flamegraphs);
- Понимание работы с объектными хранилищами (S3-совместимые);
- Опыт работы с распределёнными consensus-алгоритмами (Raft, Paxos).
Как будет проходить адаптация?
Адаптация проходит поэтапно под руководством наставника и при поддержке команды. Первые 3 месяца:
- Онбординг и знакомство с архитектурой продукта, его компонентами и инструментами разработки.
- Изучение кодовой базы, процессов код-ревью и CI/CD.
- Выполнение первых задач для погружения в код и инфраструктуру.
- Участие в планировании и ежедневных митингах команды.
- Постепенное включение в полный цикл разработки и принятие технических решений.
Испытательный срок — 3 месяца. Наша цель — ваше уверенное погружение в проект.
Перспективы:
Работа в Orion soft — это возможность влиять на развитие ключевого продукта компании. Расти как по горизонтали, так и по вертикали:
- Техническое лидерство:
- Углубление экспертизы в области распределённых хранилищ и high‑performance систем на Go. Архитектурное влияние на развитие продукта. Исследование и внедрение новых технологий. - Управленческий рост:
- Развитие команды SDS. Участие в стратегическом планировании. Координация работы команд.
Мы ценим инициативу и готовы поддерживать рост наших лидеров как в экспертной, так и в управленческой плоскости.
Что изучить: - Документация по MinIO (написан на Go);
- «Designing Data-Intensive Applications» by Martin Kleppmann;
- Go: эффективная работа с конкурентностью, памятью, профилирование (pprof);
- Работа с сетевыми протоколами в Go (net, http, grpc);
- Распределённые системы: Raft (реализация на Go);
- Kubernetes и хранение (CSI-драйверы).