Implement a simplified multi-level banking system
CircleSoftware Engineer · Online AssessmentLast updated
Implement a simplified multi-level banking system evaluates algorithm design, data structures, correctness, complexity, edge cases, and implementation details in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
Implement a simplified banking system with multi-level requirements. All operations accept a stringified timestamp in milliseconds; timestamps are guaranteed to be unique and provided in strictly increasing order. You have access to data from the current and all previous levels. Level 1: Support creating new accounts, depositing money into accounts, and transferring money between two accounts. Level 2: Support ranking accounts based on the total value of outgoing transactions. Level 3: Allow scheduling payments and checking the status of scheduled payments. Level 4: Support merging two accounts while retaining both accounts' balances and transaction histories. You may proceed to the next level only after all tests for the current level pass.
Solution walkthrough is for members
Get the full walkthrough with reference code and complexity analysis, plus Kitty Coach at 300 messages a day. Hints, the code runner and community answers stay free.