Fostering a Thriving Learning Culture: Key to Software Team Success
Discover the pivotal role of a robust learning culture in software team success. Learn actionable strategies to cultivate an environment that fosters continuous learning, enhances productivity, and fuels long-term career growth for developers.
Mar 28, 2024 • 6 Minute Read
When you ask developers to tell you stories about the best team they’ve ever been on or their favorite software project, you’ll likely hear diverse experiences: novel technologies, high impact products, and wonderful co-workers. But one thing often stands out across the many different elements of positive developer experience: the impact of learning culture on developers’ overall wellbeing and what they remember as defining a great team.
Learning culture is when teams have productive behavioral patterns that honor and protect developers’ needs as learners.
These patterns might include valuing and retrospecting on mistakes, sharing insights, and coding patterns that match the best science around how people learn. It might also include making developers’ learning an open team goal, or even an organizational goal. And being on a team with a strong learning culture has a long-term impact on developers’ careers.
At Pluralsight Developer Success Lab, we study how the most innovative software teams work, learn, and thrive. We recently asked more than 1,200 developers a series of questions about how teams were doing on four key socio cognitive factors to measure what we call Developer Thriving, and found that it significantly predicts productivity. In my first articles, I shared about Developer Agency and Motivation & Self Efficacy. In this article we’ll explore what it means to create a strong, lasting Learning Culture on your software team.
To start building a learning culture, it’s important to realize that even though it’s easy to say we support learning in the workplace, we don’t always put action behind that support. A poster on the wall that says “Everyone Can Learn!” won’t build a learning culture if a software engineer who encounters unexpected friction can’t tell their manager they need extra time for upskilling. Similarly, when developers recieve unnecessarily discouraging reactions in response to relatively minor mistakes and feel like there’s not time and space to share in-draft work, they might take away the feeling that mistakes aren’t allowed.
Many of us carry around an assumption that learning culture just happens naturally for motivated people. But our research has found that many developers struggle to find a good learning culture in their careers. Because we take learning culture for granted instead of seeing it as something we need to build, engineering managers, in turn, might be missing a critical step they could take to support their teams. And in an era of increasing time pressure and economic uncertainty, investments in learning are often the first thing we cut from our teams’ calendars.
Developer learning creates productivity
One common misconception about learning is that it just happens in the classroom. Once you’re out of school, you’re just applying what you already know, right? So learning programs can be seen as incidental bonuses, a nice to have, not a must have, to be used only when developers need to learn a new language or take an outside course.
But actually, the science of developer productivity tells us differently. Developers need to learn constantly as they innovate in new codebases, upskill in new technologies, and create products that have never been built before. Developers may be strong in a single technical skill set, but technology is rapidly changing. Complex code work requires constant drafting and iteration, which draws on learning behaviors. And developers need to learn as they encounter new approaches in each other’s work. Developers also need a culture of learning to tackle the diverse tasks of modern software organizations, such as giving strong technical support during code review, thinking about architecture, and building new skillsets as they transition into management and leadership roles. Learning is a core activity for any engineering organization, not just something people squeeze out of magic time and weekends.
In fact, when we asked developers to define their own personal success, many developers included learning goals. “Your job is…to learn and grow because you're going to have to be able to take on more challenges, and grow as a leader,” one senior engineer told us. “Having time to learn makes me much more efficient later,” another said. And our research at scale confirms this: teams with strong learning cultures are significantly more productive. We think this is because learning culture creates a long-term positive cycle for developers across an organization, including better retention, long-term career paths for junior developers, better code quality, and more creative innovation.
If you don’t protect your learning culture, you may be setting up your teams for failure. Research in psychology has found that organizational choices can influence people’s growth mindsets. When software engineers work inside of organizations that punish iteration, demand perfection, and routinely treat collaboration and coordination behaviors as less of a technical contribution than solo code work, engineers feel profoundly discouraged. This has both a personal and a productivity cost.
Raise the learning culture by making it shared and visible
We are always scanning our environments to understand whether or not we are in a safe place to learn. This means that engineering managers can play a key role in developers’ learning culture.
Software engineers in our research told us that they feel they’re in a learning culture when their effort is celebrated, not just their output. Setting goals for pair programming or mob programming is one clear way for managers to lift learning culture. But managers can also lift learning by noticing when developers are encountering unexpected friction, and asking questions to diagnose why the friction is happening and what we can learn from it. Modeling making learning an out-loud conversation on engineering teams gives people the message that overcoming mistakes is normal, expected, and even celebrated.
Another way to support learning culture is to take careful stock of the language and assumptions we use about technical skillsets and coding ability. Research on learning culture tells us that we should avoid language that implies that our abilities are fixed, like describing people as a “born coder” or saying someone “just has a brain for engineering problems.” Instead, managers should praise their team’s effort and shine a light on good learning behaviors that drive problem-solving, which can have long-term effects on developers’ motivation.
One way to reinforce learning culture is to pay attention to how learning time pays off in unexpected, cross-functional, and cross-project outcomes. Learning culture is created when people see that trying new skills unlocks not just their own success, but shared success. Internal learning events like hackathons have been shown to increase people’s plans to pursue new goals after the hackathon, particularly in developing their technology skillsets. Leadership investments in social opportunities for learning, like hackathons and discovery time initiatives, conferences, and other learning-boosting opportunities, is an important way to underline organizational commitment to learning culture.
Developers in our research defined learning as a core skill in software engineering, and it predicts developer productivity in their day-to-day work. To maintain software velocity on our teams, we need to support learning cultures for everyone, not just new hires and junior developers, and not just when it’s easy. Senior engineers in our research shared that they often wished they had more time to provide mentorship on their teams and share their career-long experiences, and many of them worried about whether their mentoring and teaching was actually valued by their leadership. One way to help this is by providing space in town halls and other company-wide platforms to celebrate mentorship, and by ensuring that performance evaluations include credit for learning activities. Learning culture doesn’t just happen by magic: leaders can steer their engineering organizations towards these productive and important behaviors.