Currently, many EA architects come from and work in IT. That does not necessarily have to be so. As it happens, some have some knowledge of programming. But that does not mean that such knowledge is required for an EA.
IT, from a systems and software design practice (OO...), often comes with an understanding of the Architecture side of Enterprise Architecture.
Business though comes with the knowledge of the Enterprise part of EA but with little ability to architecture it.
An EA architect has to understand both how a business works and how to structure and describe it rather than comprehend programming languages in any depth.
Many EAs come though from software development where they learned the ropes of software architecture - client-server, OO, UML, web services and SOA. Because applications architecture is part of EA, this is welcome even if it is in the domain of a software architect rather than that of an EA architect. But importantly, the object methods, may be used to model any system and as such transcend the software domain.
But even a software architect deals with object repositories, libraries, modules, frameworks and APIs (take for instance JavaEE) rather than pure programming.
Moreover, in other lands, the system analysts/designers are not the same as the programmers. They just hand over the design to the programmers.
It is true though that sometimes job descriptions confound software with EA architecture and eventually require programing experience.
The EA should know software architecture to a degree but should know much more: technology in general, business applications, infrastructure and products, networks, business frameworks and tools, planning and the whole science or art of managing an enterprise and its strategy.
As such, the architect is a generalist rather than a specialist in any of the above domains. They are simply too many to master in-depth.
Hence, there is a long way to go from a programmer background to an EA architect.
So, when recruiting, a programming language could come, at best, on a wish list rather than a must have list, and only when your EA architect has to specialise in the applications tier. In fact it is not the language itself required but the ecosystem of frameworks, libraries and objects you need.
Taking the view of MIT's Jeanne Ross, the architect would have to have the skills of a clinical psychologist in order to defeat the resistance of the top management who stubbornly just don't get it. This is one notch up from the soft skills we usually blubber about. Looking through this glass, programming sounds OK though.
It becomes easier to say what an EA must not know than what he has to.













Leave a comment