GE Capital offers equipment leases, mobile apps, and financial products for corporate customers. GE Capital’s Matt Merchant, Global Managing Director—DevOps, spoke with DevOps.com about development initiatives and processes at the financial services giant.
According to Merchant, his team leads the charge in driving
(A) the DevOps cultural transformation throughout IT,
(B) the adoption and expansion of DevOps tooling, and
(C) the change in governing structures in order to operate at a much higher velocity while continuing to meet regulatory requirements.
That last mouthful speaks to a key pain point that GE Capital’s DevOps processes relieve: how to speed development while remaining compliant. GE Capital does it by automating security and compliance. You’ll read how shortly, but first, the mobile app.
The Mobile App for Fleet Drivers
GE Capital provides vehicle fleet leases globally for enterprises with delivery drivers, sales people, and others who travel on company business. The mobile apps that GE Capital provides as part of the leasing platform are many and vary from country to country. For this discussion, Merchant takes an app deployed in Sweden as the example.
The web-based app enables drivers to locate nearby gas stations, tire shops, repair shops, and windshield replacement services. Drivers also use the app to download routes, to collect refueling, mileage, and oil change / service data, and to log their hours. The app creates a number of efficiencies.
Drivers used to get shop data from a physical driver’s manual that they had to pore through to find the closest service provider. “The instant you hand them that catalog it’s out of date. Now they get real-time updates on their phones,” says Merchant. They also used to hand log their hours with pad and pen and then return to the office at day’s end to type this data into a computer. “Now they do it in real-time, and are done at the end of the day,” says Merchant.
Mobile App Development Before & After DevOps
In GE Capital’s old Waterfall mobile app development process, releases took six to eight weeks. Challenges included an inconsistent code repository, manual scripting and testing, and sitting before change, architectural, and security review boards every time developers evolved the code. “Because all that is so painful, you don’t want to repeat the process very often, and so you bundle more changes into a single release, which increases the risk of error,” says Merchant.
With DevOps, GE Capital added Chef configuration management and created an “over-arching umbrella” development process that the company calls ArchOps. ArchOps covers CD/CI and virtualized cloud platform management while leveraging a Lean Six Sigma approach to swift Agile application development, explains Merchant. This enables fast iterations, consistent code, automated testing and, using Chef, fast VM spin-ups. And there are no more change management reviews.
Achieving “Compliance at Velocity”
To achieve what Chef calls “Compliance at Velocity” and deliver compliant, auditable code at a high speed, GE Capital reconsidered its toll gate processes and artifacts. “We applied a value stream map to our governance model, removing 60-percent of our toll gates and 70-percent of our artifacts,” says Merchant. This shrunk mobile app release delivery to days.
GE Capital automated compliance by automating test output analysis. When the analysis shows that a portion of the code failed a test, the code goes back to development, which must fix it before retesting, further analysis, and eventual promotion to production. “That removed the need for a change advisory board,” says Merchant.
And when an auditor requests test results, release dates, or copies of specific code releases, Merchant simply pulls the given code and all the test results, design artifacts, and governance data that are bundled with it from the Git repository and hands it over.
Once Through Development, Please
Now with a DevOps mindset in command at GE Capital, all developers use the Eclipse IDE, which transfers the code directly into the company’s Git repository. Once the code enters Git, developers can run jobs using tools such as Jenkins, do Fortify application scanning, and perform UI testing using GE Capital’s home grown tool called Rainbow.
Once the code passes all tests, the system sends it into a pre-production staging environment. “GE Capital built the staging environment using Chef, which calls out to servers, spins up the environment, and places the code inside it,” says Merchant. User acceptance and remaining tests happen there. Then the Chef code that created the internal environment creates the production environment, ensuring application stability upon release.