Aegis IT — бутик-компания в сфере IT-аутстаффинга, работающая со специалистами с уровня senior и lead.
Мы работаем с заказчиками, которые ценят результат, автономность и зрелый инженерный подход.
Со специалистами мы выстраиваем партнёрскую модель сотрудничества:
подберем проекты под твой уровень экспертизы, нагрузки и профессиональные интересы, обеспечим прозрачные условия и будем сопровождать на всех этапах работы — от выхода на проект до его завершения или перехода на следующий.
Сейчас у нас в работе есть несколько проектов на позицию Senior Go/Golang Developer
Чем предстоит заниматься:
Все проекты разноплановые, но мы выделили усредненные задачи:
- Разработка высоконагруженных backend-сервисов и внутренних API на Go.
- Проектирование и развитие микросервисной и распределённой архитектуры: идемпотентность, консистентность, retries, deadlines, отказоустойчивость.
- Написание конкурентного кода на goroutines, channels и примитивах синхронизации.
- Проектирование REST/gRPC API и согласование контрактов с другими командами.
- Асинхронное взаимодействие сервисов через брокеры (Kafka, NATS, RabbitMQ).
- Работа с БД: проектирование схем, индексы, оптимизация запросов, транзакции; Redis для кэша и хранения.
- Профилирование и оптимизация: CPU, память, аллокации, GC, throughput и latency.
- Тестирование: unit- и integration-тесты.
- Docker и Kubernetes: деплой, ресурсы, health checks.
- Участие в построении CI/CD.
- Мониторинг, логирование, трейсинг, алерты и дашборды.
- Code review, участие в архитектурных решениях и техдизайне.
- Управление техдолгом и рефакторинг.
- Разбор production-инцидентов, повышение надёжности.
- Документирование технических решений.
Основные требования:
- Коммерческая разработка от 5 лет, из них опыт production-разработки на Go от 3-4 лет.
- Глубокое знание Go: goroutines, channels, примитивы синхронизации, паттерны конкурентности, memory model, GC, runtime.
- Опыт написания конкурентного кода без гонок данных.
- Умение профилировать и оптимизировать приложения с помощью pprof (CPU, память, аллокации).
- Опыт работы с generics.
- Понимание сетевого программирования.
- Опыт разработки высоконагруженных и распределённых систем.
- Опыт проектирования микросервисной архитектуры.
- Понимание event-driven архитектуры и асинхронного взаимодействия между сервисами.
- Сильные навыки System Design.
- Понимание принципов отказоустойчивости: retries, deadlines, идемпотентность, консистентность данных.
- Опыт проектирования и разработки HTTP / REST / gRPC API.
- Уверенное знание SQL и PostgreSQL или MySQL: сложные запросы, CTE, оконные функции, индексы, транзакции, оптимизация.
- Опыт работы с NoSQL-хранилищами.
- Практический опыт работы с Redis.
- Опыт работы с одним или несколькими брокерами сообщений: Kafka, NATS/JetStream, RabbitMQ.
- Опыт работы с Docker и Kubernetes: деплой, управление ресурсами, health checks, readiness/liveness probes.
- Опыт работы с Git и CI/CD (GitLab CI, GitHub Actions, TeamCity или аналоги).
- Хорошее понимание Linux, сетей и TCP/IP.
- Опыт написания unit- и integration-тестов.
- Опыт работы с мониторингом (Prometheus, Grafana), логированием и трейсингом.
- Опыт проведения code review и участия в принятии архитектурных решений.
- Умение документировать технические решения.
Будет плюсом:
- Опыт построения observability: OpenTelemetry, Jaeger, ELK.
- Опыт работы с CI/CD и GitOps: ArgoCD и аналоги.
- Опыт работы с распределёнными и NoSQL-базами данных: ClickHouse, MongoDB, YDB, CockroachDB.
- Опыт работы с IAM, OAuth2/OIDC, mTLS и безопасным межсервисным взаимодействием.
- Знание Python для скриптов, автоматизации и работы с legacy-кодом.
Условия:
- Поток действительно интересных проектов, релевантных твоему опыту и с учетом текущей загрузки
- Формат работы 5/2, полная или частичная занятость
- Оформление в удобном для тебя формате: ИП или самозанятость
- Полная удаленка
- Возможность менять проекты внутри компании — с учётом твоей экспертизы, интереса и текущей загрузки.
- Прозрачность условий и коммуникации, поддержка на всех этапах до выхода на проект и во время работы.