Competencies of an architect

32
1 Competencies of an Architect Miha Kralj Architect Microsoft

description

Presentation from TechEd 2008 about key competencies of (certified) IT Architect - modeled after MCA (Microsoft Certified Architect) program

Transcript of Competencies of an architect

Page 1: Competencies of an architect

1

Competencies of an ArchitectMiha KraljArchitectMicrosoft

Page 2: Competencies of an architect

2

Architect responsibilitiesDispelling the illusion

What it really is

Technical Work

Touchy feely stufforganizational politicsgetti ng participation

communicationbuilding consensus

What you think the job is

Technical Worksolving interesting problems

technology choices system design

Non-Technical Work

Page 3: Competencies of an architect

3

What an Architect really doesit is not engineering after all…

The main activities of an Architect:Think, analyzeListen, talk, walk aroundDesign, brainstorm, explainAssist project leader with work breakdown, schedule, risksPresent, meet, teach, discussTest, integrateWrite, consolidate, browseRead, review

TGerrit Muller, “The Role and Task of the System Architect”, http://www.gaudisite.nl/RoleSystemArchitectPaper.pdf/

Page 4: Competencies of an architect

4

Architecting processWhat is there to do?

System Vision• system concept • value proposition, distinctive contribution• models and descriptions• prototypes

Find new business/product opportunities

Activities: • Conduct industry, market, customer and user analyses• Create technology roadmaps• Assess legal implications• Envision new products• Select, model and prototype

Architecture• architectural requirements• architecture models• component specifications• architecture guidelines and standards

Create a new architecture

Activities:• Gain sponsorship and buy-in• Capture architectural requirements• Create architectural models and evaluate alternatives• Validate architecture against requirements

Updated Architecture• updated requirements• impact analysis results• revised architecture models

Evolve an existing architecture

Activities:• Update architecture documentation• Update requirements• Assess architecture against requirements (impact analysis)• Restructure architecture

SystemEnvisioning

Architecting ArchitectureEvolution

Goal

Brief overview of process

Primary outputs

Process

Page 5: Competencies of an architect

5

Competencies breakdownWhat is needed?

Technical Competencies

BusinessCompetencies

Personal Competencies

SkillsKnowledge

Abilities

Page 6: Competencies of an architect

6

The Magic SevenSeven Measurable Competencies

Technical Competencies

BusinessCompetencies

Personal Competencies

Organizational Dynamics

Strategy

Process and Tactics

Technology in Breadth

Technology in Depth

Leadership

Communication

Page 7: Competencies of an architect

7

LeadershipAbility to develop partnerships with stakeholders both inside and outside the organization, mentor others, develop and form strong teams, and achieve successful results.

Does not meet• Weak communication skills – not considering needs across the organization

• Doesn’t manage the bad news

• Rarely develops effective partnerships

• Blames others for issues that arise – does not demonstrate accountability or ownership

Nearly meets• Technical lead, not a mentor

• Gets the job done most of thetime – sometimes fails

•Is not developing new competencies, not leading effectively

Meets• Drives the business forward – recognized for skill set across the organization

•Gets the job done – rock solid performer, dependable

•Develops partnerships across the organization

•Foresees and proactively addresses issues

Exceeds• Grows people – completes the project and provides growth or mentoring opportunities for team

•Develops strong business partnerships

•People want to follow – is sought out by others

•Makes the team better than the sum of its parts

Page 8: Competencies of an architect

8

LeadershipSub-competencies

Ask thought-provoking questions that result in actionable technological patterns or solutionsActively mentor others Provide thought leadership by enabling others to see things from a different and better perspectiveInfluence decision makers Champion structure, process, best practices, and standards Promote the capture and reuse of intellectual capital Effectively build individual partnerships and organizational networks

Page 9: Competencies of an architect

9

LeadershipSample questions• Tell me about a time when your team or management disagreed with an

architectural decision you made.• What steps are you taking to identify and/or grow your replacement?• How do you convey what architecture is to others? • How much of your time do you spend thinking about running your business vs.

changing your business?• What are your plans for the next 2-5 years?• Why are your team members or employees loyal to you?• Tell me about a time you lead the org away from a potential disaster to a

successful implementation? How?• How do you get other people to build and deploy the infrastructure/solutions you

architect?• How do you see the role of an architect in a team?• When things go wrong between team members – what do you do to resolve the

situation?

Page 10: Competencies of an architect

10

CommunicationMaintain well-written and accurate project documentation, and present information on a technical subject in a concise and measured manner. Influence others, manage conflict effectively, and tailor communication to the needs of the target audience.

Does not meet• Does not communicate

• Creates conflict

• Communicates inaccurate information

Nearly meets• Produces documentation of minimal value to technical stakeholders

• Can only communicate solution to technical stakeholders

• Does not effectively tailor communication to audience

Meets• Ability to tailor communication to audience

• Ability to effectively manage conflicts

• Ability to be honest about the ramifications of a technical decision

Exceeds• Well written, concise and accurate documentation that is appropriately maintained

• Engaging and concise presentation skills

• Ability to influence – influencer rather than a reporter

Page 11: Competencies of an architect

11

CommunicationSub-competencies

Effective listener and astute observer Communicate effectively and persuasively to different audiences (for example, executive or technical) Effectively mediate and manage conflict Document designs and specifications that adhere to company practices Communicate needs as well as deployment and operations standards to infrastructure architects Effectively facilitate meetingsPossess good presentation skills

Page 12: Competencies of an architect

12

CommunicationSample questions

• What standard methods do you use to depict your architectures?

• What documents are included in your conceptual/logical/implementation designs?

• Tell me about presentation where your audience was not cooperating?

• How would you talk to CIO/CTO/CEO/CFO?• I don’t understand – explain it better

• Follow-up: initiate conflicting arguing and observe reactions

Page 13: Competencies of an architect

13

Technical Competencies

BusinessCompetencies

Personal Competencies

Organizational Dynamics

Strategy

Process and Tactics

Technology in Breadth

Technology in Depth

Leadership

Communication

Page 14: Competencies of an architect

14

Organizational DynamicsRecognize the key stakeholders on a project and work with those stakeholders to drive the project to a successful conclusion. Recognize the political landscape within an organization that can influence a project, and in turn influence organizational politics for the success of projects.

Does not meet• Avoids politically charged situations

•Cannot or does not identify the stakeholders for the project

•Consistently falling prey to the whims of the stakeholders – not seeing the bigger picture

•Can’t map the solution to the business case

Nearly meets• Identifies but does not effectively work with stakeholders

Meets• Works with key stakeholders

•Impactful because gets the right stakeholders aligned

•Knows how to effectively pick battles

Exceeds• Recognizes key influencers and works with those influencers

•Perceptive enough to anticipate the changing political landscape

Page 15: Competencies of an architect

15

Organizational DynamicsSub-competencies

Understand organizational structures, relationships, and influencersAdeptly maneuver through politically-charged organizational situations Effectively build organizational partnerships and networks Build relationships with other architects and project stakeholders Possess an awareness of the internal legal organization and ensure that legal guidelines are met Exhibit comfort with conflict and thrive in situations that require negotiation and compromise

Page 16: Competencies of an architect

16

Organizational DynamicsSample questions• How do you go about gaining alignment from various stakeholders in the

organization?• Describe a project that was partially complete and new stakeholder(s) were

added. What did you do?• Tell me about a successful failure?• How do you determine who you talk to when you enter a company or start a new

project?

Page 17: Competencies of an architect

17

StrategyApply knowledge of technology to further organizational goals within the vertical industry. Understand the principles of project management and interact with project managers to complete projects successfully. In addition, understand the economic dimension of projects and how costs influence the available choices for technology.

Does not meet•Does not understand the impact technology may have on the business and tradeoffs that must be made to meet the needs of the business.

Nearly meets• Solutions only take into account thinking about 6 months out – not well beyond.

•Understands competitive advantage technology provides for the organization, but does not drive it.

•Reactively instead of proactively solving problems.

Meets• Solution aligns with business strategy in addition to technical strategy.

•Aware of where business and technology is going.

•Interacts with community and customer on a participatory level.

•Drives the competitive advantage that technology provides for the organization.

Exceeds•Able to extract requirements from the business and understand not only the technical, but the business impact.

• Interacts frequently with community and customer and drives that interaction.

•Intimately aware how solution will be executed.

•Ability to gain buy-in of solution.

•Long-term focus.

Page 18: Competencies of an architect

18

StrategySub-competenciesExplain the business strategy of your organizationDemonstrate knowledge of industry-specific trends with respect to architectureBalance the needs of users, management, operations, support, finance, and technology with the strategic needs of the business, including business benefits and vendor pricing implicationsDemonstrate an understanding of future trends in technology and how they impact the current and future state of your solution Describe how you applied knowledge of industry ( HIPAA , Basel II, Sarbanes-Oxley, HL7, etc.) regulations to create your solution Use enterprise frameworks (for example, the Zachman Framework for Enterprise Architecture or The Open Group Architecture Framework [TOGAF]) to map the business strategy of the organization to your solution Understand how operational frameworks (for example, Control Objectives for Information and related Technology [COBIT], IT Infrastructure Library [ITIL], ITSM) impact your solution Understand how techniques for achieving operational excellence (for example, Lean Six Sigma, Total Quality Management [TQM], or Capability Maturity Model [CMM]) impact your solution

Page 19: Competencies of an architect

19

StrategySample questions• What part of your vision/solution did you fail to gain buy-in on? Tell me about a

scenario where you failed to gain buy in.• Follow-up: What would you do differently?

• Follow-up: What were the consequences and how did you deal with those consequences?

• How do you go about validating your strategy internally before you execute on gaining buy-in?

• What mechanisms do you have to share best practices? How do you evaluate best practices?

• How do you quantify or measure success?• What technology initiatives do you have in the next year?• What is your scope of influence in the organization?

Page 20: Competencies of an architect

20

Process and TacticsGather and refine project requirements from both a technical and a business perspective. Design, create, maintain, and verify models of the deployed infrastructure. Create effective project artifacts. Exhibit the ability to refine project goals and the tactics necessary to achieve those goals as the project develops.

Does not meet• Not willing (or unable to recognize when it is necessary) to change architecture.

•Proposes architecture – but no involvement in implementation and its evolution.

Nearly meets• Designs architecture but fails to document changes.

•Does not address opportunities to change working architecture as the situation changes.

Meets• Effectively incorporates strategic vision into tactics of technology implementation.

•Ability to change architecture as obstacles occur during implementation.

•Keeps up to date with evolving best practices and technology, and can adjust architecture appropriately.

•Aware of, presents, and explores technical options.

•Able to compromise as appropriate.

Exceeds•Ability to predict when technology change will occur and can adjust/evolve architecture appropriately.

Page 21: Competencies of an architect

21

Process and Tactics Sub-competencies

Use methodologies and/or frameworks to provide predictability to IT and ensure repeatable success on IT projectsGather and analyze both technical and business requirements Envision and create an solution that meets requirements and can be implemented using modeling techniques and mapping their points of integration Prove the feasibility of a design (POC, pilots, prototypes, etc.) Use capacity planning techniques to ensure scalable designs Create the design artifacts that are required to deliver and to maintain the solutionUnderstand the impact of internal policies (for example, service level agreements [SLAs])Guide a project through to completion and audit compliance with specifications and the overall intent of the architecture Review the ongoing implementation for opportunities for improvement and refine the model as requirements change, implementation choices evolve, etc.Contribute to technical project management

Page 22: Competencies of an architect

22

Process and Tactics Sample questions• What lifecycle process do you follow and why? What are the artifacts of the

process?• Probe – are all artifacts complete for the solution? (e.g. is a test plan

documented?)• How do you measure success?• Walk me through a project – beginning to end. Recommend to use a hypothetical

situation.• What are you doing to mitigate risk?

Page 23: Competencies of an architect

23

Technical Competencies

BusinessCompetencies

Personal Competencies

Organizational Dynamics

Strategy

Process and Tactics

Technology in Breadth

Technology in Depth

Leadership

Communication

Page 24: Competencies of an architect

24

Technology - breadthUnderstand architectural best practices and apply them across a breadth of technologies to solve an organizational problem. Articulate views on the future development of technology, and understand the interaction between infrastructure and solution architecture. Use these insights to design appropriate architectural solutions. Does not meet• Focused on a single-platform – comfortable with single technology only.

•Understands multiple technologies but cannot bring the technologies together – cannot synthesize.

•Limited/selective understanding of the technology.

•Does not recognize existing technology.

Nearly meets• Addresses functional goals of a system, but may ignore non-functional goals.

•Understands trend of where technology is moving but not understanding the technology itself (uses buzz-words).

•Does not thoroughly analyze options if following policies of organization vs. looking at other potential technologies.

•Does not demonstrate the responsibility to reuse existing technology.

Meets• Understands where technology is moving and when is redundant.

•Understands some quality properties in addition to functional requirements.

•Understands how various technologies fit together – across the entire organization

•Synthesizes new information/technology quickly.

•Consistently expanding technical knowledge.

•Recognizes the value of leveraging existing technology.

Exceeds•Strong understanding of new tools and technologies with a defined process for implementing within the organization.

•Understands where business is going and impact it has on the architectural solution and has a plan for adaptation.

•Understands the impact of decisions on quality properties in addition to funct requirements and can articulate that impact. Also has an evaluative process and/or documentation on decision points w. trade-off considerations.

Page 25: Competencies of an architect

25

Technology - breadth Sub-competencies

Apply architectural and engineering concepts to design a solution that meets operational requirements, such as scalability, maintainability, security, reliability, extensibility, flexibility, availability, and manageability Think abstractly and demonstrate effective application of service-based, object-based, and component-based modelingEffectively adapt solutions to the capabilities and constraints of the infrastructure Demonstrate a range of software development skills, such as:

data access and transactionsfactoring and refactoringtiers and layersapplication of patternsIntegration strategies

Have a broad architectural knowledge of several technology areas and be able to compare and contrast multiple vendor offering in those areasLearn new concepts and gain expertise quickly

Page 26: Competencies of an architect

26

Technology - breadth Sample questions• What frameworks did you consider when architecting your solution and what criteria

did you use?• What approach did you use to elicit quality requirements?• How do you analyze the relationship between architecture and quality properties?

• Follow up questions: tradeoffs

• How do you ensure quality in your design?• When considering technology for a solution how do you treat redundancy among

technologies?• What did you consider when designing your solution to ensure it is maintainable and

upgradeable?• Last 2 or 3 books you’ve read on the industry?• What are the 2 or 3 magazines or websites you follow?• What trends do you see that will significantly impact the solutions you design in the

near future? Or what keeps you jazzed about the future?• What standards does your organization use for architecture – frameworks, packages,

software development?• What process is used to introduce new standards in the organization?

Page 27: Competencies of an architect

27

Technology - depthDemonstrate detailed knowledge of the concepts, application, and issues of at least two depth competencies. Also demonstrate the ability to quickly assimilate information about new technologies.

Does not meet• Unable to demonstrate technology expertise.

Nearly meets•Strong expertise in one area of technology and how the technology fits into architecture, but struggles outside of that one area.

Meets• Demonstrable and sustained expertise of two or more areas of technology and how the technology fits into architecture.

•Understands the value of the technology and its impact on the business.

Exceeds• Demonstrable, sustained expertise and mastery of three or more areas of technology and how the technology fits into architecture.

•Achieves industry acknowledgment as a published author, conference speaker or holds patents for an area of technology.

•Able to learn a new technology quickly.

Page 28: Competencies of an architect

28

Technology - depth Sub-competencies

Examples of depth competencies include, but are not limited to, the following:

Component and solution modelingSolutions frameworks (for example, the Microsoft .NET Framework and Java 2 Platform, Enterprise Edition [JEE])Integration , as evidenced by knowledge of traditional enterprise application integration (EAI) products such as Microsoft BizTalk Server, IBM WebSphere, or BEA WebLogicUser experience, including smart clients and adaptive UIData structuring and management

Page 29: Competencies of an architect

29

Technology - depth Sample questions• What are the benefits of the architecture you selected? Why did you decide to use

it?• Follow-up: What challenges did you face when implementing it?• Follow-up: What alternative technologies did you consider?• Follow-up: How did you sell your solution to the infrastructure

support/software development staff?• Follow-up: How did you explain your solution to various levels of the

organization?• What are instances where you had to back away from using your architectural

solution in the design or roll out?• If you had the opportunity to re-design the solution, how would you go about it?

Page 30: Competencies of an architect

30

Level of CompetencyVarious roles in the Enterprise

Leadership

Strategy

Technology Breadth

Organizational Dynamics

Tactical / Process

Communications

Technology Depth

CIO Enterprise Architect Solution/Infrastructure/Information/Business Architect

Page 31: Competencies of an architect

31

ConclusionCommon competencies of Architects

Technical Competencies

BusinessCompetencies

Personal Competencies

Organizational Dynamics

Strategy

Process and Tactics

Technology in Breadth

Technology in Depth

Leadership

Communication

Page 32: Competencies of an architect

32

Your Next StepsAs an aspiring architect, you should…

TomorrowNetwork with other architects on TechEdRe-validate if your development path leads towards an architect or engineer

Near FutureSet your career goals and define the roadmap to achieve themStart building the right competencies required

Longer TermParticipate in defining and establishing IT Architecture as a separate profession