This one exposed how much my mental model was built around RTB and open auction flows.
Start by clarifying the scope: direct sold demand means no real-time bidding, so the DSP focuses on guaranteed delivery and accurate tracking. Walk through the order lifecycle from ingestion to reporting, highlighting the config types (order, line item, creative, targeting) and how they map to tracking events. Emphasize data modeling choices and trade-offs for scalability and consistency.
Pro tip: Mention that direct sold deals often require reconciliation with the ad server and that idempotency and deduplication are critical to avoid overcounting impressions. Also, note that Netflix's ad tier likely uses a server-side ad insertion (SSAI) approach, so tracking must handle both client and server events.
Confirm that 'order' refers to a direct sold campaign with guaranteed impressions, and that tracking includes impression, click, and conversion events. State assumptions about the ad serving environment (e.g., SSAI, client-side).
Explain the config types: Order (advertiser, budget, flight dates), Line Item (targeting, priority, guaranteed impressions), Creative (assets, duration), and Targeting (audience, geo, content). Show how they relate in a hierarchy.
Detail the steps: order ingestion, config validation, ad decisioning (matching line items to avails), ad delivery, and event tracking (impression, click, quartile). Highlight where tracking pixels or beacons are fired.
Describe how tracking events are modeled (e.g., fact tables for events, dimension tables for configs) and stored (e.g., Kafka for streaming, data lake for batch). Mention partitioning and indexing for query performance.
Talk about trade-offs: consistency vs. latency, exactly-once vs. at-least-once processing, and how to handle discrepancies between DSP and ad server counts. Mention reconciliation and idempotency.
AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.