-
- Consolidated my Amazon LP document into the general questions they might ask you, since that has a superset of all the general categories for behavioral interview questions.
- Conf championships! Gonna be an all-red superbowl, niners v chiefs.
- Disposed/packed more kitchen/bathroom supplies.
- Practice problems.
- Drew a system design diagram for autotest on the whiteboard, now that I’ve gotten much better at scalable system design.
- Most of the primary nodes are present, there’s just not much redundancy. Lots of single points of failure.
- Consistency > availability (although it doesn’t really matter at low scale, mostly 1-1 nodes and a couple requests / second).
- Task manager / gateway = dispatch server. Did have a heartbeat for all downstream nodes, although it was http. Did not really serve as a heavy-burden load balancer, most test cells had a single control node – in use, or not in use.
- Master-slave for RDB should have been in place years ago so that vehicle/component teams could query their data at will.
- All the usual frills. Analytics, resource monitor, logs, app monitor, hydra/sync for parallel and rpc sync.
- Redis cache for control node. Faster read, metadata, hydra state, etc.
- Took picture on phone.
- Remember that every db (disk or mem, rdb or nosql, etc) has locks for write.
- Lowlevel, it’s a message queue with an event loop. It’s called the write ahead log, WAL.
- Timeouts, so that one can’t deadlock a row.
- Pessimistic = true, natural lock (“i’m using this”). Optimistic = check if change when writing back, like VCS merge conflicts. Favors smaller faster changes.
- Behavioral.
- Wrote a couple examples for each of the 4 LPs Amazon said they’d check during the senior interview.
- Plugged my ehd into the ubuntu laptop for the first time. It could mount the FAT partition but not the ExFAT, obviously for NT.
- FAT = file allocation table.
- Ansible inventory. I had forgotten this word the other day. Playbooks run, inventory is the list of endpoint nodes.
- Went back over sx-setuptools and autotest.
- Watched countdown. Ending sucked, and was illogical, but overall the movie was better than I thought it would be.
- Europix uses a ton of mem. Was basically 4GB of ram and 4GB of swap, yikes. Even compared to other streaming sites, for all (movies, tv, and sports), which are about half that.
- If you have n + (n-1) + (n-2) + … (1), instead of n * (n-1) * (n-2) * … (1), which is factorial, it’s called the triangular number or the binomial coefficient. It equals (n^2 + n)/2, but you can just take the highest order term and approximate it as n^2. It’s much lower in complexity than n! factorial.