1. Cache invalidation
  2. Naming
  3. Off-by-one errors