You need to evaluate whether an architect (the user or someone they manage) is fulfilling the core expectations of the role. Typical triggers:
Before starting, verify:
-> Check prompt for: coding, meetings, reviews, presentations, stakeholder interactions, technology evaluation
-> If still missing, ask: "Can you describe how you currently spend your time as an architect — what activities take up most of your day/week?"
-> Check prompt for: feedback, frustration, role confusion, promotion, performance review
-> If still missing, ask: "What prompted this question — is there a specific concern about how the architect role is being performed?"
-> Check prompt for: startup, enterprise, team size, reporting structure
-> If unavailable: assume mid-size tech company
-> Check prompt for: "just promoted," "been an architect for X years," experience references
-> If unavailable: assess from behavior descriptions
-> Check prompt for: code reviews, pair programming, stand-ups, 1-on-1s, architectural reviews
-> If unavailable: assess from activity descriptions
SUFFICIENT when ALL of these are true:
- At least 3-4 current activities are described
- The specific concern or trigger is understood
- The career context provides enough to assess depth vs breadth
PROCEED WITH DEFAULTS when:
- Some activities are described
- A general concern is expressed
- Career stage can be estimated
MUST ASK when:
- No current activities are described at all
- The concern is completely unclear
ACTION: Evaluate the architect against each of the eight core expectations. Score each as Strong, Adequate, Needs Improvement, or Missing. For detailed descriptions of each expectation, see references/eight-expectations.md.
WHY: These eight expectations define what an architect should be doing regardless of their title, organization, or seniority level. An architect who excels at 3 of 8 is failing the role even if those 3 are done brilliantly. The expectations are intentionally broad — they encompass technical, interpersonal, and organizational dimensions because the architect role sits at the intersection of all three.
| # | Expectation | What it means | Common failure mode |
|---|---|---|---|
| --- | ------------ | --------------- | --------------------- |
| 1 | Make architecture decisions | Define architecture decisions and design principles to GUIDE (not specify) technology choices | Specifying "use React.js" instead of guiding "use a reactive-based framework" |
| 2 | Continually analyze the architecture | Assess how viable the architecture is given today's business and technology landscape, recommend improvements | Designing once and never revisiting; architecture decay goes unnoticed |
| 3 | Keep current with latest trends | Stay up to date on technology and industry trends | Falling behind on technologies, making decisions based on outdated knowledge |
| 4 | Ensure compliance with decisions | Verify teams are following architecture decisions and design principles | Making rules but never checking if they're followed; architecture violations go uncaught |
| 5 | Diverse exposure and experience | Know multiple technologies, frameworks, and platforms — not just one stack | Only knowing Java/Spring and recommending it for every problem |
| 6 | Have business domain knowledge | Understand the business side, not just technology | Building technically elegant solutions that don't solve the actual business problem |
| 7 | Possess interpersonal skills | Teamwork, facilitation, leadership | Being technically brilliant but unable to collaborate, facilitate meetings, or lead teams |
| 8 | Understand and navigate politics | Navigate corporate politics effectively | Ignoring organizational dynamics and being surprised when good ideas get blocked |
IF the user describes their activities -> map each activity to one or more expectations and identify gaps
IF the user describes problems -> trace each problem to a failing expectation
ACTION: Assess whether the architect has the right balance of technical breadth (knowing many technologies at a surface level) vs technical depth (knowing a few technologies deeply).
WHY: The knowledge pyramid has three zones: "stuff you know" (depth), "stuff you know you don't know" (breadth), and "stuff you don't know you don't know" (unknown unknowns). Developers should maximize depth. Architects should maximize breadth. When a developer becomes an architect, they must deliberately shift their learning investment: sacrifice some depth to expand breadth. An architect who only has depth makes poor decisions because they can only see solutions through the lens of technologies they know deeply.
The Knowledge Pyramid:
Assessment criteria:
ACTION: Determine whether the architect exhibits the Frozen Caveman pattern — irrationally reverting to past experience regardless of current context.
WHY: The Frozen Caveman Architect had a traumatic experience years or decades ago (a system failure due to scalability, a data breach, a vendor lock-in disaster) and now insists every new system must guard against that specific problem, even when it's irrelevant to the current context. This is not the same as learning from experience — it's the inability to objectively assess whether past lessons apply to the current situation.
Warning signs:
IF Frozen Caveman pattern detected -> flag it explicitly with specific correction:
ACTION: Assess whether the architect is operating at the right level — making architecture decisions vs design decisions.
WHY: Architecture decisions affect the structure of the system and constrain or guide development teams. Design decisions affect implementation within those constraints. An architect who makes design decisions (choosing class structures, selecting design patterns, writing pseudocode) is micromanaging. An architect who doesn't make architecture decisions (letting the team decide service boundaries, communication protocols, data partitioning) is abdicating the role.
The boundary test: Does this decision affect the overall structure of the system?
AGENT: EXECUTES — produces the assessment
ACTION: Compile the findings into a structured assessment with specific recommendations for improvement.
HANDOFF TO HUMAN — the user implements the changes in their daily work
# Architect Role Assessment
## Current Profile
- **Role tenure:** {how long as architect}
- **Organization context:** {company type, team size}
- **Primary concern:** {what triggered the assessment}
## Eight Expectations Scorecard
| # | Expectation | Rating | Evidence | Recommendation |
|---|------------|--------|----------|----------------|
| 1 | Make architecture decisions | {Strong/Adequate/Needs Improvement/Missing} | {what was observed} | {specific action} |
| 2 | Continually analyze | ... | ... | ... |
| 3 | Keep current with trends | ... | ... | ... |
| 4 | Ensure compliance | ... | ... | ... |
| 5 | Diverse exposure | ... | ... | ... |
| 6 | Business domain knowledge | ... | ... | ... |
| 7 | Interpersonal skills | ... | ... | ... |
| 8 | Navigate politics | ... | ... | ... |
## Technical Breadth vs Depth Assessment
- **Current balance:** {depth-heavy / balanced / breadth-heavy}
- **Knowledge pyramid status:** {description of current state}
- **Recommendation:** {specific actions to adjust balance}
## Anti-Pattern Check
- **Frozen Caveman:** {detected / not detected} — {evidence}
- **Other patterns:** {any other role anti-patterns observed}
## Architecture vs Design Boundary
- **Current boundary:** {operating too low / appropriate / too high}
- **Evidence:** {examples of boundary violations}
## Top 3 Priority Actions
1. {most impactful change}
2. {second priority}
3. {third priority}
Scenario: New architect spending 80% of time coding
Trigger: "I just got promoted to architect from senior developer. I'm still spending 80% of my time coding. My team says I'm a bottleneck on code reviews."
Process: Assessed against the 8 expectations. Found Expectation 1 (architecture decisions) as Needs Improvement — the user is making design decisions via code reviews instead of architecture decisions. Expectations 2-4 likely Missing since coding leaves no time for architecture analysis, trend-following, or compliance verification. Expectations 6-8 (business domain, interpersonal, politics) at risk due to time allocation. Diagnosed the architecture-vs-design boundary violation: the architect is operating at the design level, which is the developer's domain. Technical breadth assessment: likely depth-heavy since coding maintains depth at the expense of breadth. Recommended: reduce coding to 20-30%, shift to proof-of-concepts and fitness functions rather than production code, delegate code review responsibility to senior developers, and invest freed time in Expectations 2-8.
Output: Assessment showing 2 of 8 expectations met, depth-heavy knowledge profile, design-level boundary violation, and a 90-day transition plan.
Scenario: Architect who only recommends familiar technologies
Trigger: "I've been an architect for 5 years but I only recommend technologies I've used before — Java/Spring for everything. My team wants to try Go and Kafka but I keep saying no because I had a bad experience with message queues in 2018."
Process: Identified two issues: (1) Frozen Caveman anti-pattern — a 2018 message queue failure is driving current technology decisions without evaluating whether the same risk applies to today's context with today's tools. (2) Expectation 5 (diverse exposure) failure — recommending Java/Spring for everything indicates depth without breadth. Assessed knowledge pyramid: "stuff you know" (Java/Spring) is deep, "stuff you know you don't know" (Go, Kafka, modern event streaming) is being actively suppressed rather than explored. Correction: objectively evaluate whether the 2018 failure conditions exist in the current system; explore Go and Kafka through a proof-of-concept rather than dismissing them; set a goal of evaluating 2 unfamiliar technologies per quarter through lightweight experiments.
Output: Assessment flagging Frozen Caveman anti-pattern and Expectation 5 failure, with a structured technology exploration plan.
Scenario: Architect who avoids stakeholder work
Trigger: "I'm an architect but I never attend stakeholder meetings. I design systems, write ADRs, and review code. My manager says I need to 'be more strategic.'"
Process: Assessed against 8 expectations. Strong on Expectation 1 (architecture decisions via ADRs), Adequate on Expectation 4 (compliance via code reviews). Missing on Expectations 6 (business domain knowledge — can't learn the business without attending stakeholder meetings), 7 (interpersonal skills — not being exercised), and 8 (navigate politics — completely absent). The manager's feedback ("be more strategic") translates to: "you're fulfilling the technical expectations but ignoring the organizational expectations." Architecture doesn't happen in a vacuum — it must align with business goals, and that requires understanding the business. Recommended: attend 2 stakeholder meetings per week, schedule 1-on-1s with product managers to understand business priorities, and frame all ADRs with a "Business Context" section.
Output: Assessment showing 3 of 8 expectations met, organizational-expectation gap analysis, and specific stakeholder engagement plan.
This skill is licensed under CC-BY-SA-4.0.
Source: BookForge — Fundamentals of Software Architecture by Mark Richards, Neal Ford.
This skill is standalone. Browse more BookForge skills: bookforge-skills
共 1 个版本
暂无安全检测报告