Dataford
Interview QuestionsInterview GuidesExperiencesCoaching
New
Pricing
Get started
Dataford
Popular roles
Software EngineerData AnalystData ScientistData EngineerBusiness AnalystAI EngineerMachine Learning EngineerProduct Manager
Browse
Browse All RolesEvery role hub, from analyst to MLBrowse All CompaniesCompany-specific interview loopsAll Interview GuidesThe full guide library
Top questions by role
Software EngineerData AnalystData ScientistData EngineerBusiness AnalystAI EngineerMachine Learning EngineerProduct Manager
Top questions by skill
SQLPythonStatisticsMachine LearningA/B TestingSystem DesignGenerative AIProduct SenseMetricsBehavioral
Browse all questions →Try a mock interview
ExperiencesCoaching
New
Practice
Mock InterviewsTimed interview simulations with feedbackSuccess PathYour 6-week structured planModulesCurated lessons by topicWebinarsTalks from ex-Big Tech data leadsPlaygroundA free-form scratch editor
Learn
BlogInterview strategy and career adviceTech Job Market ReportHiring trends across data and AI rolesFor UniversitiesDataford for career centersAbout DatafordWho we are and how we build
Pricing
Get started
WebSocket Real-Time Update Component
00:00
5 left

WebSocket Real-Time Update Component

HardPython

Problem

Build a component that handles real-time updates from a WebSocket connection.

Implement reconcile_updates(events) for sequenced snapshot and update messages. Buffer updates that arrive before a missing sequence, apply them once the gap closes, ignore stale or duplicate updates, and let newer snapshots replace local state. Return the final state and the sequence numbers of applied updates.

Input is a list of event dictionaries. Each snapshot has type, seq, and state; each update has type, seq, key, and value. The output is a dictionary with state and applied fields.

Constraints

  • 1 <= events.length <= 1000
  • Each event has a nonnegative integer seq
  • Snapshot sequence numbers identify the last sequence included in that snapshot
  • Update sequence numbers are unique in the source stream, though duplicates may appear in the input
  • At least one snapshot is present
  • Snapshot state contains string keys and JSON-compatible values

Function Signature

def reconcile_updates(events):
Interviewer

Your question is WebSocket Real-Time Update Component. Start with the requirements in the Question tab.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.
Code
Sign up free to run your codeLog inLn 2
Run your code to see test output here.