There's premature optimization and there's mature optimization...
Searching with something other than linear scan when searches happen often over meaningfully large search spaces is a mature optimization.
Avoiding network requests by using a cache is a mature optimization (with all of the pitfalls that come with caching)