The interview included several independent coding problems:
-
Implement an in-memory key-value store. Start with basic put/get operations, then extend it with per-key expiration using TTL, and finally support queries for the value of a key at any past timestamp.
-
Implement an expression evaluator with variable assignment and references. Statements may include forms such as
A = 5
,
B = A
,
C = B - 10
, and simple expressions using
+
and
-
. Resolve dependencies and compute final values.
-
Parse a text file containing matrices. In the basic version, return the value at a requested row and column from a single matrix. In the extended version, the file contains multiple matrices, each preceded by a string key; return a mapping from each key to the value at the requested coordinates. Discuss how to process the file in a streaming way instead of loading the entire file into memory.