A dojo for software
Specialized facilities help software developers master new skills
Slow and steady no longer wins the race.
In this fast-changing world, the traditional, measured pace of technology development doesn't work any more for military customers. Software development in particular must move at the rapid pace of consumer tech, where apps appear and operating systems are updated almost daily. So Raytheon has built two software "dojos," dedicated facilities where teams from across the company meet for intensive software skills building.
In the software industry, a dojo — from the Japanese “place of the way,” common in the practice of martial arts — describes an immersive learning space. Raytheon opened its dojos in the winter of 2018 — one at its Cityline campus outside of Dallas, Texas, and the other at its Colorado site, near Denver. Each can run three six- to 12-week sessions concurrently, with teams ranging in size from six to 30 software engineers.
The dojos are interactive training grounds for teams to master DevOps,a rapid-development discipline from the commercial software world, in a risk-free environment and in the most hands-on way possible. Participants using their actual work projects adopt DevOps practices that automate processes and focus on collaboration between teams to shorten the software development lifecycle.
“We’ve created a space for teams to fail fast and recover fast,” said Ebby Oladimeji, a Raytheon dojo coach. “It’s OK to fail, because from mistakes, we discover issues quickly and correct them immediately. We are helping them solve real problems.”
The Dojo helps teams get up to speed quickly using DevOps tools while they continue to do real work. Dojo coaches identify knowledge gaps and teach them the skills they’ll need to continue their work using DevOps principles and tools on their current and future programs.
“DevOps is really about taking software from the development world and pushing it as fast as possible into the operations space,” said John Catrone, Raytheon’s Director of DevOps Transformation. “When a program starts in the Dojo, one team might be missing one or two skill sets, another team might be missing six, so that’s where our coaches really help them learn.”
Recently, Raytheon’s Dojo coaches helped a software team working to speed delivery of an intelligence program. A five-member team identified process improvements they could make, set goals and decided how to measure achievements. The team then used an iterative process, breaking down the project into smaller parts so any bugs can be fixed quickly. They planned, tested, executed, deployed and repeated while collaborating with systems architects and both the delivery and pipeline teams.
“The Dojo helped us identify processes, weaknesses, and strengths of our current team,” said Taylor Bonar, team member and Dojo student. “It helped us mature our team at a faster rate than we could have before.”
The team used a DevOps pipeline, which automates the start of code integration, runs tests, checks for cyber vulnerabilities and deploys software to production.
“We learned to utilize DevOps practices, which helped us organize and prioritize our tasks,” said Neil Muranaka, team member and Dojo student. “This helped us become more focused and efficient when dealing with issues.”
Each week, teams also conduct two sprints and two demonstrations. A sprint is a set period of time during which specific work needs to be completed and readied for review. Each sprint begins with a planning meeting and concludes with a review by the end user.
“The sprints help build muscle memory,” Catrone said, “so when these software developers go back to their programs after their session, they can apply what they learn when they transition back into their work environments.”