I've previously worked in industry as a (primarily scientific) programmer, and these days I'm employed as a research mathematician (math and physics undergrad, math masters and phd). Fwiw, here's my insight.
You haven't given us any information about the areas of mathematics you are most familiar with, or your current level of programming skill. This information would help.
There are a few things you should be aware of. First off, if you aren't already a great programmer, you probably won't ever be. I say this because you've had the opportunity to explore it as much as you wanted, but have been more interested in other things. There is nothing wrong with this, by the way, it's just an observation to set some realistic goals.
Secondly, programming well, particularly on large systems, is probably harder than you expect. Complex systems are, well, complex, and dealing with them well involves a skill set you probably haven't developed as an academic. There are problems in practical work of this nature that are every bit as difficult as anything you've thought about in mathematics, and it's probably worth keeping that in mind. Mathematicians often make poor programmers at first because they can brute force and clever their way into a bad program design that works (for some value of works). If you are clever and good at keeping track of things you can make bad designs fly for a while. Doesn't mean it's a good idea. Research code usually doesn't matter very much, and even if it does it usually doesn't have to last and be extended. So these sins cause little damage in academia but they are poison on a big system. The upside is that mathematicians are usually good problem solvers and good at abstraction, so you can learn to do this well.
Finally, be aware that a lot of industry positions don't even want CS Ph.d's, let along your math Ph.d. They have their reasons, and they are mostly right. So right off the top realize that you aren't looking at most jobs (and if you were, you couldn't compete well with the 18 year olds who've been coding their asses off since 14 anyway).
Have a look at your skill set and interests, and look at the industry and/or government lab jobs that overlap. Plenty of people could use a mathematician with reasonable coding chops, (or a coder with reasonable math chops) but you'll probably have to demonstrate a bit of experience and skill. Particularly now, when academic refugees will be looking for work, and expecting that their degrees transfer in all sorts of ways. Off the top of my head I can think of the following areas that might be of interest: data mining, signal processing (e.g. medical/industrial imaging) , network design & MPI (i.e. high performance computing), robotics (control theory), operations research (industry/military/govt), modeling (e.g. dynamical systems), statistics of all flavors, quantitative analyis (finance and others), fluids & geophysics (oil & natural gas),etc. etc.
Here we run the gamut from harmonic analysis, topology (networks), discrete maths, statistics, PDE/ODE systems, etc. etc.
There's a lot of stuff out there, and I haven't even begun to cover it all. The fact that you don't already know this though is bit worrisome (just judging by your post, what else can I do?), suggesting that you are now just getting your feet wet. In that case, my first piece of advice is to do two things. First, start working your way through this book link text. It will be fairly quick and natural to your background. You will have to learn a lot of practical stuff that isn't presented in that book, but that's easier to learn. Secondly (and probably more importantly), think about all of these areas, and as soon as you can get involved with a related programming effort. These days you are spoiled for choice, many of the areas I mention above have large, significant projects being collaboratively pursued on the web. You'll learn a lot from interacting with the programmers, but you can bring your skill set to bear also. Working with a largish system this way is probably the closest you'll get to industry experience from where you are sitting, and it will give real credibility to your resume in industry if you can show a few patches etc. No, its not the same thing as actual industry experience, but it's closer than academia.
I should note quickly (this is already way too long) that many of the most promising jobs aren't going to have you just slinging code every day. Learning the arcana of .net or java runtimes, template voodoo in c++, etc. probably isn't worth the time for you. Get good at an expressive language or two that are (with any luck) actually used in the areas your most interested in heading to (hello scipy/numpy and friends). You could fit well doing algorithm development for a place that's got 10 better software people who will actually take your work to product. But you've got to be able to talk to them, and deliver stuff that's practical. The sweet spot for someone like you is probably as the point person on algorithms and/or implementing stuff from papers, with a larger group doing much of the heavy lifting, code wise.
Anyway, just a few thoughts. Hope that helps. Good luck, the academic market is pretty
brutal this year.