Given that it seems our industry is still working out just
what it means to be an architect, I thought I'd toss out my thoughts with the
rest of them. The title implies the essence of what I'm suggesting; when
determining if you’re an architect or a developer, simply ask yourself, what is my quest? By this, I mean what are your primary concerns
and interests when making software. It is by answering this question that I
think we can best define the distinction between software architecture and
software development.
Many developers have said, and rightly so, that they
"do architecture," though they're still classified as
developers. True, a developer can easily be classified as an architect if
all that being an architect entails is designing some software, and by that
count, a developer of one month can also be called an architect. Indeed,
in all but the most detailed of specifications, a developer will be required to
do a fair amount of design, a.k.a. architecture, work. Yet I think we all
recognize that there is more to being an architect than simply doing some
design work. To more meaningfully disambiguate the roles, we have to dig
deeper and speak in terms not only of responsibility but of concern and
interest.