Michael Stiefel attempts to clear up some misunderstandings regarding the role played by the software architect.
Michael Stiefel, principal of Reliable Software, Inc. is a consultant on software architecture and development, and the alignment of information technology with business goals. He was a member of the OASIS Technical Committee that developed the SOA Reference Model. He is also a Microsoft Solutions Architect MVP. He graduated MIT and he is an active member of the IEEE Consultants Network.
DevTeach stands for Developers Teaching Therefore, It is a conference done by developers for developers. These events have all the elements of an international conference with speakers coming from all over the globe but keeping the values we all treasure from local community events. We pride ourselves in offering the biggest diversity of subjects covered in our various sessions. All our sessions provide presentation material to the attendee and whenever possible, hans-on training. DevTeach is not so much a conference as it is a “developer festival.
It is very important that you pointed this out, because everybody fits a particular role in a team, in a departement, project etc. Everybody has different skills and ways to approach problems.
I'm a DevOps advocate and this talk helped me confirm, that no matter how much collective awareness you may try spread and how much you bring everybody involved in a project closer together, you cannot expect from each member to take care of everything - to know everthing. Roles need to be defined, while keeping in mind that no one should either encapsulate themselves behind that role nor let themselves get encapsulated.
Architects, test engineers, software eng. and system admins/engineers are all needed and should work very close together and cooperate with each other.
I would like to disagree, but I can't.
About 5 years later, I'm still an TA, but I'm now responsible for different aspects of the software development (most if not all of the ones in the presentation) and I can see how different my role is and the responsibility associated with it compared to my previous gig as a 'STA'.
About the subject of this post: "I would like to disagree, but I can't"; Part of me thinks that a good TA should be spot on coding practices, design, component segregation, quality... but I realise that this is falacy as there are other aspects that are very important too, and a TA can't be an expert in every facet (infrastructure, UX, etc).
Anyway, I still have the feeling that a good TA should master (or have mastered) one aspect of the development process, but I can't justify why.
Good talk, but wrong example
When i started a project without a clear definition of architect and developer role, it leads to misundertanding and problems in the team. After a while, the roles changed a little and were clear to all (especially me the architect) and looked like what is explained in the presentation. As a consequence, the team was more efficient.
Who is Architect?