I have a couple of times found myself inventing solutions to problems I had in the business, only to see them appear as cutting edge open source at the same or a little later (ie Python deployment tools)
I have always assumed one needs to be working in an area, pushing hard and then finding that "what no-one has an answer to this!?" moment.
I would have trouble believing I could find a solution at the cutting edge, and find the people who needed it, without being knee-deep myself.
I read the usual CS papers, plus lots of PhDs thesis. I follow the references in the bibliographies like crazy, and I also look up the writer's on the 'Net and see what other stuff they've done/written.
It feels like detective work, actually: the most-cited papers are frequently not the best. There's tons of researchers working in obscurity but who nevertheless have useful results.
I see my role as taking advances from research and bringing them into practical use.
What are some examples of the best research that is obscure?
In general, stack languages are great for graphics in both 2 dimensions (PostScript) and 3 dimensions (GML)[1].
[0] http://digisrv-1.biblio.etc.tu-bs.de:8080/docportal/receive/...
[1] http://en.wikipedia.org/wiki/Generative_Modelling_Language
Then, I look around for companies that need a problem I already have a solution for solved, and I pitch my solution to them. Sometimes, I'll take jobs to solve problems I haven't considered before, but that's rarer.
If they like my solution, I set up a contract to implement it for them.
I'd say about 50% of the time I pitch a pre-existing solution, I get work. What's great is I'm essentially picking my own work and I get paid well (because the problems are hard).
The downside is you pretty much always have to be coming up with new solutions to things, and stay very current on technology.
I'm generally into something long before the "early adopters" get there, and I'm gone by the time it hits the mainstream. For example, I was working on a Google Spanner-like database while Google was doing the same.
At the time, no-one thought something like that was possible (outside of Google -- and they didn't tell anyone). I implemented different parts of the solution with three different clients over a two year period, none of whom hired me to create something like Google Spanner, but all of whom needed one part of the whole package solved.