What skills get you promoted?

The biggest Senior → Staff jump is ai — mentioned in 53% of Senior Product Designer postings but 77% of Staff ones.

Cell color = share of that role's active listings mentioning the skill. Darker = higher.

Skill mention share by roleAssociateJuniorUXPDSeniorStaffPrincipalLeadDirectorHeadvisionslope = +5.0 pp/levelvision × Associate: 38% (n=3)38vision × Junior: 25% (n=4)25vision × UX: 36% (n=36)36vision × PD: 45% (n=64)45vision × Senior: 47% (n=137)47vision × Staff: 62% (n=90)62vision × Principal: 87% (n=27)87vision × Lead: 57% (n=26)57vision × Director: 82% (n=51)82vision × Head: 57% (n=4)57hiringslope = +3.8 pp/levelhiring × Associate: 38% (n=3)38hiring × Junior: 25% (n=4)25hiring × UX: 14% (n=14)14hiring × PD: 32% (n=46)32hiring × Senior: 32% (n=95)32hiring × Staff: 37% (n=54)37hiring × Principal: 65% (n=20)65hiring × Lead: 33% (n=15)33hiring × Director: 26% (n=16)26hiring × Head: 86% (n=6)86leadershipslope = +3.8 pp/levelleadership × Associate: 13% (n=1)13leadership × Junior: 13% (n=2)13leadership × UX: 21% (n=21)21leadership × PD: 17% (n=24)17leadership × Senior: 26% (n=75)26leadership × Staff: 46% (n=66)46leadership × Principal: 58% (n=18)58leadership × Lead: 30% (n=14)30leadership × Director: 53% (n=33)53leadership × Head: 29% (n=2)29systemsslope = +3.0 pp/levelsystems × Associate: 63% (n=5)63systems × Junior: 31% (n=5)31systems × UX: 70% (n=71)70systems × PD: 57% (n=81)57systems × Senior: 58% (n=169)58systems × Staff: 64% (n=93)64systems × Principal: 90% (n=28)90systems × Lead: 67% (n=31)67systems × Director: 77% (n=48)77systems × Head: 71% (n=5)71engineeringslope = +2.8 pp/levelengineering × Associate: 13% (n=1)13engineering × Junior: 38% (n=6)38engineering × UX: 27% (n=27)27engineering × PD: 63% (n=90)63engineering × Senior: 65% (n=189)65engineering × Staff: 75% (n=109)75engineering × Principal: 87% (n=27)87engineering × Lead: 63% (n=29)63engineering × Director: 63% (n=39)63engineering × Head: 14% (n=1)14mentoringslope = +2.6 pp/levelmentoring × Associate: 13% (n=1)13mentoring × Junior: 0% (n=0)mentoring × UX: 0% (n=0)mentoring × PD: 6% (n=8)6mentoring × Senior: 7% (n=20)7mentoring × Staff: 20% (n=29)20mentoring × Principal: 19% (n=6)19mentoring × Lead: 13% (n=6)13mentoring × Director: 5% (n=3)5mentoring × Head: 43% (n=3)43strategyslope = +2.4 pp/levelstrategy × Associate: 25% (n=2)25strategy × Junior: 25% (n=4)25strategy × UX: 13% (n=13)13strategy × PD: 29% (n=42)29strategy × Senior: 43% (n=125)43strategy × Staff: 63% (n=91)63strategy × Principal: 68% (n=21)68strategy × Lead: 41% (n=19)41strategy × Director: 37% (n=23)37strategy × Head: 29% (n=2)29craftslope = +2.3 pp/levelcraft × Associate: 25% (n=2)25craft × Junior: 13% (n=2)13craft × UX: 24% (n=24)24craft × PD: 46% (n=66)46craft × Senior: 52% (n=151)52craft × Staff: 70% (n=102)70craft × Principal: 68% (n=21)68craft × Lead: 39% (n=18)39craft × Director: 40% (n=25)40craft × Head: 29% (n=2)29prototypingslope = +2.0 pp/levelprototyping × Associate: 25% (n=2)25prototyping × Junior: 25% (n=4)25prototyping × UX: 38% (n=38)38prototyping × PD: 52% (n=75)52prototyping × Senior: 45% (n=133)45prototyping × Staff: 47% (n=68)47prototyping × Principal: 45% (n=14)45prototyping × Lead: 48% (n=22)48prototyping × Director: 8% (n=5)8prototyping × Head: 71% (n=5)71htmlslope = +1.3 pp/levelhtml × Associate: 0% (n=0)html × Junior: 0% (n=0)html × UX: 8% (n=8)8html × PD: 3% (n=5)3html × Senior: 8% (n=22)8html × Staff: 3% (n=5)3html × Principal: 0% (n=0)html × Lead: 0% (n=0)html × Director: 2% (n=1)html × Head: 29% (n=2)29partnershipslope = +1.3 pp/levelpartnership × Associate: 0% (n=0)partnership × Junior: 0% (n=0)partnership × UX: 2% (n=2)partnership × PD: 10% (n=14)10partnership × Senior: 8% (n=23)8partnership × Staff: 11% (n=16)11partnership × Principal: 10% (n=3)10partnership × Lead: 4% (n=2)4partnership × Director: 10% (n=6)10partnership × Head: 14% (n=1)14llmslope = +0.8 pp/levelllm × Associate: 0% (n=0)llm × Junior: 0% (n=0)llm × UX: 2% (n=2)llm × PD: 3% (n=5)3llm × Senior: 2% (n=6)llm × Staff: 1% (n=1)llm × Principal: 3% (n=1)3llm × Lead: 2% (n=1)llm × Director: 0% (n=0)llm × Head: 14% (n=1)14reactslope = +0.6 pp/levelreact × Associate: 0% (n=0)react × Junior: 0% (n=0)react × UX: 2% (n=2)react × PD: 7% (n=10)7react × Senior: 5% (n=16)5react × Staff: 2% (n=3)react × Principal: 0% (n=0)react × Lead: 0% (n=0)react × Director: 0% (n=0)react × Head: 14% (n=1)14agentsslope = +0.4 pp/levelagents × Associate: 0% (n=0)agents × Junior: 0% (n=0)agents × UX: 3% (n=3)agents × PD: 6% (n=9)6agents × Senior: 6% (n=17)6agents × Staff: 10% (n=14)10agents × Principal: 10% (n=3)10agents × Lead: 7% (n=3)7agents × Director: 5% (n=3)5agents × Head: 0% (n=0)aislope = +0.3 pp/levelai × Associate: 38% (n=3)38ai × Junior: 38% (n=6)38ai × UX: 57% (n=58)57ai × PD: 66% (n=95)66ai × Senior: 53% (n=156)53ai × Staff: 77% (n=111)77ai × Principal: 68% (n=21)68ai × Lead: 63% (n=29)63ai × Director: 31% (n=19)31ai × Head: 43% (n=3)43framerslope = +0.1 pp/levelframer × Associate: 0% (n=0)framer × Junior: 0% (n=0)framer × UX: 2% (n=2)framer × PD: 2% (n=3)framer × Senior: 3% (n=8)framer × Staff: 1% (n=1)framer × Principal: 6% (n=2)6framer × Lead: 4% (n=2)4framer × Director: 0% (n=0)framer × Head: 0% (n=0)roadmapslope = +0.1 pp/levelroadmap × Associate: 0% (n=0)roadmap × Junior: 6% (n=1)6roadmap × UX: 3% (n=3)roadmap × PD: 3% (n=4)roadmap × Senior: 9% (n=26)9roadmap × Staff: 18% (n=26)18roadmap × Principal: 10% (n=3)10roadmap × Lead: 2% (n=1)roadmap × Director: 5% (n=3)5roadmap × Head: 0% (n=0)mlslope = +0.1 pp/levelml × Associate: 0% (n=0)ml × Junior: 0% (n=0)ml × UX: 0% (n=0)ml × PD: 2% (n=3)ml × Senior: 3% (n=8)ml × Staff: 3% (n=5)3ml × Principal: 6% (n=2)6ml × Lead: 0% (n=0)ml × Director: 0% (n=0)ml × Head: 0% (n=0)vectorslope = +0.0 pp/levelvector × Associate: 0% (n=0)vector × Junior: 0% (n=0)vector × UX: 1% (n=1)vector × PD: 0% (n=0)vector × Senior: 0% (n=0)vector × Staff: 0% (n=0)vector × Principal: 3% (n=1)3vector × Lead: 0% (n=0)vector × Director: 0% (n=0)vector × Head: 0% (n=0)evalsslope = 0.0 pp/levelevals × Associate: 0% (n=0)evals × Junior: 0% (n=0)evals × UX: 0% (n=0)evals × PD: 0% (n=0)evals × Senior: 0% (n=0)evals × Staff: 0% (n=0)evals × Principal: 0% (n=0)evals × Lead: 0% (n=0)evals × Director: 0% (n=0)evals × Head: 0% (n=0)figmaslope = -0.4 pp/levelfigma × Associate: 63% (n=5)63figma × Junior: 56% (n=9)56figma × UX: 42% (n=42)42figma × PD: 47% (n=67)47figma × Senior: 53% (n=155)53figma × Staff: 36% (n=52)36figma × Principal: 52% (n=16)52figma × Lead: 43% (n=20)43figma × Director: 16% (n=10)16figma × Head: 86% (n=6)86accessibilityslope = -0.5 pp/levelaccessibility × Associate: 38% (n=3)38accessibility × Junior: 25% (n=4)25accessibility × UX: 23% (n=23)23accessibility × PD: 8% (n=11)8accessibility × Senior: 20% (n=58)20accessibility × Staff: 16% (n=23)16accessibility × Principal: 23% (n=7)23accessibility × Lead: 30% (n=14)30accessibility × Director: 15% (n=9)15accessibility × Head: 29% (n=2)29codeslope = -1.3 pp/levelcode × Associate: 13% (n=1)13code × Junior: 13% (n=2)13code × UX: 5% (n=5)5code × PD: 20% (n=29)20code × Senior: 18% (n=53)18code × Staff: 19% (n=28)19code × Principal: 10% (n=3)10code × Lead: 4% (n=2)4code × Director: 3% (n=2)3code × Head: 0% (n=0)motionslope = -1.3 pp/levelmotion × Associate: 25% (n=2)25motion × Junior: 44% (n=7)44motion × UX: 4% (n=4)4motion × PD: 5% (n=7)5motion × Senior: 7% (n=20)7motion × Staff: 10% (n=15)10motion × Principal: 16% (n=5)16motion × Lead: 9% (n=4)9motion × Director: 18% (n=11)18motion × Head: 14% (n=1)14interactionslope = -1.8 pp/levelinteraction × Associate: 38% (n=3)38interaction × Junior: 38% (n=6)38interaction × UX: 70% (n=71)70interaction × PD: 57% (n=82)57interaction × Senior: 68% (n=198)68interaction × Staff: 62% (n=90)62interaction × Principal: 71% (n=22)71interaction × Lead: 30% (n=14)30interaction × Director: 11% (n=7)11interaction × Head: 43% (n=3)43visualslope = -2.7 pp/levelvisual × Associate: 75% (n=6)75visual × Junior: 56% (n=9)56visual × UX: 70% (n=71)70visual × PD: 61% (n=87)61visual × Senior: 60% (n=176)60visual × Staff: 61% (n=89)61visual × Principal: 65% (n=20)65visual × Lead: 39% (n=18)39visual × Director: 35% (n=22)35visual × Head: 57% (n=4)57typographyslope = -3.3 pp/leveltypography × Associate: 25% (n=2)25typography × Junior: 50% (n=8)50typography × UX: 9% (n=9)9typography × PD: 15% (n=22)15typography × Senior: 11% (n=31)11typography × Staff: 6% (n=9)6typography × Principal: 6% (n=2)6typography × Lead: 4% (n=2)4typography × Director: 13% (n=8)13typography × Head: 0% (n=0)researchslope = -3.5 pp/levelresearch × Associate: 75% (n=6)75research × Junior: 44% (n=7)44research × UX: 53% (n=54)53research × PD: 64% (n=91)64research × Senior: 61% (n=179)61research × Staff: 62% (n=90)62research × Principal: 74% (n=23)74research × Lead: 39% (n=18)39research × Director: 26% (n=16)26research × Head: 29% (n=2)29
Each cell shows the percentage of that role's active listings mentioning the skill (rounded). Empty/zero cells stay light.

How to read this

Rows are sorted by seniority slope — a linear-regression fit of mention-share against the seniority ladder. Skills that climb steeply left→right (top of the chart) are the strongest signals for promotion to Staff/Director. Skills that flatten or fall (bottom) are table-stakes vocabulary that fade as seniority increases. Hover any skill label to see its slope in percentage-points-per-level.

Rows: 28 focus skills. Columns: 10roles ordered by coarse seniority. Color encoding is Viridis (perceptually uniform, color-blind safe). Cell value = share of that role's active listings mentioning the skill.