sommersby - stock.adobe.com
How Goldman Sachs migrated to cloud native software development
Investment bank Goldman Sachs has selected GitLab as the platform to manage its software development life cycle, supporting 9,000 engineers
During a presentation at GitLab’s first European conference, Ace Chandler, vice-president and software engineer at investment bank Goldman Sachs, described the company’s journey using software development lifecycle management (SDLC), and explained why the bank decided to use GitLab.
Software development lifecycle tools are at the centre of the bank’s software development ecosystem, managing the commitment of code to repositories, and the integrated development environment together with policies, monitoring and issue tracking.
Chandler manages the bank’s London software development lifecycle engineering team, which is mainly focused on GitLab, but also has responsibility for a number of other older SDLC platforms that the firm currently maintains.
He told delegates at the London GitLab Commit event that the team provides and look after these platforms that support 9,000 engineers at Goldman Sachs.
SDLC drives strategic software engineering at the bank. To support this, Chandler’s team provides processes and tools to enable engineers to use new programming languages and the associated ecosystem around these new languages.
Prior to deploying GitLab, he said the bank had 10 SDLC tools, some of which were 25 years old. These systems were developed in different areas of the business with approval chains to adhere with the regulations that govern the financial sector.
A modern approach
Chandler said the bank wanted to start modernising how it ran its software development lifecycle.
“We were given a mandate from the CIO to provide a ‘git’ experience for engineers,” he said, adding that this was because it was increasingly obvious that new joiners in the engineering teams were familiar with git as their preferred code repository.
The bank had a lot of custom tooling based on the ‘subversion’ code repository tool. But according to Chandler, this was not the tool people coming out of university were used to using.
“It also corresponded with a time when the bank was looking at cloud, Kubernetes and containerisation,” he said.
As a result, the decision to adopt a git-based approach to SDLC became a natural choice for managing cloud native software development. In December 2017, the bank selected GitLab as its new SDLC tool.
Chandler said that the first three months of 2018 was taken up integrating GitLab into Goldman Sachs. Integration was required since the bank did not plan to replace all of its existing SDLC systems, so GitLab needed to coexist with these.
GitLab went live in April 2018. According to Chandler, the bank experienced a huge adoption rate among its 9,000 developers both for new projects and in migrating projects from the older SDLC systems.
“As we engineer more controls on GitLab, we can move more projects off the older SDLCs,” he said.
The software development lifecycle supported through GitLab also fits into the quality assurance (QA) process. Using the concept of “shift left”, the quality of code committed to the git repository through GitLab can be monitored. The QA team can then provide feedback directly to developers, shifting the emphasis of code quality back to the developers who wrote the code.
He said the bank also plans to migrate the system off its existing on-premise Kubernetes cluster into a private instance on Amazon Web Services (AWS). According to Chandler, this should facilitate proper cloud native development.
Beyond software development, in December 2018, Goldman Sachs’ principal strategic investments group announced it had invested $20m in GitLab.
Read more about SDLC
- Does the developer operating system play a part in the SDLC equation anymore?
- Some applications need cryptographic algorithms to test and work properly. Expert Judith Myerson discusses this division in terms of the software development lifecycle.