I am 57, developer, tried managing 20 years ago and switched back after one (successful but unpleasant) year. I am talking about real software (10M+ in LOCs as a minimum) and for whatever reason (I do not have an explanation) it takes time for an engineer to become really productive in this kind of environment - in all serious companies I ever worked/contracted for most heavy heaters were 40+ and I remember only one below 35.
This is a pretty good advice: yes it is a pretty good idea to (re)enter job market as a contractor, yes head-hunters do provide value to both job hunters and employers.
About ph.d. working as software developer:
(a) I meet two and both were hardworking but none of them could be considered a good developer. Over years one became barely ok, another left the industry. I suspect my experience is not unique.
(b) try old tech - Intel, IBM, wall-street - again starting as contractor will ease the entrance.
I can attest to that based on almost 30 years of my own career in software development. The only and very slight problem is that management does not understand this matter.
I saw 10s of engineers who made this switch. In some industries (telecom equipment, storage) it is very common. I do not understand the question about language - I suppose you can program in C and it is still bread and butter in many cases.
Try to get contract job first. In the past I had good experience with some guys that now are working for http://www.symphonyteleca.com/