Профиль навыка

Паттерны Message Brokers

Kafka, RabbitMQ, NATS — паттерны работы с очередями, routing, dead letter

Backend Development Очереди сообщений

Ролей

9

где встречается этот навык

Грейдов

5

сформированная дорожка роста

Обязательных требований

29

ещё 16 — необязательные

Домен

Backend Development

Группа

Очереди сообщений

Последнее обновление

17.03.2026

Как использовать

Выберите текущий грейд и сравните ожидания. Карточки ниже покажут, что нужно закрыть для следующего уровня.

Чего ждут на каждом уровне

Таблица показывает, как меняется глубина владения навыком от Junior до Principal.

Роль Обязательность Описание
Backend Developer (C#/.NET) Понимает паттерны брокеров сообщений в .NET: publish-subscribe, request-reply и competing consumers с MassTransit/NServiceBus. Следует командным конвенциям для публикации и потребления сообщений через RabbitMQ или Azure Service Bus.
Backend Developer (Elixir) Понимает паттерны брокеров сообщений в Elixir/OTP: pub-sub через Broadway, work queues через GenStage. Следует командным конвенциям для потребления сообщений из RabbitMQ/Kafka с использованием встроенных примитивов конкурентности и supervision trees.
Backend Developer (Go) Обязателен Понимает паттерны брокеров сообщений в Go: pub-sub, fan-out и work queues с channels и goroutines. Следует командным конвенциям для интеграции с NATS, Kafka или RabbitMQ через Go-клиентские библиотеки.
Backend Developer (Java/Kotlin) Понимает паттерны брокеров сообщений в Java/Spring: pub-sub через Spring Cloud Stream, JMS templates и Kafka listeners. Следует командным конвенциям для публикации и потребления сообщений с автоконфигурацией Spring Boot.
Backend Developer (Node.js) Понимает паттерны брокеров сообщений в Node.js: pub-sub с BullMQ, event-driven messaging с amqplib. Следует командным конвенциям для асинхронной обработки сообщений через очереди и event emitters в Express/Fastify-сервисах.
Backend Developer (PHP) Обязателен Понимает паттерны брокеров сообщений в PHP: pub-sub через Symfony Messenger, queue workers через Laravel Queues. Следует командным конвенциям для диспатчинга и потребления сообщений через драйверы Redis, RabbitMQ или SQS.
Backend Developer (Python) Понимает базовые концепции message broker'ов: publish/subscribe, point-to-point, очереди сообщений. Умеет отправить и получить сообщение через RabbitMQ (pika) или Redis pub/sub. Знает зачем нужна асинхронная коммуникация между сервисами.
Backend Developer (Rust) Понимает паттерны брокеров сообщений в Rust: pub-sub с lapin (AMQP), async consumers через tokio channels. Следует командным конвенциям для типобезопасной сериализации сообщений с serde и паттернов надёжной доставки.
Backend Developer (Scala) Понимает паттерны брокеров сообщений в Scala: pub-sub через Akka Streams/ZIO Streams, интеграция Kafka через Alpakka. Следует командным конвенциям для функциональной обработки сообщений с effect systems и обработкой backpressure.
Роль Обязательность Описание
Backend Developer (C#/.NET) Обязателен Работает с messaging в .NET: настраивает MassTransit с consumer/saga, использует NServiceBus для enterprise messaging, применяет Azure Service Bus с sessions для ordered processing. Реализует retry policies через Polly и настраивает dead letter handling.
Backend Developer (Elixir) Обязателен Работает с messaging в Elixir: использует Broadway для concurrent message processing из RabbitMQ/Kafka/SQS, настраивает GenStage для internal event processing pipeline. Применяет OTP supervisor patterns для отказоустойчивой обработки сообщений с автоматическим перезапуском.
Backend Developer (Go) Обязателен Уверенно работает с message broker'ами на Go: реализует consumer groups в Kafka через segmentio/kafka-go или Sarama, настраивает NATS JetStream для durable messaging, применяет паттерны worker pool для параллельной обработки. Обрабатывает poison messages и настраивает retry с backoff.
Backend Developer (Java/Kotlin) Обязателен Работает с messaging в Java-экосистеме: использует Spring Kafka для Kafka-интеграции, Spring Cloud Stream для абстракции от брокера, настраивает consumer groups и partition assignment. Применяет @KafkaListener с concurrency для параллельной обработки и настраивает error handler с retry.
Backend Developer (Node.js) Обязателен Работает с message broker'ами в Node.js: использует KafkaJS для Kafka-интеграции, настраивает NestJS microservices с RabbitMQ/Kafka транспортом, реализует pub/sub через Redis Streams. Применяет consumer groups и настраивает retry логику с exponential backoff.
Backend Developer (PHP) Обязателен Работает с messaging в PHP: использует Symfony Messenger с RabbitMQ/Redis транспортом, настраивает Laravel Horizon для мониторинга очередей, применяет routing по message type. Обрабатывает failed jobs через retry и dead letter queues, настраивает приоритетные очереди.
Backend Developer (Python) Обязателен Работает с message broker'ами в Python-проектах: использует Celery с RabbitMQ/Redis для фоновых задач, реализует pub/sub через confluent-kafka или aiokafka, применяет паттерны competing consumers и fan-out. Настраивает dead letter queues для обработки ошибок.
Backend Developer (Rust) Обязателен Работает с message broker'ами в Rust: реализует consumer groups через rdkafka с offset management, использует NATS через async-nats для lightweight messaging, применяет tokio channels для internal message passing. Обрабатывает backpressure через bounded channels и flow control.
Backend Developer (Scala) Обязателен Работает с messaging в Scala-экосистеме: использует Alpakka Kafka с Akka Streams для reactive processing, настраивает consumer groups с committable sources, реализует at-least-once delivery через committing offsets. Применяет fs2-kafka для functional stream processing с cats-effect.
Роль Обязательность Описание
Backend Developer (C#/.NET) Обязателен Проектирует messaging-архитектуру для .NET микросервисов: реализует outbox pattern через EF Core с Debezium/polling publisher, настраивает MassTransit courier для routing slip pattern, интегрирует Kafka через Confluent .NET Client. Проектирует event-driven архитектуру с MediatR для internal events.
Backend Developer (Elixir) Обязателен Проектирует messaging-архитектуру для Elixir-систем: определяет границы между BEAM distribution и external brokers, реализует event sourcing через Commanded framework, настраивает Broadway с custom acknowledger для exactly-once semantics. Оптимизирует concurrent processing через process pooling.
Backend Developer (Go) Обязателен Проектирует messaging-системы на Go: реализует transactional outbox через database polling или CDC, проектирует idempotent consumers с deduplication, настраивает message ordering гарантии. Оптимизирует throughput через batch processing и zero-allocation serialization.
Backend Developer (Java/Kotlin) Обязателен Проектирует messaging-архитектуру для Java-микросервисов: реализует transactional outbox через Spring @Transactional + Debezium, настраивает exactly-once processing в Kafka с transactional producer, проектирует schema evolution через Confluent Schema Registry. Оптимизирует consumer throughput через batch listener.
Backend Developer (Node.js) Обязателен Проектирует messaging-архитектуру для Node.js сервисов: реализует transactional outbox с MongoDB change streams или PostgreSQL LISTEN/NOTIFY, настраивает Kafka с exactly-once semantics через idempotent producer. Проектирует event schema management и consumer idempotency через deduplication store.
Backend Developer (PHP) Обязателен Проектирует messaging-архитектуру для PHP-систем: реализует event-driven коммуникацию между PHP-сервисами через RabbitMQ с exchange routing, интегрирует PHP с Kafka через php-rdkafka для event streaming. Проектирует idempotent consumers и transactional outbox для consistency.
Backend Developer (Python) Обязателен Проектирует messaging-архитектуру для Python-сервисов: выбирает между RabbitMQ, Kafka, Redis Streams для разных сценариев, реализует transactional outbox для гарантии доставки, настраивает exactly-once semantics в Kafka. Проектирует schema registry для эволюции форматов сообщений.
Backend Developer (Rust) Обязателен Проектирует высокопроизводительные messaging-системы на Rust: реализует zero-copy десериализацию для максимального throughput, проектирует custom message routing через tokio task scheduling, настраивает batch processing с configurable flush intervals. Оптимизирует memory allocation для sustained high-throughput processing.
Backend Developer (Scala) Обязателен Проектирует messaging-архитектуру для Scala: реализует exactly-once processing через Kafka transactions с Alpakka, проектирует event sourcing с Akka Persistence или EventStoreDB, настраивает stream processing с Flink/Kafka Streams через Scala API. Оптимизирует backpressure и parallelism.
Роль Обязательность Описание
Backend Developer (C#/.NET) Обязателен Стандартизирует messaging в .NET экосистеме: выбирает между MassTransit, NServiceBus и Wolverine, проектирует event sourcing с EventStoreDB/Marten, внедряет saga orchestration для распределённых транзакций. Создает внутренние NuGet-пакеты для стандартизации messaging patterns.
Backend Developer (Elixir) Обязателен Стандартизирует messaging в Elixir-экосистеме: проектирует архитектуру с Commanded для CQRS/ES, внедряет EventStore для durable event log, создает internal libraries для стандартизации Broadway pipeline. Определяет паттерны для distributed saga через process managers.
Backend Developer (Go) Обязателен Определяет messaging-архитектуру для Go-платформы: стандартизирует internal event bus через Watermill или custom framework, проектирует event schema management с Protobuf/Avro, внедряет distributed tracing для message flows. Разрабатывает паттерны для saga orchestration и compensation.
Backend Developer (Java/Kotlin) Обязателен Стандартизирует messaging в Java-экосистеме компании: выбирает между Spring Cloud Stream, Axon Framework, Eventuate для event-driven архитектуры, проектирует saga orchestration с Temporal или Axon Saga. Внедряет event store для audit и replay, определяет стратегию topic governance.
Backend Developer (Node.js) Обязателен Стандартизирует messaging в Node.js экосистеме: создает internal SDK для абстракции от конкретного broker'а, проектирует event catalog с типизированными событиями через TypeScript, внедряет distributed tracing для message flows. Определяет паттерны для saga и choreography в Node.js.
Backend Developer (PHP) Обязателен Стандартизирует messaging в PHP-экосистеме: определяет паттерны для async коммуникации с учётом PHP process model ограничений, внедряет Ecotone Framework для CQRS/event sourcing, проектирует интеграцию PHP-монолита с event-driven микросервисами. Обучает команды messaging best practices.
Backend Developer (Python) Обязателен Определяет messaging-стратегию для организации: стандартизирует паттерны (saga, choreography vs orchestration, event sourcing), внедряет monitoring/alerting для message lag и consumer health. Проектирует партицирование Kafka-топиков для оптимальной параллелизации и data locality.
Backend Developer (Rust) Обязателен Определяет messaging-архитектуру для Rust-системы: создает внутренний messaging framework с абстракцией над broker'ами, проектирует event sourcing с custom event store на Rust, стандартизирует serialization через Serde с schema evolution. Менторит по идиоматичной обработке сообщений в async Rust.
Backend Developer (Scala) Обязателен Стандартизирует messaging в Scala-экосистеме: выбирает между Alpakka, fs2-kafka и ZIO Kafka для разных команд, проектирует event-driven архитектуру с CQRS через Akka Projection, внедряет schema registry интеграцию с Avro/Protobuf для type-safe evolution.
Роль Обязательность Описание
Backend Developer (C#/.NET) Формирует enterprise messaging стратегию для .NET: проектирует multi-transport архитектуру (Azure Service Bus + Kafka + RabbitMQ), определяет governance для event-driven систем. Влияет на архитектурные решения по внедрению event sourcing и CQRS на уровне организации.
Backend Developer (Elixir) Формирует messaging стратегию для Elixir-платформы: проектирует гибридную архитектуру BEAM clustering + Kafka для cross-language event streaming, определяет когда использовать Phoenix PubSub vs external broker. Влияет на развитие messaging-экосистемы Elixir (Broadway, Commanded, GenStage).
Backend Developer (Go) Формирует стратегию event-driven архитектуры на Go: проектирует multi-datacenter messaging с eventual consistency гарантиями, определяет паттерны для event versioning и schema migration. Влияет на архитектуру streaming-платформы с Kafka/Pulsar/NATS для обработки миллионов событий в секунду.
Backend Developer (Java/Kotlin) Формирует enterprise messaging стратегию: проектирует multi-cluster Kafka платформу с cross-datacenter репликацией, определяет стандарты для event-driven архитектуры на уровне организации. Влияет на выбор между Kafka, Pulsar, RabbitMQ для разных use cases с учётом TCO и operational complexity.
Backend Developer (Node.js) Формирует event-driven стратегию для Node.js платформы: проектирует real-time event processing pipeline с Kafka Streams/ksqlDB, определяет паттерны для event sourcing с event store. Влияет на архитектуру streaming-платформы с учётом Node.js event loop модели и backpressure handling.
Backend Developer (PHP) Формирует messaging стратегию для PHP-платформы: определяет как PHP-системы участвуют в enterprise event-driven архитектуре, проектирует подходы к async processing с учётом FPM/Swoole/RoadRunner runtime. Влияет на архитектурные решения по переходу от synchronous к event-driven в PHP legacy.
Backend Developer (Python) Формирует платформенную стратегию асинхронной коммуникации: проектирует multi-region messaging с Active-Active репликацией Kafka, определяет governance для schema evolution и topic naming conventions. Влияет на архитектуру event-driven платформы с учётом compliance и data retention требований.
Backend Developer (Rust) Формирует стратегию использования Rust для критически важных messaging компонентов: проектирует Rust-based message router/proxy для multi-protocol поддержки, определяет архитектуру streaming-платформы с sub-millisecond latency. Контрибьютит в open-source messaging инфраструктуру (Fluvio, NATS).
Backend Developer (Scala) Формирует streaming-стратегию для Scala-платформы: проектирует real-time processing pipeline с Apache Flink/Spark Structured Streaming на Scala, определяет architecture decision records для event sourcing vs traditional messaging. Влияет на развитие функционального подхода к messaging в Scala экосистеме.

Сообщество

👁 Следить ✏️ Предложить изменение Войдите, чтобы предлагать изменения
📋 Предложения
Пока нет предложений для Паттерны Message Brokers
Загрузка комментариев...