{"id":"e961d442-07a8-4b20-8694-e896141e5695","shortId":"AH7Atn","kind":"skill","title":"technical-roadmaps","tagline":"Turn engineering strategy into a Technical Roadmap Pack (diagnosis, roadmap table, initiative briefs).","description":"# Technical Roadmaps\n\n## Scope\n\n**Covers**\n- Turning \"technical work\" (architecture, platform, reliability, tech debt) into a **written strategy + roadmap** that stakeholders can critique and improve.\n- Applying Richard Rumelt's strategy frame (**Diagnosis → Guiding policy → Coherent actions**) to engineering planning.\n- Producing a roadmap that is **executable** (owners, milestones, dependencies, risks, metrics), not a vague wishlist.\n- Aligning a technical roadmap with product/business constraints (quarters, launches, compliance/security, capacity).\n\n**When to use**\n- \"Create a technical/engineering/architecture roadmap for the next 2–4 quarters.\"\n- \"We need a written technical strategy and a roadmap we can review with leadership.\"\n- \"We have many tech-debt/platform initiatives; turn them into a prioritized plan with dependencies and milestones.\"\n- \"Our tech roadmap keeps being misunderstood—write it down so we can debug alignment.\"\n\n**When NOT to use**\n- The problem/outcome is unclear (use `problem-definition` first).\n- You need to choose *which* product bets matter most (use `prioritizing-roadmap` or `ai-product-strategy`).\n- You only need delivery dates, milestone tracking, and RAG governance (use `managing-timelines`).\n- You need a deep platform strategy / ecosystem design (use `platform-infrastructure`).\n- You want to improve engineering team processes, hiring, or culture norms (use `engineering-culture`).\n- You need a product roadmap oriented around user-facing features and business outcomes rather than technical infrastructure (use `prioritizing-roadmap`).\n\n## Inputs\n\n**Minimum required**\n- **Audience + decision:** who this roadmap is for (Eng leadership, Execs, Product) and what decisions it must enable.\n- **Time horizon + format:** e.g., 6 months / 12 months; Now-Next-Later vs quarterly.\n- **Current-state diagnosis inputs:** top pain points, reliability/latency/cost signals, incident themes, scaling constraints, key architectural bottlenecks.\n- **Constraints:** capacity assumptions, compliance/security requirements, platform constraints, non-negotiables.\n- **Candidate initiatives:** known platform/architecture/tech-debt items (even a rough list).\n\n**Missing-info strategy**\n- Ask up to 5 questions from [references/INTAKE.md](references/INTAKE.md).\n- If answers aren't available, proceed with explicit assumptions and list them under **Open questions**.\n\n## Outputs (deliverables)\n\nProduce a **Technical Roadmap Pack** in Markdown (in-chat; or as files if the user requests):\n\n1) **Technical Strategy (Rumelt)**: Diagnosis → Guiding policy → Coherent actions (template: [references/TEMPLATES.md](references/TEMPLATES.md))\n2) **Roadmap table** (Now/Next/Later or quarters) with owners, dependencies, milestones, confidence, and metrics\n3) **Initiative briefs** for the top 3–6 roadmap items (1 page each)\n4) **Dependency + risk register** (top cross-team deps, key risks, mitigations)\n5) **Alignment + governance plan** (review cadence, update rules, decision owners, comms template)\n6) **Risks / Open questions / Next steps** (always included)\n\nExpanded guidance: [references/WORKFLOW.md](references/WORKFLOW.md)\n\n## Workflow (7 steps)\n\n### 1) Intake + audience alignment\n- **Inputs:** User request; [references/INTAKE.md](references/INTAKE.md).\n- **Actions:** Confirm the audience, horizon, and roadmap \"shape\" (quarters vs Now/Next/Later). Identify the decision the roadmap must enable (funding, sequencing, headcount, trade-offs).\n- **Outputs:** Intake summary + explicit assumptions + open questions list (if any).\n- **Checks:** You can state: \"This roadmap is for <audience> to decide <decision> over <horizon> using <format>.\"\n\n### 2) Write the strategy (Rumelt: Diagnosis → Guiding policy → Coherent actions)\n- **Inputs:** Current-state signals; constraints; product/business context.\n- **Actions:** Draft a written strategy using the Rumelt structure. Keep it concrete: name the constraints and trade-offs.\n- **Outputs:** Technical Strategy section using [references/TEMPLATES.md](references/TEMPLATES.md).\n- **Checks:** A reader can answer: \"What's the problem?\", \"What's our approach?\", \"What actions are we taking (and not taking)?\"\n\n### 3) Build the initiative inventory (candidate \"coherent actions\")\n- **Inputs:** Candidate initiative list; strategy; incidents/metrics; architecture notes.\n- **Actions:** Normalize initiatives into a table (theme, outcome, why now, dependencies, effort, risk). Merge duplicates; split overly broad items.\n- **Outputs:** Initiative inventory (draft roadmap backlog).\n- **Checks:** Each item has an outcome + a \"why now\" tied back to the Diagnosis/Guiding policy.\n\n### 4) Prioritize + sequence (make trade-offs explicit)\n- **Inputs:** Inventory; constraints; dependencies; capacity assumptions.\n- **Actions:** Prioritize based on: (a) alignment to strategy, (b) risk reduction, (c) enabling product work, (d) cost/effort, (e) dependency criticality. Sequence via dependencies and \"first unlocks.\"\n- **Outputs:** Ranked list + sequencing rationale + explicit non-goals/cut list.\n- **Checks:** You can justify the top 3 items in 1–2 sentences each, including what you deprioritized.\n\n### 5) Convert into a roadmap (quarters or Now/Next/Later) with execution detail\n- **Inputs:** Ranked list; sequencing; calendar constraints.\n- **Actions:** Create the roadmap table with owners, milestones, dependencies, confidence, and success metrics. Add \"decision gates\" where uncertainty is high.\n- **Outputs:** Roadmap table + milestone highlights.\n- **Checks:** A team could start execution without guessing owners/dependencies; high-uncertainty items have a gate (spike/RFC/prototype).\n\n### 6) Draft initiative briefs + alignment plan\n- **Inputs:** Roadmap; top items; stakeholder map.\n- **Actions:** Write 1-page briefs for the top 3–6 items and a comms/governance plan (review cadence, update rules, decision owners).\n- **Outputs:** Initiative briefs + alignment/governance section (templates in [references/TEMPLATES.md](references/TEMPLATES.md)).\n- **Checks:** Stakeholders know when/how the roadmap will change and what inputs trigger a refresh.\n\n### 7) Quality gate + finalize\n- **Inputs:** Full draft pack.\n- **Actions:** Run [references/CHECKLISTS.md](references/CHECKLISTS.md) and score with [references/RUBRIC.md](references/RUBRIC.md). Ensure **Risks / Open questions / Next steps** are present with owners and dates where possible.\n- **Outputs:** Final Technical Roadmap Pack.\n- **Checks:** The pack is \"debuggable\": written, coherent, measurable, and reviewable.\n\n## Anti-patterns (common failure modes)\n\n1. **Roadmap-as-wishlist:** Listing every tech-debt item without a strategy or trade-offs. A roadmap without a diagnosis and guiding policy is just a backlog dump. Always tie items back to the Rumelt strategy.\n2. **Missing \"why now\" for initiatives:** Including items that have been on the list for years without explaining what changed. Every initiative must answer \"why this quarter, not next?\"\n3. **Audience mismatch:** Writing a deeply technical roadmap for an exec audience, or a high-level themes doc for the team that needs execution detail. Confirm audience before drafting.\n4. **Dependency blindness:** Sequencing initiatives independently without mapping cross-team dependencies, then discovering blocked work mid-quarter. Always surface the top 5 cross-team dependencies.\n5. **No decision gates for uncertainty:** Placing high-uncertainty bets (new framework, major migration) on the roadmap without spike/RFC/prototype gates, committing the team to a path before validating feasibility.\n\n## Quality gate (required)\n- Use [references/CHECKLISTS.md](references/CHECKLISTS.md) and [references/RUBRIC.md](references/RUBRIC.md).\n- Always include: **Risks**, **Open questions**, **Next steps**.\n\n## Examples\n\n**Example 1 (platform scaling):** \"We're seeing reliability issues and slow delivery. Create a 2-quarter technical roadmap and strategy we can review with leadership.\"\nExpected: a Rumelt-structured strategy plus a sequenced roadmap with owners, dependencies, milestones, and metrics.\n\n**Example 2 (architecture modernization):** \"We need an architecture roadmap to migrate off a legacy monolith while still shipping product features.\"\nExpected: explicit trade-offs, dependency-aware sequencing, decision gates, and a governance cadence to keep alignment.\n\n**Boundary example 1:** \"Write a detailed project plan with dates for every task for the next 6 months.\"\nResponse: use `managing-timelines` for delivery planning; this skill is for strategy → roadmap (themes/initiatives/milestones), not task-level scheduling.\n\n**Boundary example 2:** \"Help us decide which product features to prioritize for the next quarter.\"\nResponse: use `prioritizing-roadmap` for product-bet prioritization; this skill covers *technical* strategy and infrastructure roadmaps, not product feature selection.","tags":["technical","roadmaps","lenny","skills","plus","liqiongyu","agent-skills","ai-agents","automation","claude","codex","prompt-engineering"],"capabilities":["skill","source-liqiongyu","skill-technical-roadmaps","topic-agent-skills","topic-ai-agents","topic-automation","topic-claude","topic-codex","topic-prompt-engineering","topic-refoundai","topic-skillpack"],"categories":["lenny_skills_plus"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/liqiongyu/lenny_skills_plus/technical-roadmaps","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add liqiongyu/lenny_skills_plus","source_repo":"https://github.com/liqiongyu/lenny_skills_plus","install_from":"skills.sh"}},"qualityScore":"0.474","qualityRationale":"deterministic score 0.47 from registry signals: · indexed on github topic:agent-skills · 49 github stars · SKILL.md body (8,902 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-22T00:56:25.968Z","embedding":null,"createdAt":"2026-04-18T22:17:11.442Z","updatedAt":"2026-04-22T00:56:25.968Z","lastSeenAt":"2026-04-22T00:56:25.968Z","tsv":"'/cut':651 '/platform':113 '1':349,384,426,662,743,837,1011,1091 '12':259 '2':90,361,481,663,876,1024,1052,1129 '3':374,380,546,659,749,905 '4':91,387,602,935 '5':310,399,670,958,963 '6':257,381,411,729,750,1105 '7':424,785 'action':50,357,435,490,499,539,553,562,616,687,741,793 'add':700 'ai':167 'ai-product-strategi':166 'align':69,138,400,429,621,733,1088 'alignment/governance':765 'alway':417,868,954,1002 'answer':316,529,899 'anti':832 'anti-pattern':831 'appli':40 'approach':537 'architectur':24,282,560,1053,1058 'aren':317 'around':217 'ask':307 'assumpt':286,323,463,615 'audienc':236,428,438,906,916,932 'avail':319 'awar':1078 'b':624 'back':597,871 'backlog':586,866 'base':618 'bet':158,973,1150 'blind':937 'block':949 'bottleneck':283 'boundari':1089,1127 'brief':16,376,732,745,764 'broad':579 'build':547 'busi':223 'c':627 'cadenc':404,757,1085 'calendar':685 'candid':294,551,555 'capac':79,285,614 'chang':778,895 'chat':341 'check':469,525,587,653,712,771,821 'choos':155 'coher':49,356,489,552,827 'comm':409 'commit':984 'common':834 'comms/governance':754 'compliance/security':78,287 'concret':510 'confid':371,696 'confirm':436,931 'constraint':75,280,284,290,496,513,612,686 'context':498 'convert':671 'cost/effort':632 'could':715 'cover':20,1154 'creat':83,688,1022 'critic':635 'critiqu':37 'cross':393,944,960 'cross-team':392,943,959 'cultur':205,210 'current':268,493 'current-st':267,492 'd':631 'date':174,813,1098 'debt':28,112,846 'debug':137 'debugg':825 'decid':478,1132 'decis':237,249,407,448,701,760,965,1080 'deep':187 'deepli':910 'definit':150 'deliver':331 'deliveri':173,1021,1113 'dep':395 'depend':62,122,369,388,572,613,634,638,695,936,946,962,1047,1077 'dependency-awar':1076 'depriorit':669 'design':191 'detail':680,930,1094 'diagnosi':12,46,270,353,486,859 'diagnosis/guiding':600 'discov':948 'doc':923 'draft':500,584,730,791,934 'dump':867 'duplic':576 'e':633 'e.g':256 'ecosystem':190 'effort':573 'enabl':252,452,628 'eng':243 'engin':5,52,200,209 'engineering-cultur':208 'ensur':802 'even':299 'everi':843,896,1100 'exampl':1009,1010,1051,1090,1128 'exec':245,915 'execut':59,679,717,929 'expand':419 'expect':1035,1071 'explain':893 'explicit':322,462,609,647,1072 'face':220 'failur':835 'feasibl':992 'featur':221,1070,1135,1162 'file':344 'final':788,817 'first':151,640 'format':255 'frame':45 'framework':975 'full':790 'fund':453 'gate':702,727,787,966,983,994,1081 'goal':650 'govern':179,401,1084 'guess':719 'guid':47,354,487,861 'guidanc':420 'headcount':455 'help':1130 'high':706,722,920,971 'high-level':919 'high-uncertainti':721,970 'highlight':711 'hire':203 'horizon':254,439 'identifi':446 'improv':39,199 'in-chat':339 'incid':277 'incidents/metrics':559 'includ':418,666,882,1003 'independ':940 'info':305 'infrastructur':195,228,1158 'initi':15,114,295,375,549,556,564,582,731,763,881,897,939 'input':233,271,430,491,554,610,681,735,781,789 'intak':427,460 'inventori':550,583,611 'issu':1018 'item':298,383,580,589,660,724,738,751,847,870,883 'justifi':656 'keep':128,508,1087 'key':281,396 'know':773 'known':296 'later':264 'launch':77 'leadership':106,244,1034 'legaci':1064 'level':921,1125 'list':302,325,466,557,644,652,683,842,889 'major':976 'make':605 'manag':182,1110 'managing-timelin':181,1109 'mani':109 'map':740,942 'markdown':338 'matter':159 'measur':828 'merg':575 'metric':64,373,699,1050 'mid':952 'mid-quart':951 'migrat':977,1061 'mileston':61,124,175,370,694,710,1048 'minimum':234 'mismatch':907 'miss':304,877 'missing-info':303 'misunderstood':130 'mitig':398 'mode':836 'modern':1054 'monolith':1065 'month':258,260,1106 'must':251,451,898 'name':511 'need':94,153,172,185,212,928,1056 'negoti':293 'new':974 'next':89,263,415,806,904,1007,1104,1140 'non':292,649 'non-goal':648 'non-negoti':291 'norm':206 'normal':563 'note':561 'now-next-lat':261 'now/next/later':364,445,677 'off':458,517,608,854,1075 'open':328,413,464,804,1005 'orient':216 'outcom':224,569,592 'output':330,459,518,581,642,707,762,816 'over':578 'owner':60,368,408,693,761,811,1046 'owners/dependencies':720 'pack':11,336,792,820,823 'page':385,744 'pain':273 'path':989 'pattern':833 'place':969 'plan':53,120,402,734,755,1096,1114 'platform':25,188,194,289,1012 'platform-infrastructur':193 'platform/architecture/tech-debt':297 'plus':1041 'point':274 'polici':48,355,488,601,862 'possibl':815 'present':809 'priorit':119,163,231,603,617,1137,1145,1151 'prioritizing-roadmap':162,230,1144 'problem':149,533 'problem-definit':148 'problem/outcome':144 'proceed':320 'process':202 'produc':54,332 'product':157,168,214,246,629,1069,1134,1149,1161 'product-bet':1148 'product/business':74,497 'project':1095 'qualiti':786,993 'quarter':76,92,266,366,443,675,902,953,1025,1141 'question':311,329,414,465,805,1006 'rag':178 'rank':643,682 'rather':225 'rational':646 're':1015 'reader':527 'reduct':626 'references/checklists.md':795,796,997,998 'references/intake.md':313,314,433,434 'references/rubric.md':800,801,1000,1001 'references/templates.md':359,360,523,524,769,770 'references/workflow.md':421,422 'refresh':784 'regist':390 'reliability/latency/cost':275 'reliabl':26,1017 'request':348,432 'requir':235,288,995 'respons':1107,1142 'review':104,403,756,830,1032 'richard':41 'risk':63,389,397,412,574,625,803,1004 'roadmap':3,10,13,18,33,56,72,86,101,127,164,215,232,240,335,362,382,441,450,474,585,674,690,708,736,776,819,839,856,912,980,1027,1044,1059,1120,1146,1159 'roadmap-as-wishlist':838 'rough':301 'rule':406,759 'rumelt':42,352,485,506,874,1038 'rumelt-structur':1037 'run':794 'scale':279,1013 'schedul':1126 'scope':19 'score':798 'section':521,766 'see':1016 'select':1163 'sentenc':664 'sequenc':454,604,636,645,684,938,1043,1079 'shape':442 'ship':1068 'signal':276,495 'skill':1116,1153 'skill-technical-roadmaps' 'slow':1020 'source-liqiongyu' 'spike/rfc/prototype':728,982 'split':577 'stakehold':35,739,772 'start':716 'state':269,472,494 'step':416,425,807,1008 'still':1067 'strategi':6,32,44,98,169,189,306,351,484,503,520,558,623,850,875,1029,1040,1119,1156 'structur':507,1039 'success':698 'summari':461 'surfac':955 'tabl':14,363,567,691,709 'take':542,545 'task':1101,1124 'task-level':1123 'team':201,394,714,926,945,961,986 'tech':27,111,126,845 'tech-debt':110,844 'technic':2,9,17,22,71,97,227,334,350,519,818,911,1026,1155 'technical-roadmap':1 'technical/engineering/architecture':85 'templat':358,410,767 'theme':278,568,922 'themes/initiatives/milestones':1121 'tie':596,869 'time':253 'timelin':183,1111 'top':272,379,391,658,737,748,957 'topic-agent-skills' 'topic-ai-agents' 'topic-automation' 'topic-claude' 'topic-codex' 'topic-prompt-engineering' 'topic-refoundai' 'topic-skillpack' 'track':176 'trade':457,516,607,853,1074 'trade-off':456,515,606,852,1073 'trigger':782 'turn':4,21,115 'uncertainti':704,723,968,972 'unclear':146 'unlock':641 'updat':405,758 'us':1131 'use':82,142,147,161,180,192,207,229,480,504,522,996,1108,1143 'user':219,347,431 'user-fac':218 'vagu':67 'valid':991 'via':637 'vs':265,444 'want':197 'when/how':774 'wishlist':68,841 'without':718,848,857,892,941,981 'work':23,630,950 'workflow':423 'write':131,482,742,908,1092 'written':31,96,502,826 'year':891","prices":[{"id":"dba8208c-361e-47bc-8422-ffa1de572c4a","listingId":"e961d442-07a8-4b20-8694-e896141e5695","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"liqiongyu","category":"lenny_skills_plus","install_from":"skills.sh"},"createdAt":"2026-04-18T22:17:11.442Z"}],"sources":[{"listingId":"e961d442-07a8-4b20-8694-e896141e5695","source":"github","sourceId":"liqiongyu/lenny_skills_plus/technical-roadmaps","sourceUrl":"https://github.com/liqiongyu/lenny_skills_plus/tree/main/skills/technical-roadmaps","isPrimary":false,"firstSeenAt":"2026-04-18T22:17:11.442Z","lastSeenAt":"2026-04-22T00:56:25.968Z"}],"details":{"listingId":"e961d442-07a8-4b20-8694-e896141e5695","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"liqiongyu","slug":"technical-roadmaps","github":{"repo":"liqiongyu/lenny_skills_plus","stars":49,"topics":["agent-skills","ai-agents","automation","claude","codex","prompt-engineering","refoundai","skillpack"],"license":"apache-2.0","html_url":"https://github.com/liqiongyu/lenny_skills_plus","pushed_at":"2026-04-04T06:30:11Z","description":"86 agent-executable skill packs converted from RefoundAI’s Lenny skills (unofficial). Works with Codex + Claude Code.","skill_md_sha":"64565b1cd016c48a7888a27c8802ac5d3faf9da2","skill_md_path":"skills/technical-roadmaps/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/liqiongyu/lenny_skills_plus/tree/main/skills/technical-roadmaps"},"layout":"multi","source":"github","category":"lenny_skills_plus","frontmatter":{"name":"technical-roadmaps","description":"Turn engineering strategy into a Technical Roadmap Pack (diagnosis, roadmap table, initiative briefs)."},"skills_sh_url":"https://skills.sh/liqiongyu/lenny_skills_plus/technical-roadmaps"},"updatedAt":"2026-04-22T00:56:25.968Z"}}