Given that Enterprise Architects can always spend lots of time on topics like enterprise strategy, operationalization of strategic plan, governance of strategic initiatives portfolio and ensuring that Business and It organizations are aligned on key objectives, they are left with little time to freshen up their technical skills and skills necessary for the design of solutions using latest technology and work processes and patterns.
This means that even if they work 5 * 8 and not like in China where some people still continue to work 6 * (9 to 9), they are not left with enough time to upgrade their skills.
Many people are afraid of Generative AI, but they should look at it with an open mind and to least learn skills related to prompt engineering. Iit opens the door to use effectively LLMs (large language model) and KG (knowledge graph) technologies to augment their architecture and design practices.
This week I’ve purchased a recent book on an important topic like System Design Interviews written by Stanley Chiang. He has spent many years at Google and was himself interviewing candidates for various positions related to solution development. He has structured and codified the knowledge on this topic (see this site for many other references: https://github.com/systemdesignfightclub/SDFC). So I’ve purchased this reference to freshen up my knowledge as part of my normal practice of reading good books on topics like architecture, design and various engineering methods.
The book is very well organized and among other things it provides a proven 7 step approach to proceed with interviews on the following topics to ensure that good human resources are found and they are assigned to a seniority level position that corresponds to their capabilities and experience:
1. clarify the problem and scope the use cases,
2. define the data models,
3. make back-of-the-envelope estimates,
4. propose a high-level system design,
5. design components in detail,
6. write out service definitions, APIs, interfaces, and /or classes,
7. identify and solve potential scaling problems and bottlenecks
I am not providing any more details on specifics related to each step as I would like you to buy and read this book, but I looked at it from the perspective of architect roles. Nowadays, we need to wear a variety of hats that we used to assign in a waterfall world to different architect roles (enterprise, solution, software, system or business architects). Smaller and agile enterprises cannot afford so many separate dedicated positions. No one is denying that architecture capability is needed, that it can help in aligning business and IT organization and in making right decisions by making complexity more manageable. However, in many cases we can afford only a handful of resources and in many enterprises there is no appetite for an explicit architecture capability.
How many architect’s hats can you wear?
As an experienced enterprise architect and manager, I still read professional books that focus on topics I’m interested in. For the last 12 months, I have also resorted to ChatGPT to check on those topics in parallel to my reading or even prior to the covering of particular topics in order to identify which of my skills fI should “upgrade” to accelerate my learning speed and gathering of knowledge.
ChatGPT or other open source LLMs can help you to become more adaptable.
If you know how to ask the right questions (prompt engineering skills), then ChatGPT can support you on this learning journey and identify your learning needs to remain relevant expert in discussions of various agile teams, be it in PI Planning (program increment planning) or in design sessions for key product iterations. You need to be relevant if you want to participate and collaborate with those teams and to ensure that your architecture does not start to accumulate design debt from an early stage of the project/product development. You also need to keep in mind the potential of building blocks for reuse or evolution (the architecture runway concept).
I asked ChatGPT what sort of questions I should be asking an enterprise architect in such a System Design interview:
“For an Enterprise Architect overseeing whole project and product development, especially in the context of a digital transformation initiative aimed at business agility, the approach would be more strategic, holistic, and business-focused compared to the more technical and specific approach of a Systems Architect. The Enterprise Architect’s role involves aligning technology strategy with business goals, ensuring scalability and sustainability of IT infrastructure, and leading digital transformation efforts. Here’s a step-by-step approach tailored for an Enterprise Architect:
1. Understand Business Goals and Objectives
- Clarify the broader business goals and objectives.
- Understand the market, competitors, and the business environment.
- Identify key business drivers and desired outcomes of the project/product.
2. Define the Scope and Vision of the Transformation
- Develop a clear vision of what the transformation aims to achieve.
- Scope the initiative, outlining the breadth and depth of the change.
- Identify key stakeholders and their roles in the transformation.
3. Assess Current State and Gap Analysis
- Analyze the current architecture, processes, and technology stack.
- Conduct a gap analysis to identify discrepancies between current and desired states.
- Identify opportunities for improvement and innovation.
4. Develop a Strategic Transformation Roadmap
- Outline a high-level strategy and roadmap for achieving the transformation.
- Prioritize projects and initiatives based on business impact and feasibility.
- Define key milestones, timelines, and resource requirements.
5. Architect the Future State
- Design the future state architecture that aligns with business objectives.
- Consider scalability, reliability, security, and compliance in the architecture.
- Integrate agile and flexible approaches into the architecture design.
6. Define Governance and Best Practices
- Establish governance structures for overseeing the transformation.
- Define best practices, standards, and guidelines for implementation.
- Ensure alignment with industry standards and regulatory requirements.
7. Implement Change Management and Stakeholder Engagement
- Develop a comprehensive change management plan.
- Engage with stakeholders at all levels to ensure buy-in and support.
- Communicate regularly on progress, challenges, and adjustments.
8. Oversee Implementation and Execution
- Monitor the progress of implementation projects.
- Provide leadership and direction to project teams.
- Ensure alignment with the strategic roadmap and business objectives.
9. Monitor Performance and Adjust Strategies
- Continuously monitor the performance of new systems and processes.
- Gather feedback and make adjustments to strategies as necessary.
- Adapt to changing business needs and technology landscapes.
10. Ensure Continuous Improvement and Innovation
- Foster a culture of continuous improvement and innovation.
- Keep abreast of emerging technologies and trends.
- Regularly review and update the architecture to reflect new insights and technologies.
This approach emphasizes the strategic, leadership, and change management aspects of an Enterprise Architect’s role. It’s about not just designing systems, but aligning technology strategy with business goals, leading organizational change, and ensuring that technology investments deliver value to the business.”
In case you have some specific questions or to make additional comments, please contact me at [email protected].
Authored by Alex Wyka, EA Principals Senior Consultant and Trainer