Design a Camera Health Dashboard

Quick Overview

Explore event ingestion and expiration-state design for a dashboard that tracks one million camera heartbeats in a rolling 60-second window.

Design a Camera Health Dashboard

Company: Verkada

Role: Software Engineer

Category: System Design

Difficulty: medium

Interview Round: Technical Screen

# Design a Camera Health Dashboard Design a system that displays how many of one million cameras are healthy. Each camera sends a signal every 20 seconds and counts as healthy when at least one signal has arrived during the most recent 60 seconds. ### Constraints & Assumptions - Signals may be duplicated, delayed, or arrive out of order. - The displayed count should have a stated freshness and consistency contract. - A camera changes state only when its latest accepted signal crosses the 60-second boundary. ### Clarifying Questions to Ask - Is health based on server receive time or device event time? - How fresh must the dashboard count be? - Must users also drill down to individual unhealthy cameras? ```hint Model state transitions Counting every signal is less important than detecting when a camera moves between healthy and unhealthy. ``` ### What a Strong Answer Covers - Ingestion, identity, deduplication, and latest-signal state. - Efficient expiration scheduling rather than full scans every second. - Atomic or reconcilable updates to the aggregate count. - Dashboard delivery, clock handling, failure recovery, and monitoring. ### Follow-up Questions 1. How would regional outages be distinguished from camera failures? 2. How would you support different heartbeat intervals per camera model?

Overview: Explore event ingestion and expiration-state design for a dashboard that tracks one million camera heartbeats in a rolling 60-second window.

|Home/System Design/Verkada
Verkada logo
Verkada
Aug 14, 2026
mediumSoftware EngineerTechnical ScreenSystem Design
1
0

Design a Camera Health Dashboard

Design a system that displays how many of one million cameras are healthy. Each camera sends a signal every 20 seconds and counts as healthy when at least one signal has arrived during the most recent 60 seconds.

Constraints & Assumptions

  • Signals may be duplicated, delayed, or arrive out of order.
  • The displayed count should have a stated freshness and consistency contract.
  • A camera changes state only when its latest accepted signal crosses the 60-second boundary.

Clarifying Questions to Ask Guidance

  • Is health based on server receive time or device event time?
  • How fresh must the dashboard count be?
  • Must users also drill down to individual unhealthy cameras?

What a Strong Answer Covers Guidance

  • Ingestion, identity, deduplication, and latest-signal state.
  • Efficient expiration scheduling rather than full scans every second.
  • Atomic or reconcilable updates to the aggregate count.
  • Dashboard delivery, clock handling, failure recovery, and monitoring.

Follow-up Questions Guidance

  1. How would regional outages be distinguished from camera failures?
  2. How would you support different heartbeat intervals per camera model?

Submit Your Answer to Earn 20XP

Sign in to leave a comment

Loading comments...