33 ms·
Does software need to be architected? Yes. Does this require a dedicated role called "Architect"? No. Usually the key implementor architects software. Even in
by paulsutter 7y ago
Does software need to be architected? Yes. Does this require a dedicated role called "Architect"? No.
Usually the key implementor architects software. Even in a large complex system, you really want key implementors working together to design.
- 9wzYQbTYsAIc 7y agoThank you for clarifying your statement. But you should have kept the part about what an architect is.
- perlgeek 7y agoI think that depends on the size of the project. If it's a single piece of software that runs on one or a few machines, sure. But the OP talks about complex, distributed systems that run on several different hardware architectures, and probably implemented by several dozens or maybe hundreds of software engineers. I think you really need an architect for some key decisions: where does what kind of data come from, where is the source of truth for which data, what protocols are used for communication between them etc. Maybe that's more of a system architect than a software architect, but the lines are kinda blurry.
- twblalock 7y agoWhere I have worked, the architect is the person who helps the key implementors work together smoothly, shares knowledge about the design, gives advice, and brings in other teams he knows can help. It takes a lot of "tribal knowledge" about the various teams involved in a project to do this kind of thing well. The most successful architects I have worked with are the ones who have a lot of experience at the same company. They don't design the architecture -- they convince all of the participants in a project to collaborate on designing the architecture.
- paulsutter 7y agoTheir title is architect, but they ... don't architect? > They don't design the architecture -- they convince all of the participants in a project to collaborate on designing the architecture
- twblalock 7y agoThe people I am describing are more technical than project managers and are able to give informed advice on the architecture and the code, and often commit some of the code to the project in addition to the other project management duties.
- deleted 7y ago[deleted]
- paulsutter 7y agoIf you avoid nontechnical project managers, you wouldn't need a special title for technical project managers
- namdnay 7y agoOh god I'm getting flashbacks.. people saying 'think of me as an "urban planner" rather than an architect'...
- jcims 7y agoThat’s the reality of it though. The role has stabilized at something other than software achitect, the name is too cool to walk away from though.
- blub 7y agoIn a "large complex system" the subsystems might be so large and so many, that it's no longer feasible for the key implementors of each subsystem to get together and discuss technical details or participate in stakeholder and management meetings. They might also have difficulty ensuring that architectural constraints which are not directly visible to them are respected. So yes, a dedicated role is needed.