Those who know me know that I work on stuff that is not readily applied. Or perhaps not applied at all. Certainly my current state of knowledge does seem like it would be useful to a company. Many theorists, at one time in their lives, were excellent programmers. (For example, Lance helped write a program that played Othello see here and an email system see here.) I have no such stories. I took ugrad compiler design and ugrad Operating Systems as a grad student (not at the same time!).
I was taking Operating systems and TAing Aut theory. Dave (I forget his last name) was taking Aut theory and TAing Operating systems. We both got B's which you can regard as either very good or very bad planning.
Anyway, I never was a programmer. Could I have been a good programmer? Irrelevant! Would real world experience have helped my research? Very hard to know, but prob yes.
Four times I have worked for a real world company of some sort (never for more than a two months) and I always wondered Gee, I don't know anything they would care about. But in all four cases they seem to like what I did for them. Why?
For two of the four I signed an NDA (Non Disclosure Agreement) so I will need to talk in general terms.
1) I was hired to find out which of two ways to schedule jobs was better. I did some easy math, did some easy simulations, found out that it didn't matter much. I think they knew that, but having someone with a PhD tell them comforted them.
2) I was hired to find out why the Operating System was so slow. I had already had the course in OS but it didn't help at all. I did some easy math that identified some of the problems, but told them that they had a more overwhelming problem and what it was. I think they sort-of knew this, but I clarified it for them. AFTER the course I took a course in queuing theory since the job peaked my interest. If I had the course before the job it would not have helped.
3) I was hired to do some statistical work. I wrote a report detailing the methods that I used, and then I used them. Everything I did was elementary statistics. The techniques were standard. But they really appreciated having it all laid out for them. Originality was not needed, just using known stuff.
4) A company working on SAT Solvers- I helped clear up some misconceptions they had.
I suspect that 3/4 of the people reading this blog could do 3/4 of the consulting I've done. What I learned from these experiences is
(1) just knowing math in a general sense may be all they need,
(2) you can pick up what you need,
(3) sometimes they just need someone with a degree to tell them what they already know.
In all four cases I was intrigued by having to solve a REAL problem as opposed to a CLEAN math problem.