Senior Go/Golang Developer
Коротко
Owns development of high-load backend services and internal APIs in Go; designs microservice architecture, writes concurrent code, works with · Needs: 5+ years commercial development, 3-4+ years production Go; deep knowledge of Go concurrency, memory model, GC, runtime; experience profiling and optimizing
Описание от работодателя
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, полная или частичная занятость
Оформление в удобном для тебя формате: ИП или самозанятость
Полная удаленка
Возможность менять проекты внутри компании — с учётом твоей экспертизы, интереса и текущей загрузки.
Прозрачность условий и коммуникации, поддержка на всех этапах до выхода на проект и во время работы.