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
Experiences
Practice
Mock InterviewsTimed interview simulations with feedbackCoaching1:1 coaching with people at your target companiesSuccess 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
Build my plan
Artifact Generation Orchestration
00:00
5 left

Artifact Generation Orchestration

HardPython

Problem

Build an "Artifact Generation" client that ingests Orders from a queue, orchestrates the production of Metadata and Assets (with AssetDetails) through a provided SDK against an unreliable testserver, and submits each Order as a ShippableOrder or FailedOrder following the orchestration rules (take before processing, assets before metadata, no metadata if assets failed).

Asked in the Round 1 (LLD, CoderPad) stage. Starter client passes ~1%; improve it to maximize score within the testserver's 1-minute run; 1% per correct order, -1.5% per incorrect/errored order.

Implement generate_artifacts(orders, sdk_plan). Each order has order_id, assets, and optional asset_details; sdk_plan describes whether taking, each asset, and metadata succeed. Return one result per order.

Constraints

  • 1 <= len(orders) <= 10^4
  • 0 <= len(order['assets']) <= 300
  • Each order_id and asset_id is unique within its input
  • Each asset contains an asset_id and optional details object
  • An order is shippable only when taking, every asset, and metadata succeed

Function Signature

def generate_artifacts(orders, sdk_plan):
Interviewer

Your question is Artifact Generation Orchestration. 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.
CodePython 3
Sign up free to run your codeLog inLn 2
Run your code to see test output here.