Design an in-memory database to handle transactions
Design an in-memory database system that can efficiently handle transactions. Consider aspects such as data storage, transaction management, and concurrency control.
Asked at:
Coinbase
Uber
Question Timeline
See when this question was last asked and where, including any notes left by other candidates.
Late September, 2025
Uber
Staff
# get(key: str) gets the value associated with key, or raise error if key doesn’t exist # set(key: str, val: obj) sets the value associated with key. Values can be null # unset(key: str) removes the value associated with the key # begin(): start a new transaction block. # abort(): blow away the changes from the transaction block # commit(): persist the changes
Mid June, 2025
Coinbase
Senior
Late January, 2025
Coinbase
Staff
Your account is free and you can post anonymously if you choose.