I think part of having the academic background is that it gives you the confidence to be casual about certain problems. When Google first demonstrated search suggestions, someone I know who is definitely a good programmer was very amazed that that it was possible to make something like that run fast enough, across the internet, no less.
But, if you have learned a little about indexing and data structures, you'll think "Yeah, you can probably generate k suggestions in something like O(k log n), and you can probably predict the next few characters that will be typed in, so that a lot of data could be cached on the client. This doesn't seem impossible", even if you can't come up with the exact algorithm right then and there.
That means you can design something like suggest or instant without getting stuck on whether it would run fast enough.
Or, conversely if the problem calls for solving an NP-hard problem, then you should get stuck on whether it can run fast enough and whether there is some way to approximate the answer instead. (Did anyone else check to see if you could get Google Maps to solve Traveling Salesman when they first added intermediate destinations?)