4 ms·
yeah, not sure what is too hard to understand about that. Perhaps it depends on the context but I highly doubt you can go wrong by saying a cache should be adde
by jeron 4y ago
yeah, not sure what is too hard to understand about that. Perhaps it depends on the context but I highly doubt you can go wrong by saying a cache should be added to reduce latency.
- N_A_T_E 4y agoOnly two hard things in computer science, blah blah.
- lhorie 4y agoThe way it typically fall aparts for my candidates is I ask about optimizations, they say X could be cached, then I ask about cache invalidation and lo and behold, it didn't even occur to them that the cache needs to be invalidated at some point, so they blurt something along the lines of doing the entire expensive operation again and checking it against the cache, or something similarly nonsensical. More common than I'd like to admit.
- ThalesX 4y ago> then I ask about cache invalidation No doubt with a follow up on how the variable would be best named.
- old_hat 4y agoThat's obvious. It's called "x".
- Apocryphon 4y agoYou mean x1
- nonethewiser 4y agoIsn’t it better to know you can add a cache to reduce latency, even if you’re not sure how to invalidate it?
- lhorie 4y agoThe problem isn't demonstrating understanding of what a cache does conceptually, in fact any SWE worth their salt ought to be able to explain caching. The problem is if the candidate's decision to add a cache causes the system behavior to become obviously incorrect upon an ounce of further inspection, because this demonstrates a lack of foresight about local maxima vs global maxima, and systems are all about trade-offs at the macro scale. Caching is an easy thing to blurt out in an interview setting, but not all problem spaces benefit from caching and caching often isn't the only available solution, or the most ideal one.
- Misdicorl 4y agoI started typing no, but then.... I honestly can't decide which would be worse: a developer who literally doesn't know what a cache is or one who installs caches with bad invalidation policies.
- mgraczyk 4y agoIn practice, "latency" is too vague to be what matters. In many systems it's the worst 1% or 0.1% of latencies that matter. Adding a cache will improve latency in those cases only in some situations. Usually adding caches helps by reducing load on the service behind the cache.