views:

894

answers:

5

I've always loved programming, but the tedium gets old. Design and abstractions are what really float my programmatic boat the most. I'd much rather design and endlessly refactor a beautiful API than actually finish and use it, for example.

Five months ago I left a position as Lead Developer at a dotcom, started a non-tech business, but am pulling the plug and going to re-enter the rat race. Increasingly as I've gotten older I've found myself more interested in business processes, managing business operations, and analyzing data.

I really don't want to start brushing up for the language/platform pissing match that is a programming interview; I'd much rather rely on my innate aptitudes and eye toward maximizing efficiency of design and process.

What's a position title where these analytical, entrepreneurial skills transfer well to? Some sort of Analyst I imagine? Anyone been in my position and made a transition away from writing code?

+1  A: 

Looks like you want to be an Architecture Astronauts. For that I would recommend short consulting gigs.

zodeus
A little cynical are we?
Chuck Conway
Too bad it's all criticism. Finding problems is the easy part. Solving problems is more difficult. What advice does Joel have to offer, to make use of Architecture Astronauts?
Chris
My experience with Architecture Astronauts is that you should get them to design a solution, and then remove them from the project (either to another project that needs architecture, or else fire them). Otherwise they'll keep redesigning the architecture over and over. That's what they do!
Bill Karwin
+4  A: 

Look into what Microsoft calls a Program Manager. They have many functions, but one of them is designing a new feature. They don't program, but they may spec it out in a lot of detail. Listen to Joel's podcasts about his work on the Excel team.

A few resources:

Steve Rowe
Nice links. Noticed something pretty funny though: under the MS description for PM, they list C++ and Java as helpful background, but not C# or .NET. "Java? Yes. Our language? Meh."
Chris
"Yeah, those languages you know? NOT like that."
Simon Buchan
+2  A: 

Right, we'd all like to design, design, design and create a beautiful work of art, the finely-crafted Swiss watch of API's. If you never use it, you never discover the egregious bugs in your implementation of that flawless design.

I'm just teasing! Because there are no doubt hundreds of people on StackOverflow who feel the same way. For that matter, there are millions of people in every profession imaginable who would love to analyze and create the perfect example of their craft. We rarely get the chance, because spending infinite time making and remaking the same creation by definition makes it not cost-effective. At some point you've got to call it "done" and get on with some other work.

So I would suggest that you start an open-source project and exercise your artistic side on your own time. Host it at LaunchPad or GitHub or BitBucket or elsewhere, so you can link to it and make people say "Ooh, Aah" at your ingenious API that you refactor so often that no one could ever use it.

I don't mean to make that sound disapproving. Experimentation on your own project is a great way to build your skills. And doing something with the creative side of your brain (even if it's still coding) is very beneficial for mental balance.

The more complex the mind, the greater the need for the simplicity of play.

Then with your days, you can get a job doing something more mundane, and feel solace that you can fill your evenings with more tinkering.

Bill Karwin
+4  A: 

It sounds like you want my job - MIS Manager. Seriously, that is my title. Looks hilarious on my business card all in capitals with the space not so obvious. The MIS stands for Management Information Systems.

My role is basically CIO of a mid-size law firm. I get to analyse the business, recommend technology strategies and solutions, automate business processes, write reports and lead a team to develop software to provide competitive advantage for our firm. The team is small enough that I can still write code when desired. I don't do the IT infrastructure side - we have another manager for that.

There are a lot of companies out there that require someone who understands their business and how information systems can help them. Think outside the software industry.

Chris Latta
+1  A: 

I think either a business analyst or architect seem like routes I'd suggest for you. The latter does still have the design elements but without actually having to write code usually though this may require having somewhat extensive knowledge in terms of the number of different languages and platforms out there for some things. The BA is a suggestion if you can't quite make that leap into the architect role as this can also be fairly business intensive though a project manager may be another idea.

JB King