Finding smart solutions to our customers' toughest challenges is vital to protecting the security of our nation and our allies in an ever-changing world. At General Dynamics Mission Systems, we are dedicated to delivering products, services and support to our customers in the defense and intelligence communities that can help make our world a safer place.
Seeking innovative, new ways to do business allows us to not only fulfill our role as trusted adviser to our customers but also helps us stand out as a leader in our industry. As part of our Pioneers of Progress series, we are highlighting some of our colleagues who are making a difference by thinking outside the box and reshaping the way we work.
Kevin Knott, team member and senior principal software engineer in Annapolis Junction, Maryland, talks about the team's innovative approach to offering data gathering and distribution enhancements through software development.
Tell us about your role at General Dynamics Mission Systems.
I've been with GD for almost 17 years. I'm the deputy program manager, engineering, for a program in support of government-led software development. We provide software development services as directed by our customer.
What sparked your team's interest in pursuing an innovative solution to a customer problem?
Our customer supports innovation through forward-thinking and embracing new technologies. Through our innovations, we're improving the responsiveness of our team and quality of the systems we deliver and maintain.
Tell us about your team's innovation and the benefits you've seen since implementing your solution.
Our work integrates data from dozens of different sources and provides many different output formats, reports and user interfaces. All of these integration points are subject to frequent change, and on this program, we needed to be able to react quickly. Previously, we could release updates once every other week with about an hour of system downtime. To cut down on this cycle time, in the last three years we've introduced a number of new technologies and techniques, including Kubernetes (an open-source, cloud-based container system for automating software application, deployment, scaling and management), Apache Kafka (open-source stream-processing software for handling real-time data feeds) and a microservices-based architecture, which structures applications as collections of highly maintainable, testable, independently deployed and loosely coupled services. Now we average three updates to the production system per day and can update the system without any system downtime. In fact, we've performed more than 1,000 releases since our last system outage in June 2019. Also, our development cycle time has improved. There used to be a minimum of two days between when a code change was committed and when it was scheduled for testing and deployment. Now we can get a change out in 10 minutes without changing our process because the testing and deployment phases have been completely automated. In addition, we've quadrupled the amount of data that we process. Our contract has an innovation section in its award fee plan, and we've scored 100% for every period from our customer.
What was the best part about working on this innovation?
This was a team effort. Everyone on the team bought into the plan and worked together to accomplish a full modernization of the system. There were a lot of challenges and difficult periods while we learned the technologies and how to properly implement them, but the team stuck together and rose to the occasion.
What was the most challenging aspect?
We needed to pull off a modernization of the system – essentially every piece of code was re-implemented – without stopping live system processing. This was an extremely complicated effort. Several team members were involved in coordinating this work to make sure we could upgrade without a system outage. We joked internally that we were building the plane while it's in the air.
What was the most significant takeaway for you?
A great team can accomplish anything.
What advice would you give to others looking for innovative solutions to customer problems?
Every year the quality and quantity of free, open-source software improves. Have a program strategy to quickly integrate, test and upgrade these libraries can dramatically improve your team's productivity and throughput.