Hacker News new | past | comments | ask | show | jobs | submit login

Hmmm, ignoring the school part, have you found some "software architects" worthy of the title? I know you say that implicitly, but I wanted to make sure and perhaps have you elaborate a bit on what distinguishes them.



I've only worked for one (software) firm which was large enough to have someone on staff who were responsible for "architecting", and I mostly thought they were idiots.

I think that if you are competent enough to build any part of your project, but can still understand the big picture and have some appreciation for elegance and beauty in a design, you've got the basic idea.

I think architects are also better trained at accurately sizing up time requirements and logistics, for an entire project, and at being aware of time and money and arbitrary client constraints.

And I think architects are trained a lot more in presenting their ideas to hostile audiences, which gives a lot of insight into taking and giving criticism, and finding the flaws in your projects and designs before they ever reach a client.


"and have some appreciation for elegance and beauty in a design"

Understanding the big picture is an obvious requirement (and not necessarily easy ... perhaps more important is knowing when you don't have it, see some of the comments here about architects who switched problem domains), but too many people don't grok the correlation between elegance and beauty in design and how they make projects easier and sometimes just simply possible.

One note of importance that's related to how we aren't trained in those critical not so technical skills you cite is the what we're building is fantastically more complicated than anything concrete (so to speak :-) that others build (note that the most complicated microprocessors have a lot of software (firmware) in them). One key sign I've found when I've gotten a design right is that it solves problems that I didn't know I had. I think it takes a lot of experience to get to that point (by then I'd been programming nearly two decades, and studying on my own software engineering and design from the beginning).

Time requirements and logistics in our field can be very difficult, since you often don't know the scope of the project until you're part way into it. The waterfall process works for you (it had better!) but it doesn't tend to work well for us ... and there comes in the least technical other skills you cite ("arbitrary client constraints", oh, yes!).

One final note: we can mostly get away with so many in our field being idiots because what we do is mostly less consequential, but if you noticed the recent stories about how medical radiation devices are still killing people you'll see we really aren't as far as we should be.

Thanks a lot for your reply.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: