Monday, March 13, 2006

balance

As my working life progresses, I'm finding an increasing tension between architecting and coding. My problem is that I love both. My managers would be perfectly happy if I spent my entire day architecting. But I would be miserable without that real connection to code.

Code grounds me and connects me to the project in a way that architecting does not. And I tend to do my best architecting *while* I'm coding. Coding puts me in an almost meditative state of mind where I can do my best work. I think this breaks traditional rules of design first, code second, but coding puts me in the moment and lets me see the issues all in context.

And I love the creative control of architecture. I moved to coding from technical writing partially because I wanted to have a say in *what* got built before it was too late. I want to figure out what features belong, what features fit, how we can best solve customer needs, etc. I want to design. I don't want to code someone else's design, I want to code my own!

I would posit that you really can't architect without also coding. If I had only been an architect on Workplace Designer rather than coder and architect, I would not have had the skills to know what could be done - I needed to retrain in Eclipse and Java, to get that connection to what's real.

So I am going to have to be a rebel and be a coding architect.

5 comments:

Pete said...

amen

Kudla said...

Hey Maureen, not sure if you remember me, but our careers overlapped at Iris for a while, back in the late 90's....

Anyways, I dig your blog, and am an avid reader, even if you don't post nearly often enough :-)

I totally agree with your sentiment on being a coding architect. It really struck a chord with me, as I just had my annual review and was dinged for being too quick to dive in to the implementation and not maintain the broader perspective of an architect.

Frankly, the same concepts you espouse for architects apply to managers of development groups as well.

Maureen said...

Kudla, you're unforgettable!!

Glad to see you have a blog, too :-)

Chris Reckling said...

and, being your favorite product manager, I WANT you to code, too! I don't know if I'd want managers coding, but I think the point is that they should understand the product at some deeper level.

:)

Chris

Bob said...

Read these two articles: Architects Don't Code and, for Chris, Managers Don't Code. The first is considered to be an anti-pattern, the second is more contentious. To be fair, maybe there should be another Wiki article: Developers Don't Manage. :-)