Skip to main content
Search
Forrester Software Design

Best practices in software development have, no surprise, evolved over the last 20 years. But some methodologies used across the world have not evolved with it. In the age of modernization, technology leaders search high and low for the best delivery models, frameworks, and processes to push better, faster, and stronger code out of the door. However, technology executives are stuck between a rock and a hard place: how can you ship software at the speed of light AND recruit, retain, and engage scarce digital talent?

A recent webinar hosted by Kin + Carta provided a deep-dive look at the current state of agile product design and examined ways to foster a culture of flexibility to attract and retain top software talent for your delivery teams. Gretchen Goodrich, Director of Delivery at Kin + Carta and guest Jeffrey Hammond, Vice President, Principal Analyst at Forrester shared insights on new agile approaches including an overview of FleXP, a new delivery methodology that aims to put flexibility back into the development process.

Following is a summary of some of the key points outlined in the webinar.

To learn more about this flexible approach to software delivery

Watch our FleXP Webinar

You can't put on a great show if you don't have great performers and these days good talent can be really hard to find. According to a survey by Indeed, nearly 9 in 10 respondents (86 percent) said they find it challenging to find and hire technical talent, with more than a third (36 percent) saying they find it “very” challenging. In Chicago alone, there are four Java programmer jobs for every three qualified applicants.

Kin + Carta has personally felt this pain too, seeing these trends play out on a daily basis with the company now sourcing more than 50 percent of its digital talent versus only 14 percent in 2017. Companies are having to spend more money and work much harder just to get that right talent in the door. So, how do you secure and retain the talent you need to create an effective development team?

One of the best things you can do to start attracting talent is to modernize your tech stack. To explain Modernization, Gretchen used a good old fashioned ghost story.

In 1884 Sarah Winchester, widow and heir to the Winchester rifle fortune began construction on a small, unfinished farmhouse in San Jose, California. No blueprints were created, no architect was engaged. Sarah’s vision was guided by “good spirits” who she spoke with through a medium. Over time, the sprawling mansion grew to seven stories but with no planning and a mercurial vision holder, staircases ascended to nowhere, windows were installed against interior walls, and secret rooms housed expensive masterpieces or worthless junk.

You may be wondering what this has to do with Modernization. One of Kin + Carta’s clients used the Winchester House to describe their infrastructure. Old, fragile systems of record are plastered over with many-layered veneers of services, with little strategic architectural planning and less documentation. Mission critical customer features may go into the house, but they may never come out. Modernization is the story of how Kin + Carta is exercising the ghosts from these haunted mansions and building our clients their dream homes in the cloud.

Talented software engineers want to be in a place where they can use their creative abilities to do things that matter. They want to make an impact and see the results of their work quickly. They want to work on the new stuff―the cool stuff, which underscores the need to continuously upgrade systems and tools to not only drive productivity but to attract and retain top performers.

Along with the challenges created by an intensely competitive market, there are also the complexities inherent in the software development process itself. In waterfall software development, you typically have a series of handoffs, where one specialist hands off the project off to another. While every team needs specialists, the problem is those specialists can become silos, which is a major disadvantage when applications and updates need to get out the door quickly.

Understand that when managing software developers you are managing creatives. Therefore in selecting processes and the platforms, you need to ask the question, “How is this going to enable and empower my creative workers?” In your quest to scale agile, be careful not to fall into the “process trap.”

The reality is that software is not something that needs to be (or should be) created in assembly-line fashion. Every application has a certain amount of uniqueness to it―more like a painting. Although there are algorithmic processes that support it, at its core, software development is not algorithmic. Rather it is heuristic. Therefore, the question to ask is, "What are the management models or the process models that we can put in place to support heuristic work, enable it, and where appropriate, provide the creative freedom that that will keep our top talent engaged and happy?”

Depending on a project’s specific goals and objectives, software design teams today rely on a number of different development methodologies. Each one has its own strengths, weaknesses, and works effectively in certain situations. Since there are many ways to solve software problems, there are really no right and wrong solutions.

The challenge in many environments, however, is that the process becomes an all-or-nothing proposition. “We saw this firsthand when our teams began to adopt traditional XP,” Goodrich says. “As we expanded our modernization efforts, we embraced this idea of extreme programming. But within the teams that were working on these strict extreme programming engagements, we saw team morale drop immediately and some of our top performers leave the company.”

“If you lock yourself into a rigid process where there are no exceptions, don't be surprised when your top talent gets frustrated decides to leave,” Goodrich says. “An unyielding focus on process takes away the freedom to explore, which is what creative people need to feel fulfilled in their profession.”

As a way to infuse flexibility back into XP practices, Kin + Carta has created a blended approach that combines the speed and agility of XP with the planning and predictability advantages of Scrum. It’s a people-centric approach to software delivery that Kin + Carta calls FleXP. The methodology looks beyond strict implementation practices and focuses on managing software delivery as a set of creative processes.

Unlike more rigid implementations of XP, there's no requirement that everything has to pair program. “You're hiring smart people; don't tell them what to do,” Goodrich says. “Rather, ask them what they need. Let the individual pairs negotiate their own schedule of work when they are pairing.”

The ability of teams to set baseline metrics, blend skill levels, and work from preferred locations gives team members the flexibility to explore, grow and innovate without the confines of a particular methodology. That's the difference between a process-focused and people-centric approach.

You might be wondering if you're giving the teams all this autonomy, all this flexibility, how do you know as their leader how they're doing, when they need help, or when they're a mature team? When you combine the autonomy of the process with an accurate measurement of the value you are delivering, your team can decide how to fine-tune their work and individual practices to make themselves more effective. The important thing is to make sure you are measuring the performance metrics that truly matter. There are four core domains you need visible on your measurement dashboard.


  1. Team morale. If morale is high, you’ve got a process that is working and a product they are really proud of and excited about. If your morale starts to dip that is a sign that your delivery is going to dip quickly after that.
  2. Cycle time. Measured from start to finish, cycle time tells you your speed-to-value. You need to know not only build time, but also how long it takes to define it, prioritize it and design it.
  3. Quality. Part of your product quality measurement should be speed-to-fix. That is, when a bug shows up in your production environment, how fast can you fix it? Having those issues linger in production weighs on an engineer’s sense of craftsmanship and diminishes morale.
  4. Business value. Perhaps the most important metric to measure is business value. You need to find a way to tie your team’s effort back to business value. Make sure your team is motivated by that sense of shared purpose from a development effectiveness perspective.

Remember that what you nurture grows. Celebrate what is working. Create the virtuous cycle that really forms that culture where your star performers can shine.

The agile road to success doesn’t mean you need to choose between XP or Scrum as a development team. Your success will come from putting your focus on engineers, development teams, and your desired outcomes. A focus on engineering enablement and the right mix of engineering practices and methodologies can lead to smooth sailing and buy-in from your development teams. There’s no right answer to delivery methodologies, but if you put your focus on your people and the business value you are delivering, you’ll reach your goals.

To learn more about this flexible approach to software delivery

Watch our FleXP Webinar