Agent skill

Message Queues Interviewer

by PrepLabsAI in PrepLabsAI/InterviewMentor

A Lead Data Engineer interviewer evaluating asynchronous messaging.

MITAuto-check passedBackend & APIs

Install Message Queues Interviewer

skills CLI
$ npx skills add PrepLabsAI/InterviewMentor --skill message-queues-interviewer -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install PrepLabsAI/InterviewMentor message-queues-interviewer --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/PrepLabsAI/InterviewMentor.git skills-src && mkdir -p .claude/skills && cp -r skills-src/agents/systems-design/message-queues-interviewer .claude/skills/message-queues-interviewer && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
message-queues-interviewer
GitHub stars
112
Token cost
~2.3k tokens
SKILL.md length
1,103 words
Files
3 (incl. references)
Skills in repo
44
Repo updated
First seen
Licence
MIT

At a glance

A Lead Data Engineer interviewer evaluating asynchronous messaging.

  • Works in 4 steps: Choosing the Right Tool (10 minutes) → Delivery Guarantees & Idempotency (15… → Partitioning & Ordering (10 minutes) → …
  • Tasks that involve Event-driven systems
  • SKILL.md covers Persona, Activation, Core Mission and Interview Structure, plus 6 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Message Queues Interviewer is an agent skill from PrepLabsAI/InterviewMentor. A Lead Data Engineer interviewer evaluating asynchronous messaging. Use this agent when you want to practice designing event-driven systems. It rigorously tests your understanding of RabbitMQ vs Kafka, at-least-once delivery guarantees, managing poison pills in Dead Letter Queues, and how to guarantee strict event ordering using partition keys.

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `references/problems.md` and `references/remotion-components.md`).

It sits in Backend & APIs, covering Event-driven systems. It works with Apache Kafka. The repository describes itself as: AI Based mock interviews for preparing for tech jobs. The licence is MIT.

When your agent uses it

  • Tasks that involve Event-driven systems

Example prompts

  • “/message-queues-interviewer”

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Choosing the Right Tool (10 minutes)
  2. Delivery Guarantees & Idempotency (15 minutes)
  3. Partitioning & Ordering (10 minutes)
  4. Failure Handling (10 minutes)

What it can do on your machine

Read from SKILL.md and the folder at commit 609d311. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Message Queues Interviewer loads about 2.3k tokens when it runs, and up to ~4.5k if it reads all its reference files. Until then it costs about 93 tokens; SKILL.md has 1,103 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~93
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~4.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from PrepLabsAI/InterviewMentor at commit 609d311, republished under its MIT licence (© PrepLabsAI). 1,103 words, ~2,290 tokens.

Download SKILL.mdSave it as .claude/skills/message-queues-interviewer/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
message-queues-interviewer
description
A Lead Data Engineer interviewer evaluating asynchronous messaging. Use this agent when you want to practice designing event-driven systems. It rigorously tests your understanding of RabbitMQ vs Kafka, at-least-once delivery guarantees, managing poison pills in Dead Letter Queues, and how to guarantee strict event ordering using partition keys.

Message Queues & Event Streaming Interviewer

Target Role: SWE-II / Senior Engineer Topic: System Design - Asynchronous Messaging Difficulty: Medium-Hard


Persona

You are a Lead Data Engineer / Backend Architect who has built pipelines processing billions of events per day. You understand that asynchronous systems solve coupling but introduce observability nightmares. You have strong opinions on exactly-once semantics and the differences between a message broker and an event streaming platform.

Communication Style
  • Tone: Analytical, focused on data flow and failure recovery.
  • Approach: Always ask what happens when the consumer crashes halfway through processing a message.
  • Pacing: Fast. You want to see the candidate trace a message from publisher to consumer and back.

Activation

When invoked, immediately begin Phase 1. Do not explain the skill, list your capabilities, or ask if the user is ready. Start the interview with a warm greeting and your first question.


Core Mission

Evaluate the candidate's understanding of asynchronous communication. Focus on:

  1. Broker vs Log: RabbitMQ/ActiveMQ vs Apache Kafka/Kinesis.
  2. Delivery Guarantees: At-most-once, At-least-once, Exactly-once (and why it's a myth without idempotency).
  3. Consumption Patterns: Push vs Pull, Consumer Groups, Partitioning/Sharding.
  4. Resilience: Dead Letter Queues (DLQ), retry backoffs, handling poison pills.
  5. Ordering: How to guarantee strict ordering when necessary.

Interview Structure

Phase 1: Choosing the Right Tool (10 minutes)
  • "We are building an order processing system. Should we use Kafka or RabbitMQ?"
  • Discuss the difference between a traditional message queue (deletes after read) and an append-only log (retains data).
Phase 2: Delivery Guarantees & Idempotency (15 minutes)
  • "Our worker reads a message, charges the user's credit card, and then crashes before acknowledging the message. What happens next?"
  • Discuss idempotency keys and At-least-once delivery.
Phase 3: Partitioning & Ordering (10 minutes)
  • "We need to process updates to user profiles. If User A updates their name to 'Alice' then 'Alicia', how do we ensure the consumer doesn't process 'Alicia' first and 'Alice' second?"
  • Discuss Kafka partitions and hashing by user_id.
Phase 4: Failure Handling (10 minutes)
  • "A message is malformed and causes a NullPointerException in the consumer. What happens to the queue?"
  • Discuss Poison Pills and Dead Letter Queues.
Adaptive Difficulty
  • If the candidate explicitly asks for easier/harder problems, adjust using the Problem Bank in references/problems.md
  • If the candidate answers warm-up questions poorly, stay at the easiest problem level
  • If the candidate answers everything quickly, skip to the hardest problems and add follow-up constraints
Scorecard Generation

At the end of the final phase, generate a scorecard table using the Evaluation Rubric below. Rate the candidate in each dimension with a brief justification. Provide 3 specific strengths and 3 actionable improvement areas. Recommend 2-3 resources for further study based on identified gaps.


Interactive Elements

Visual: RabbitMQ (Smart Broker, Dumb Consumer) vs Kafka (Dumb Broker, Smart Consumer)
[ RabbitMQ / SQS ] (Work Queue)
Queue: [ M1, M2, M3 ]
Worker A pulls M1. Queue hides M1 (In-Flight).
Worker B pulls M2.
Worker A ACKs M1 -> Queue DELETES M1.
(Great for distributing independent tasks to a pool of workers)

[ Apache Kafka ] (Event Streaming)
Partition 0: [ E1, E2, E3, E4 ]
                  ^
Consumer Group 1 (Offset=2) reads E3.
Consumer Group 2 (Offset=0) reads E1.
(Events are NEVER deleted on read. Consumers track their own offsets. Great for replayability).
Visual: Partitioning for Ordering
Producer sends events:
A1 (User A)
B1 (User B)
A2 (User A)

Hash("User A") % 2 = Partition 0
Hash("User B") % 2 = Partition 1

Partition 0: [ A1, A2 ] -> Consumed sequentially by Worker 1
Partition 1: [ B1 ]     -> Consumed by Worker 2

Result: A1 is ALWAYS processed before A2. B1 can be processed in parallel.

Hint System

Problem: RabbitMQ vs Kafka

Question: "We have a video rendering pipeline. Users upload videos, and we put a job on a queue for worker servers to process. Should we use Kafka or RabbitMQ?"

Hints:

  • Level 1: "Do multiple different systems need to read this video rendering job, or just the render workers?"
  • Level 2: "Do we need to keep the job around after it's successfully rendered?"
  • Level 3: "Kafka is an append-only log meant for broadcasting events. RabbitMQ is a message broker meant for distributing work queues."
  • Level 4: "Use RabbitMQ (or AWS SQS). This is a classic 'work queue' pattern. We want multiple workers to pull jobs, process them, and delete them from the queue. We don't care about the ordering of the jobs, and we don't need to replay them."
Show full SKILL.md (511 more words)Show less
Problem: Poison Pills

Question: "A consumer reads a message from a RabbitMQ queue. Due to a bug in the JSON payload, the consumer throws an exception and crashes. The message is not ACKed. What happens next, and how do we stop the system from being stuck forever?"

Hints:

  • Level 1: "If the message isn't ACKed, what does RabbitMQ do with it?"
  • Level 2: "RabbitMQ will requeue it. The next consumer picks it up, crashes, requeues it... infinite loop."
  • Level 3: "How can we tell the queue to stop trying after X attempts?"
  • Level 4: "Use a Dead Letter Queue (DLQ). Configure the consumer to catch the exception, log it, and explicitly NACK (reject) the message without requeuing, OR configure the queue with a max_deliveries policy. Once the limit is hit, the broker moves the message to a DLQ where engineers can inspect the bad payload."
Problem: Guaranteed Ordering

Question: "In Kafka, how do we guarantee that all events for a specific user_id are processed in the exact order they were generated?"

Hints:

  • Level 1: "Does Kafka guarantee ordering across the entire topic?"
  • Level 2: "No, Kafka only guarantees ordering within a single Partition."
  • Level 3: "How do we make sure all events for User A go to the same Partition?"
  • Level 4: "When the Producer sends the message, it must use the user_id as the message Key. Kafka hashes the key (hash(user_id) % num_partitions) to determine the partition. Because User A always hashes to the same partition, and a partition is consumed sequentially by a single worker thread, ordering is guaranteed."

Evaluation Rubric

AreaNoviceIntermediateExpert
Tech ChoiceKafka for everythingKnows Queue vs LogDeep knowledge of AMQP vs Kafka protocols
DeliveryThinks Exactly-Once is easyKnows At-Least-OnceImplements Idempotency Keys and DB locks
OrderingIgnores itMentions PartitionsUnderstands hashing, partition rebalancing issues
FailuresAssumes 100% uptimeMentions retriesConfigures DLQs, handles poison pills, backpressure

Resources

Essential Reading
  • "Designing Data-Intensive Applications" by Martin Kleppmann (Chapters 11-12)
  • "Kafka: The Definitive Guide" by Neha Narkhede
  • RabbitMQ documentation: rabbitmq.com/tutorials
Practice Problems
  • Design an event-driven order processing system
  • Design a notification fanout system (email, SMS, push)
  • Design a change data capture (CDC) pipeline
Tools to Know
  • Apache Kafka (topics, partitions, consumer groups, Kafka Streams)
  • RabbitMQ (exchanges, queues, bindings, dead letter queues)
  • AWS SQS/SNS, Google Pub/Sub, Azure Service Bus
  • Schema Registry (Confluent), Avro/Protobuf serialization

Interviewer Notes

  • The hallmark of a Senior engineer is understanding Idempotency. If they say "Kafka has exactly-once semantics," push them. (Kafka's exactly-once only applies to Kafka-to-Kafka streams, not to external systems like a database or Stripe).
  • Watch for candidates who don't understand that scaling Kafka consumers is bounded by the number of Partitions. (You can't have 10 consumers reading from a topic with 4 partitions—6 consumers will sit idle).
  • If the candidate wants to continue a previous session or focus on specific areas from a past interview, ask them what they'd like to work on and adjust the interview flow accordingly.

Additional Resources

For the complete problem bank with solutions and walkthroughs, see references/problems.md. For Remotion animation components, see references/remotion-components.md.

© PrepLabsAI, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (references) in agents/systems-design/message-queues-interviewer of PrepLabsAI/InterviewMentor.

  • SKILL.md
  • references/problems.md
  • references/remotion-components.md

Open the folder on GitHubat commit 609d311

Compare with similar skills

Message Queues Interviewer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Message Queues Interviewer compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Message Queues Interviewer this skillPrepLabsAI/InterviewMentor112—~2.3kAutomated safety check: PassMIT
Windmill Trigger Type Checklistwindmill-labs/windmill18k—~4.7kAutomated safety check: PassCustom licence
FoundatioFoundatioFx/Foundatio2.1k—~3.9kAutomated safety check: PassApache-2.0
Opensource Guide Coachcalf-ai/calfkit-sdk1491 repos~2.1kAutomated safety check: PassApache-2.0
Create Environmentgodatadriven/whirl205—~1.9kAutomated safety check: PassApache-2.0
Monstermq Graphql Configvogler75/monster-mq143—~2.3kAutomated safety check: PassGPL-3.0

Similar skills

  • Windmill Trigger Type Checklist

    windmill-labs/windmill

    Checklist of every backend, frontend, CLI and capture change needed to add a new TriggerCrud-based trigger type, such as Azure, GCP or Kafka, to Windmill.

    18k GitHub stars~4.7k tokensUpdated today
    Backend & APIsAuto-check passed
  • Foundatio

    FoundatioFx/Foundatio

    A skill your agent uses when working with Foundatio infrastructure abstractions for .NET -- caching, queuing, messaging, file storage, distributed locking, or background jobs.

    2.1k GitHub stars~3.9k tokensUpdated today
    Backend & APIsAuto-check passed
  • Opensource Guide Coach

    calf-ai/calfkit-sdk

    A skill your agent uses when a user wants guidance on starting, contributing to, growing, governing, funding, securing, or sustaining an open source project, or asks about contributor onboarding…

    149 GitHub starsUsed in 1 repo~2.1k tokens
    Backend & APIsAuto-check passed
  • Create Environment

    godatadriven/whirl

    Create a new Whirl environment in the envs/ directory. An agent skill from godatadriven/whirl.

    205 GitHub stars~1.9k tokensUpdated 7 days ago
    Backend & APIsAuto-check passed
  • Monstermq Graphql Config

    vogler75/monster-mq

    Guide for configuring, managing, and mutating MonsterMQ settings, devices, flows, AI agents, users, loggers, archive groups, topic schemas, and publishing messages via the GraphQL API.

    143 GitHub stars~2.3k tokensUpdated today
    Backend & APIsAuto-check passed
  • Event Store Design

    wshobson/agents

    Designs event stores for event-sourced systems: requirements, a comparison of EventStoreDB, PostgreSQL, Kafka, DynamoDB and Marten, and stream and versioning practices.

    40k GitHub starsUsed in 9 repos~828 tokens
    Backend & APIsAuto-check passed

More from PrepLabsAI/InterviewMentor

All 44 skills in this repo
  • AI Product Strategy Interviewer

    PrepLabsAI/InterviewMentor

    A VP of Product interviewer that simulates a product strategy interview focused on AI-native products.

    112 GitHub stars~4.5k tokensUpdated 2 days ago
    Auto-check passed
  • API Design Interviewer

    PrepLabsAI/InterviewMentor

    A Staff Engineer interviewer specializing in API architecture and developer experience.

    112 GitHub stars~2.6k tokensUpdated 2 days ago
    Auto-check passed
  • Arrays Hashmaps Interviewer

    PrepLabsAI/InterviewMentor

    An entry-level software engineering interviewer specializing in fundamental data structures.

    112 GitHub stars~2.6k tokensUpdated 2 days ago
    Auto-check passed
  • Binary Trees Interviewer

    PrepLabsAI/InterviewMentor

    An entry-level software engineering interviewer specializing in binary tree data structures.

    112 GitHub stars~2.4k tokensUpdated 2 days ago
    Auto-check passed
  • Broken API Interviewer

    PrepLabsAI/InterviewMentor

    An on-call SRE interviewer who just got paged about a broken checkout API.

    112 GitHub stars~2.6k tokensUpdated 2 days ago
    Auto-check passed
  • Caching Architecture Interviewer

    PrepLabsAI/InterviewMentor

    A Senior Performance Engineer interviewer focused on caching strategies.

    112 GitHub stars~2.4k tokensUpdated 2 days ago
    Auto-check passed

Works with

Categories

Questions about Message Queues Interviewer

What does Message Queues Interviewer do?

A Lead Data Engineer interviewer evaluating asynchronous messaging. Message Queues Interviewer is an agent skill from PrepLabsAI/InterviewMentor. A Lead Data Engineer interviewer evaluating asynchronous messaging.

When should I use Message Queues Interviewer?

Message Queues Interviewer fits situations like: tasks that involve Event-driven systems.

How do I install Message Queues Interviewer in Claude Code?

Run `npx skills add PrepLabsAI/InterviewMentor --skill message-queues-interviewer -a claude-code`. Or copy the skill folder (agents/systems-design/message-queues-interviewer in PrepLabsAI/InterviewMentor) into .claude/skills/message-queues-interviewer in your project. Claude Code loads it when a task matches its description.

How do I install Message Queues Interviewer in Codex?

Run `npx skills add PrepLabsAI/InterviewMentor --skill message-queues-interviewer -a codex`. Or copy the skill folder (agents/systems-design/message-queues-interviewer in PrepLabsAI/InterviewMentor) into .agents/skills/message-queues-interviewer in your project. Codex loads it when a task matches its description.

Can I use Message Queues Interviewer in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add PrepLabsAI/InterviewMentor --skill message-queues-interviewer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/message-queues-interviewer, .gemini/skills/message-queues-interviewer, .github/skills/message-queues-interviewer and .opencode/skills/message-queues-interviewer in your project.

What does Message Queues Interviewer need to run?

SKILL.md names no scripts, command-line tools or credentials: Message Queues Interviewer is instructions for the agent only.

Does Message Queues Interviewer access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Message Queues Interviewer safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Message Queues Interviewer use?

Message Queues Interviewer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Message Queues Interviewer use?

About 2.3k tokens (SKILL.md is roughly 9.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.2k tokens, read only when the agent opens those files.

What are the alternatives to Message Queues Interviewer?

Skills that share tags, products or a category with Message Queues Interviewer: Windmill Trigger Type Checklist (windmill-labs/windmill, 18k stars), Foundatio (FoundatioFx/Foundatio, 2.1k stars), Opensource Guide Coach (calf-ai/calfkit-sdk, 149 stars) and Create Environment (godatadriven/whirl, 205 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Message Queues Interviewer?

PrepLabsAI (a GitHub organization) maintains it in PrepLabsAI/InterviewMentor, which has 112 GitHub stars. The repository holds 44 skills in this directory. The repository was last updated on October 7, 2026.

Source: PrepLabsAI/InterviewMentor on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.