I'm at a place of potential career change. Among the options is to stay in software development but move into commercial and enterprise systems work.
My past has been mostly working with scientists and engineers in academic and research organizations. It's cool to be on the cutting edge of discovery, but coolness doesn't help buy furniture, build long term savings, buy solar panels, boost the local economy, or fund friends' start up ideas. The pay can be decent by general population standards, but is around 2/3 to 1/2 what it could be at a commercial firm.
Besides the money, there's the nature of the work. Academic groups often don't have good software development methodologies in place. I'm lucky to have svn in my current project. Many developers are students with immature approaches to design, who have glamour stars in their eyes for every new fad technique. Many high IQ people with expertise in one area who try to develop software apps going beyond just the math and plotting they really need, tend to over-design everything. One recent science data analysis project written by several people none of whom had a holist view of the project, involved such a tangle of badly organized layers of abstraction for things that really don't need any abstracting, with overuse of... oh never mind, this isn't the place to go ranting about all that!
In contrast, all commercial projects are well-managed with proper tools, keen judgement, well-tuned regression and unit testing, and efficient methodologies. Right? Right? (laughter follows...) Well alright, the grass isn't actually greener anywhere, but I accept imperfection. I do get more of a thrill out of making a good product that solves real world problems, while making a good salary with a real potential of bonuses or other rewards for mission crititcal work done under budget and in time.
Another big advantage of commercial and enterprise IT work is that one can live in or near just about any city, whereas science swdev work strongly clusters to where science is done: university towns and near research centers like NIH, NASA, Fermilab, NRAO etc.
While I have >20 yrs of experience in software, I have little know-how of databases (beyond the toy examples given in mysql tutorials), networks (beyond setting up a home LAN), financial stuff, point-of-sale stuff, BI stuff, or anything remotely enterprisey. I think BI might be interesting, but I don't know much more than how to spell it.
So what is the gap (or canyon) I must bridge to make this change? What are effective strategies for making this shift? Are certain types of organizations, or certain job roles, better suited for this switch? What culture shock can I expect and how to deal with it, especially regarding what to say at a job interview? I can find out which specific skills are needed from job descriptions; what I'm after is all the other stuff, the unwritten and the hard to define things to consider.
Or am I a fool to even be considering all this?