CACI International has become the first federal systems integrator to join GitLab's strategic partnership program as the company adds more capabilities around software development.
Companies are forever trying to show how they are different from the competition.
Sometimes it isn’t much more than pretty words and graphics on their website. But other times, companies move to show customers they are doing substantive things that others aren’t.
CACI International recently joined the GitLab Partner Program as its first federal systems integrator. GitLab is a platform that enables DevOps, the software development practice that also brings in IT operations.
DevOps and its close cousin DevSecOps, which layers in security to software development, are areas that CACI has developed as a core capability.
“As a company, we are focused on investing ahead of need,” said CACI Chief Technology Officer Glenn Kurowski. “That means technology but underneath that is software, software development; its data and the analytics on that data.”
CACI has invested in delivery of what it calls "software development at scale," which Kurowski likened to a three-legged stool.
“One leg is agile software development, one leg is open modern software architecture and one leg is DevSecOps,” Kurowski said.
One advantage of DevSecOps is the pace at which software is delivered to the agency and to effectively deliver at that pace requires collaboration among between the contractor and the various customer stakeholders.
“It means shifting things to the left. ‘You shift security, you shift quality assurance and inspections, you shift verification,” Kurowski said. “You do things earlier but you have to do it collaboratively as a team. You don’t insert things on the backend that causes you to go all the way back to square one.”
DevSecOps requires multiple steps and feedback loops for testing and bringing in stakeholders.
“To do that you need to have tools so all those people can do their jobs at a high velocity and at a high quality,” Kurowski said.
A software development team's work can be broken into buckets, but “they’re not necessarily sequential,” he said.
Agile has its own language in many ways. There’s the “backlog,” which is the requirements. There are “epics,” which are broken down into “features.” Features are further broken down into “stories,” which are short descriptions of the small pieces of desired function that you want.
The stories include points around complexity, risk and the amount of work required. That’s just the planning phase, Kurowski said.
“You need to involve a lot of people in the work. You should involve security. You should involve quality assurance and of course you involve your developers and product managers,” he said. “So the whole idea is everybody's involved continuously so that you don't have a bunch of developers who throw it over the transom to a bunch of operators who say, I can't deploy this because the configuration doesn't work, and they throw it back.”
To do this work, agile development teams need tools and that’s where GitLab comes in, Kurowski said.
GitLab has flexibility to be used as a service or it can be used on the customers’ systems, depending on the customer and any restrictions they may have.
CACI and GitLab have named each other strategic partners. CACI will train their employees to use GitLab and become certified in their capabilities. The plan is to create a community of practice and it has a C-suite champion, which is Kurowski.
Kurowski will lead the effort to push those capabilities down into the company and across the different parts of CACI. The company will allow developers to use something besides GitLab but those will be limited because CACI wants to create repeatable solutions.
The partnership means that CACI can go to GitLab for advice and it will have access to GitLab’s many commercial customers and bring some of those practices to the federal market.
“That’s why we’re excited about GitLab because we see it as a very disruptive technology,” Kurowski said. “It’s the first DevSecOps platform at scale.”
"At scale” is important to CACI when you consider some of the large software development contracts such as the Homeland Security Department’s $1.88 billion BEAGLE contract to modernize back office systems and processes, plus a separate $880 million Army contract for a force management system.
CACI is working on hundreds of applications at any one time.
“That’s a lot to coordinate and you’d like to have a platform that provides you an easy way to determine what work you want to do and when you want to do it,” Kurowski said.
“The measure of success for us is working software."