Skill Stacking: The 4-step framework supercharging dev teams
Skill Stacking supports skill growth across different verticals as an engineer’s career develops.
This post is originally from the Educative Blog
Given today’s competitive job market, I wanted to share a framework that helped me advance in my career and inspires my company’s direction today: Skill Stacking.
Skill Stacking is a term we came up with at Educative to better encapsulate a developer’s learning journey. It refers to devs building up multiple skills across various skill verticals, beyond just mastering just one skill.
Like a company’s tech stack expanding to meet the needs of a growing product, Skill Stacking involves skill growth across different verticals as an engineer’s career develops.
While I’ve seen highly specialized developers succeed, developers who show a comprehensive skill set are more likely to receive leadership opportunities. Developers with a wide range of skills are typically equipped to handle a wider range of problems, and thus are able to drive more business impact at most companies. As a result, these developers are typically well-positioned to advance and level up within their organization.
At Educative, our engineering leaders implement a Skill Stacking framework because it helps our teams move fast and build solid products. Second, it provides developers opportunity for growth and advancement, while empowering them to be more impactful contributors. Finally, it equips managers to build dynamic, well-rounded teams.
But what does Skill Stacking look like in practice? Today, I want to speak to both engineering managers and individual contributors about how Skill Stacking can support you (and your team).
Let’s break down the following:
Which skills developers and teams should invest the most time in building
How Skill Stacking can lead to faster ramp-up times for new team members
How Skill Stacking encourages long-term developer growth
The 4-part Skill Stacking Framework
A Skill Stacking framework breaks down skill development across four main verticals:
Technical skills
Communication skills
Collaboration skills
Compliance skills
Each vertical represents a core component of a developer’s job. These verticals influence career mobility and team impact.
1) Technical Skills
Technical Skill Stacking involves combining multiple skills to write code better and faster. The four layers include:
Learning basic programming languages
Leveraging libraries and frameworks to do more with less code
Utilizing other sub-systems and databases
Leveraging APIs and services to build more extensive applications
2) Communication Skills
Developers who build foundational writing and communication skills are able to better leverage their technical skill sets and collaborate more effectively with other team members.
Most developers’ formal education consists of building small projects independently that depend less on the need for teamwork and thus offer fewer opportunities for collaboration.
However, in the workplace, developers are now upheld to coding standards and workflows that require:
Writing down information for posterity
Writing code that is manageable for another developer
Speaking with various stakeholders
Writing and speaking institutional knowledge and design decisions
Practical communication skills preserve vital institutional knowledge during the knowledge transfer phase of a developer’s life cycle. This also prevents unnecessary redundancies across development teams.
This plays hand-in-hand with developing an engineer’s collaboration skills across multiple teams, team members, and stakeholders.
3) Collaboration Skills
Effective collaboration is vital for developer teams to succeed in the following areas:
Code reviews
Providing feedback
Collaborating with other teams
Interviewing
Recruiting
Mentoring
Onboarding
For developers looking to advance their careers, collaboration skills are just as important as technical foundations. Building great products is always a team effort — managers want to see that you can accelerate the team by building productive working relationships with peers, leadership, and stakeholders.
As a leader, I approach building collaboration in the same way I approach technical upskilling. Every developer has growth areas that we can target by setting goals, outlining concrete steps to achieve those goals, and providing feedback to keep learning on track. Investing in developer collaboration reduces friction in team workflows and helps developers create more innovative solutions.
4) Security Skills
With rapid internationalization and scaling of software, it becomes increasingly important that developers build their understanding of compliance. This attention to compliance includes:
Privacy laws
International regulations
Security concerns
As with communication skills, junior developers have fewer opportunities to concern themselves with encryption, safely storing data, or whether APIs are getting hacked. However, in organizations with larger interfaces, security vulnerabilities could result in costly consequences if developers aren’t properly trained.
Skill Stacking & Developer Onboarding
Skill Stacking and developer onboarding go hand-in-hand, which brings me back to a topic I wrote about a couple of months ago. In short, “The Three Stages of Developer Onboarding” speak to the distinct phases of a developer’s growth “life cycle,” each with its unique demands.
Our Skill Stacking framework can reduce ramp-up time and enhance the onboarding experience for developers and managers. Here is what each stage of onboarding can look like when we integrate Skill Stacking:
Stage 1: Minimum workable knowledge
Developers build minimum workable knowledge across the aforementioned four verticals (Technical Skills, Communication Skills, Collaboration Skills, and Security Skills). This enables developers to contribute code quickly with minimal supervision.
Stage 2: Team-oriented developer
Developers step up to contribute to team-level activities, such as code reviews and deploying to production. To facilitate productive working relationships, developers continue advancing across the same four verticals, with particular focus on collaboration and communication.
Stage 3: Leading with long-term thinking
Developers contribute to the long-term success of the product and the team through design discussions, recruitment, peer mentorship, and participation in performance reviews.
To ensure developers keep growing, managers provide concrete checkpoints and guidance, with scaffolding from a framework that tells them the specific skills they should improve at which time.
(Read more here: https://engineeringenablement.substack.com/p/onboarding-through-an-engineering)
Skill Stacking & Long-term Developer Growth
Skill Stacking sets developers up for success right from the start during onboarding. However, this framework also encourages long-term growth, helping teams drive business impact and developers move up the career ladder.
Why developers should think about Skill Stacking
Whether you are a new or experienced software engineer, it’s inevitable that your tech stack will expand to keep up with product growth. To solve new problems and make valuable contributions to your team, you will need to develop new skills across different verticals.
As you build a more comprehensive skill set, you may be able to take on more interesting projects and responsibilities within your organization. This can open up new opportunities for career advancement and promotion. Proactively seeking learning opportunities helps you build momentum towards the next engineering level.
Why engineering leaders should think about Skill Stacking
Between top tech companies over-hiring developers (and we’ve been seeing the consequences of this with rampant layoffs across the industry) and ballooning compensation rates for top talent, most companies have no choice but to hire developers from less experienced talent pools.
With a dedicated Skill Stacking framework, companies can help junior software engineers develop into effective team members. Meanwhile, developers already on the team may need upskilling support to cross the chasm of engineering levels, where additional skills from various verticals come into play.
Investing in developer growth across experience levels sets teams up for success and facilitates the maturation of your organization. Whether or not your developers choose to stay with your organization in the long run, every great manager I have ever known prioritizes developer learning — on their team and beyond.
Closing thoughts for EMs and ICs
This should go without saying, but I’ll say it anyway: experienced developers are valued for so much more than just their technical skills and how fast they can type code.
Every great team I have ever been a part of has been anchored by developers who excel across the following four verticals:
Technical Skills
Communication Skills
Collaboration Skills
Compliance Skills
For engineering managers reading this newsletter, I recommend exploring learning resources that can help developers build skills across each vertical. You can sign up for a free trial to learn how Educative’s courses can help your team develop their skill stack and become more productive.
For developers, I hope you find this newsletter helpful in framing your understanding of what technical and soft skills are required to advance in your career.
If you’re looking to hear more actionable advice about building up a dev team from an engineering manager at Adobe, click down below for our on-demand webinar.
I hope this was helpful, and please don’t hesitate to let me know what you’d like to read about next in our next post!
As always, happy learning!