Created by AIImproved by people

Riqli · living documents · updated continuously

Where AI knowledge meets human practice.

Share with friends
KPI map / performance indicators system. Go developer (Go Developer). Document. (KPI. Key performance indicators. Performance indicators. Performance metrics. Response time. Resource utilization. RPS. Latency. Error rate.)
sections

1. Общие положения

contents

1.1. Назначение и область применения документа

Настоящий документ определяет систему ключевых показателей эффективности (KPI) для позиции Go-разработчик (Go Developer), устанавливает требования к профессиональной деятельности, порядок взаимодействия, обязанности, права и меру ответственности сотрудника. Документ является основой для оценки результативности труда, принятия управленческих решений, а также для планирования карьерного и профессионального развития.

contents

1.2. Нормативные и методические основания

Настоящий документ разработан на основании Трудового кодекса РФ, внутренних организационно-распорядительных актов Общества, политики в области управления персоналом и систем мотивации, а также с учетом лучших отраслевых практик в области управления продуктивностью и качеством разработки программного обеспечения на языке Go.

contents

1.3. Основные термины, определения и сокращения

В документе применяются следующие термины с соответствующими определениями: KPI (Key Performance Indicators) — ключевые показатели эффективности, количественно измеримые метрики, отражающие вклад сотрудника в достижение целей Общества. Latency — время задержки, затрачиваемое на обработку одного запроса в серверной системе. RPS (Requests Per Second) — количество запросов, обрабатываемых сервисом в секунду. Error Rate — процент ошибочных ответов системы от общего числа запросов. Утилизация ресурсов — степень использования вычислительных ресурсов (CPU, память, сетевой трафик, дисковые операции) в процессе работы микросервисов.

sections

2. Цель и сфера ответственности должности

contents

2.1. Миссия и предназначение роли

Go-разработчик в Обществе обеспечивает проектирование, разработку, оптимизацию и поддержку высоконагруженных распределенных систем и микросервисной архитектуры на языке программирования Go. Основная цель сотрудника — создавать надежные, производительные и масштабируемые бэкенд-решения с низкой Latency, высоким RPS и минимальным уровнем Error Rate.

contents

2.2. Ключевые ожидаемые результаты (Outcomes)

В результате своей деятельности Go-разработчик обеспечивает бесперебойную работу сервисов Общества с высокими показателями доступности (Service Level Agreement, SLA). Он поддерживает и повышает эффективность существующего кода, активно участвует в разработке архитектуры новых компонентов, обеспечивает своевременное и качественное выполнение задач в соответствии с планами спринтов.

sections

3. Подчинение и организационная структура

contents

3.1. Подчиненность

Go-разработчик подчиняется непосредственно Tech Lead / Руководителю группы разработки. В своей работе сотрудник руководствуется задачами, определенными тимлидом и актуальным продуктовым бэклогом.

contents

3.2. Взаимодействие

В процессе работы Go-разработчик активно взаимодействует с командой разработки, инженерами по качеству (QA), системными аналитиками, DevOps-инженерами, менеджером продукта и архитектором для согласования технических решений.

sections

4. Должностные обязанности

contents

4.1. Разработка и проектирование ПО

  • Проектирование, написание и рефакторинг высококодного, эффективного и безопасного кода на Go для микросервисов и бэкенд-приложений, следуя принципам чистой архитектуры и паттернам проектирования.
  • Интеграция с внешними API, базами данных (PostgreSQL, ClickHouse, MongoDB), очередями сообщений (Apache Kafka, RabbitMQ) и кэш-хранилищами (Redis).
contents

4.2. Оптимизация производительности и надежности

  • Выявление и устранение узких мест в производительности сервисов, оптимизация использования CPU и памяти.
  • Снижение Latency запросов и повышение RPS путем профилирования кода, оптимизации работы с сетью и диском, настройки пулов соединений и кэширования.
  • Мониторинг Error Rate, анализ логов ошибок и внедрение отказоустойчивых сценариев (retry, fallback, circuit breaker).
contents

4.3. Обеспечение качества и надежности кода

  • Написание юнит-тестов с использованием встроенного пакета testing и фреймворков gomonkey, testify с покрытием кода не менее 80%.
  • Написание интеграционных и нагрузочных тестов (с использованием vegeta, wrk, k6) для подтверждения достижения целевых значений RPS, Latency и Error Rate.
contents

4.4. Участие в DevOps и эксплуатации

  • Обеспечение сборки, контейнеризации (Docker) и деплоя сервисов в Kubernetes-кластер с использованием CI/CD пайплайнов (GitLab CI / GitHub Actions).
  • Участие в настройке систем мониторинга (Prometheus + Grafana) и централизованного логирования (ELK Stack / Loki) для отслеживания ключевых метрик.
contents

4.5. Работа с технической документацией и коммуникация

  • Актуализация технической документации (README, OpenAPI/Swagger), схем взаимодействия и архитектурных решений.
  • Участие в ежедневных стендапах, код-ревью (Code Review), планировании спринтов и ретроспективах.
sections

5. Права сотрудника

contents

5.1. Доступ к информации и инструментам

Go-разработчик имеет право доступа к корпоративной документации, репозиториям кода, системам управления проектами (Jira, Confluence), доступ к логам и метрикам сервисов для выполнения своих должностных обязанностей.

contents

5.2. Право принятия технических решений

Сотрудник имеет право предлагать архитектурные изменения, выбор технологического стека и инструментов в рамках своей компетенции.

contents

5.3. Взаимодействие и инициатива

Сотрудник имеет право запрашивать необходимые ресурсы, информацию и разъяснения у руководителя и смежных команд.

sections

6. Ответственность и подотчетность

contents

6.1. Ответственность за результаты работы

Go-разработчик несет ответственность за своевременность, качество и полноту выполнения поставленных задач, а также за соответствие разработанного кода стандартам качества и требованиям безопасности.

contents

6.2. Производственная и финансовая ответственность

Сотрудник несет ответственность за разглашение конфиденциальной информации, сохранность корпоративного имущества и оборудования, а также за материальный ущерб (включая прямые убытки и упущенную выгоду) в результате нарушений производственных инструкций.

sections

7. Квалификационные требования

contents

7.1. Требования к образованию и опыту

Высшее образование по направлению "Информатика и вычислительная техника" или смежным специальностям. Опыт коммерческой разработки на языке Go от 3 лет.

contents

7.2. Специальные знания и навыки

  • Уверенное владение языком программирования Go, знание сетевого стека (HTTP/2, gRPC, WebSocket, TCP/IP).
  • Понимание архитектуры высоконагруженных систем, опыт работы с конкурентностью, горутинами и каналами.
  • Знание принципов работы с базами данных, оптимизации SQL-запросов, базовых навыков администрирования.
contents

7.3. Дополнительные компетенции и сертификаты

Приветствуется опыт работы в распределенных командах, владение английским языком на уровне Intermediate и выше.

sections

8. Условия труда

contents

8.1. Режим работы

Пятидневная рабочая неделя с двумя выходными днями (суббота, воскресенье). Нормированный рабочий день с 10:00 до 19:00 по московскому времени (по согласованию). Для сотрудника предусмотрен гибкий график начала и окончания рабочего дня.

contents

8.2. Обеспечение ресурсами и безопасность

Рабочее место оснащается современной компьютерной техникой, доступом в интернет, лицензионным ПО и средствами защиты информации.

sections

9. Ключевые показатели эффективности (KPI)

contents

9.1. Продуктивность разработки (Velocity and Delivery)

  • Выполнение плана спринта — процент задач, завершенных в рамках запланированного спринта (target ≥ 90%).
  • Цикл выполнения задачи — среднее время от начала работы над задачей до ее деплоя на продуктивный стенд (Lead Time).
contents

9.2. Качество и надежность кода (Quality & Reliability)

  • Error Rate — процент ошибочных HTTP-ответов (коды 5xx) относительно общего числа запросов к сервису (target ≤ 0.1%).
  • Покрытие кода тестами — процент покрытия юнит-тестами (target ≥ 80%).
contents

9.3. Производительность и отзывчивость систем (Performance & Responsiveness)

  • Средняя Latency — время обработки запроса (p95 / p99) для критических API-методов (target: ≤ 100ms для p95).
  • Пиковый RPS (Requests Per Second) — максимальное количество запросов в секунду, которое выдерживает сервис без деградации Latency (определяется нагрузочным тестированием).
contents

9.4. Утилизация ресурсов (Resource Utilization)

  • Эффективность использования CPU — оценка загрузки процессора на пиковых нагрузках (target: средняя утилизация не более 75%).
  • Использование памяти — контроль утечек и потребления памяти (Heap in use, GC overhead).
contents

9.5. Инженерная культура и вклад в экосистему (Engineering Excellence)

  • Количество и качество код-ревью — участие в проверках кода коллег, количество полезных замечаний.
  • Вклад в документацию и инфраструктуру — улучшение внутренних библиотек, инструментов, документации.
sections

10. Бизнес-процессы, чек-листы и сценарии работы

contents

10.1. Процесс разработки и сдачи задачи (Feature Lifecycle)

  • Шаг 1. Анализ — изучить задачу в трекере (Jira), уточнить требования у аналитика или менеджера продукта.
  • Шаг 2. Проектирование — разработать архитектурное решение, при необходимости создать документацию в Confluence.
  • Шаг 3. Разработка — написать код на Go.
  • Шаг 4. Тестирование — написать юнит- и интеграционные тесты.
  • Шаг 5. Code Review — создать Merge Request, назначить ревьюера.
  • Шаг 6. Деплой — выполнить деплой на среду разработки / стейджинг.
  • Шаг 7. Мониторинг — проверить метрики (RPS, Latency, Error Rate) в Grafana.
contents

10.2. Чек-лист перед релизом

  • Проверка: успешный прогон пайплайна CI/CD.
  • Проверка: покрытие тестами не ниже требуемого порога.
  • Проверка: документация (API, архитектура) актуализирована.
  • Проверка: проведено нагрузочное тестирование (при необходимости).
  • Проверка: получен аппрув на релиз от лида.
contents

10.3. Сценарий реагирования на инциденты (Incident Response)

  • Обнаружение — получение алерта о росте Error Rate или Latency.
  • Диагностика — анализ логов в Kibana / Grafana Loki, проверка состояния инфраструктуры.
  • Эскалация — при невозможности быстрого решения, уведомить руководителя и команду дежурных инженеров.
  • Решение — применение фикса (code fix, rollback, масштабирование).
  • Анализ — написание Root Cause Analysis (5 Whys).
contents

10.4. Работа с системой управления задачами

Работа осуществляется в корпоративной системе управления задачами (Jira/YouTrack) с соблюдением регламента обновления статусов, приоритетов и исполнителей.