Architect's Role in Dealing with Complexity
Related White Papers
For more on Architecture Action Guides see
For more on Architecting see
Quest for Great Architects
To help position where architects need to pay attention, both on the job and in setting objectives for their personal development, I pulled off a number of current (circa March 2006) architect job postings from various places on the web. Many companies are positioning the architect role as one that is multifaceted hence relying on a plurality of skills and personal predilections; the architect is not just a technical "go to" person on the development team.
Yes, architects need to be both intelligent and experienced for they have to be very good at solving technical problems. Therein lies the goodness of their architecture, as well as their credibility among developers. Without credibility in this constituency, there is no goodwill. Without goodwill, there is architecture-eroding behavior that ranges from covertly ignoring the architect's decisions all the way to overt escalation to get managers to sanction exceptions to the architecture.
And architects need to be good leaders, setting direction and using persuasion and influence rather than formal authority to achieve desired outcomes.
To reinforce this perspective and demonstrate that it is not just a self-serving claim (given that our business is consulting, training and mentoring for architects), here are quotes from some current architect job ads (I have added color to draw attention to the different areas of skill demanded):
"We’re looking for an experienced Architect/hands-on engineer who will be the key contributor to defining and developing our system level software architecture for these new designs. You will be responsible for designing and creating the proper architecture for each of our phones, ensuring that we are building a reusable set of software components that we can use to quickly scale the number of phones we can ship. You will have to span multiple layers of the technology stack from assisting with low-level kernel bring up on new mobile chipset designs, to helping define our wireless architecture across multiple cellular and wireless standards to assisting in optimizing our graphics subsystem for implementing new end user experiences on mobile handsets. You will also be responsible for performance tuning across our entire system, driving performance investigations and designing key subsystems across the software stack to drive the best possible performance for our phones. Key to this role is that you will be an active member of the development team, driving implementation where you can have the most impact and setting the pace for the rest of the development team in terms of writing shipping code. You must also find the idea of “influence without authority” second nature; you will need to lead by example and influence the development team to make sure that that everyone adheres to the proper design principles. You will understand the customer and partner requirements today, anticipating their needs for the future and drive the right technical solutions within the team and across other Microsoft device teams. You must also understand the competition and its impact on device technologies."
Company: Microsoft; Job Title: Software Architect; Job Category: Software Development; Product: Mobile Embedded Devices Product Group; Date Posted: 03/28/2006; Job Code: 158196
"We are seeking a proven technical leader to drive the architecture of the Windows Live developer platform. This is a great opportunity for an entrepreneurial leader to drive architectural vision and strategy and to work with architects and technical leaders across the division to deliver a coherent and compelling platform. If you are passionate about helping developers build the next generation of web apps on top of Windows Live then this is likely a great fit for you."
Company: Microsoft; Job Title: Software Architect; Job Category: Software Development; Product: MSN Date Posted: 02/20/2006; Job Code: 154549
Plus Strategy Skills
"Position Responsibilities: The Management Architect will work with a small team of Cross-Divisional Architects in WEMD to set Architectural vision/strategy for current and future Management products and infrastructure. The Architect will work with Senior Technical leaders across the WEMD Product teams (MOM, SMS etc) and across Windows Server Infrastructure teams to define a tightly integrated Management Architecture for Longhorn and beyond. He/she will work in partnership with other Microsoft technologies to ensure solid technological integration with other Microsoft products, with a clear focus toward “delighting customers” in the Management space. In addition, the Architect will work with key Microsoft partners in the Management space to drive partnerships, innovation for maximum customer return on investment. The Architect will be responsible for driving both high and low level (detailed) design for the integration of Management products. Responsibilities will include planning, prioritizing key problems, doing cost/benefit analysis and strong customer research in order to best address most critical customer issues in the Enterprise Management space.
Requirements: This is a complex job requiring
strong technical and
strategic acumen. The successful candidate will bring the
following experience and capabilities.
Company: Microsoft; Job Title: Software Architect; Job Category: Software Development; Product Division: Windows and Enterprise Management; Date Posted: 12/15/2005; Job Code: 149438
Leadership, Politics, Strategy, and Technical Skills
"We are looking for a strong, experienced architect to be responsible for setting and driving the long-term vision for our shopping and marketplace products, focusing on building a market-leading consumer and merchant ecosystems. This position involves working through consumer interactions/scenarios, new business models and implications, product incubations, as well as driving cross-group efforts within MSN and with other Microsoft products. The successful candidate is expected to partner with other Architects including in Microsoft Research and senior leaders across Microsoft to maximize synergy between groups and to consult on the design of new features and work with the engineering teams to ensure the product is reliable, scalable and effective in meeting the product vision/roadmap.
The ideal candidate has successfully delivered products in the consumer/shopping space and has a proven track record of having invented and delivered market-changing technologies and/or having set new directions as a visionary leader in our industry. Candidate should be highly effective at influencing both internal and external audiences, and demonstrated the ability to inspire and motivate people around a strategy, as well as the ability to work effectively across organizational boundaries. The individual must be able to clearly set and articulate a consumer-oriented shopping vision, direction, and highly technical concepts to the development team and a wide variety of senior Microsoft audiences (Architects and Senior Management at all levels).
The individual must possess solid consumer, architecture and design skills; 5-10 years experience with Web technologies; and the ability to quickly come up to speed on new technologies. Passion for the user experience and demonstrated ability to drive and participate in prototyping efforts is required. Excellent communication and presentations skills required. A BS/MS in computer science or related field or equivalent experience is required. The candidate has to have strong architectural orientation but also be able to think through market strategy to make our products successful and responsive to customer and partner needs. He [really Microsoft!] should have a proven track record at establishing strong relationships and working effectively through others in order to accomplish business objectives."
Company: Microsoft; Job Title: Software Architect; Job Category: Software Development; Product: MSN Shopping; Date Posted: 11/02/2005; Job Code: 145532
As the Role Grows in Scope, the Architect Skillset Needs to Expand
In the architect job postings above, you may have noticed that the one with the most emphasis on technical responsibilities is the one most narrowly scoped. As the scope of influence increases to cover more organizational complexity and diversity of (vested) interests, more "soft" skills are required to gain and sustain organizational alignment and momentum to achieve collaborative goals.
Not Just Microsoft
Ok, Microsoft is not the only company hiring architects these days! And they are not the only one's recognizing the soft skills that the architect must have to be successful, especially as the architect's scope of responsibility is expanded. But they sure are positioning some exciting opportunities with a savvy sense of what it will take to go after those opportunities! Still, let us look at what other companies are looking for:
"Provide architecture products and services as the PLM PDM (Product Lifecycle Management - Product Data Management) Architect for Rotorcraft. Deliverables include definition of IT architecture directions, compliance to standards, applications, data and technical architecture designs. This position is responsible for developing optimum architecture solutions for PDM across all of Rotorcraft, and their integration with other tools. Collaborate with Subject Matter Experts, Engineering Customers and IT experts to define effective PDM architecture solutions that will help the current Rotorcraft environment integration and eventually migrate to the go-forward company PDM solutions (e.g., CAD/PDM - ENOVIA LCA, Enterprise PDM - TCEnterprise). Support PLM processes and overall company strategy to leverage common tools and processes, and other go-forward directions such as V5 tools suite. The candidate will coordinate with other Boeing enterprise process and tool focals and be an active member of enterprise process and tool development teams. The Architect will be expected to effectively lead, communicate and represent the architecture solutions to all Rotorcraft teams as well as other organizations across the enterprise as needed. Additional responsibilities such as application support and services and product architecture consulting to a wide array of audiences will be required."
Company: Boeing; Job Title: Rotorcraft PDM Architect; Job Category: Information Technology; Product: Rotorcraft PDM; Date Posted: 3/10/2006; Job Code: 06-1005462
Leadership, Politics, Strategy, Technical plus Consulting Skills
"Senior Communications Payload Architect will lead internal research and
development as well as new business support for a government spacecraft
communications payload. Competencies:
Company: Boeing; Job Title: Communications Payload Architect 6; Job Category: Prod Engrg & Technology; Business: Integrated Defense Systems (IDS); Date Posted: 3/15/2006; Job Code: 06-1005999
"This position will focus on several e-commerce systems and call center systems in the Staples Delivery business unit. Individuals with extensive Architect/Leadership experience in e-commerce initiatives for enterprise systems in a J2EE environment will be considered. Consulting experience is a strong plus. The Sr. Application Architect will:
Company: Staples; Job Title: Senior IS Architect; Date Posted: 11/02/2005; Job Code: #12717BR
I think the point is colorfully obvious: if you want to grow in influence and responsibility as an architect, you need to develop yourself in directions you might otherwise have associated with the management career track. For many of us who think of the architect career track as a growth path for technical people, this may come as a surprise—one that we are not particularly enthusiastic about (some might say that is putting it euphemistically). But it is all about achieving success through others. Architecture is about expanding the capacity of the organization to innovate and address more complex challenges.
Yes, as architects we need to be the watchdogs of complexity, aggressively resisting the temptation to add features or over-stretch towards ultra-you-name-it qualities. But we also have to recognize that our world is inexorably moving towards greater technological underpinnings yielding capabilities previous generations never dreamed possible. So complexity is here to stay. We can only work to manage in the face of complexity, and to reduce our exposure to complexity by being disciplined about scope and working to simplify both the nature of the problem and the organizational tasks required to tackle it.
Through architecture we harness the talents of others to build capabilities we could not otherwise build effectively, in the aggressive timeframes driven by intense global competition. Eb Rechtin observed in his seminal book (1991) on system architecture that architects have technical skills and skills that overlap with those of managers. Designing and building capabilities requires technical and domain knowledge together with systems design/system thinking prowess. Harnessing the talents of others is what drives the need for management-associated skills like leadership and facilitation.
It is not that we do not need huge engineering talent, it is that we also need architecting talent to break down the problem so that we can tackle it in pieces with confidence that the pieces can be assembled to create great products and services, with the capabilities our stakeholders care about (and no more). We should not undermine the career path of highly productive engineers. We need to offer a technical ladder and compensation structure that allows our best developers a growth path that recognizes their talent and contribution as engineers. And we need to offer a career ladder for architects that recognizes that as their scope of contribution increases, architects bear more strategic responsibilities where success relies on a scarce combination of technical acuity and excellence in leadership and organizational effectiveness.
This column is taken from Ruth Malan's (almost daily) architecture journal, entry date: 4/1/06.