Porsche Informatik, a subsidiary of Porsche Holding Salzburg, has worked with Red Hat on the implementation of a private cloud to streamline the development of software to support new services across the business.
The private cloud, powered by Red Hat OpenShift, is being used by the automotive trading software organisation in Volkswagen Group to support digitisation across Porsche, VW, Audi, Seat, Skoda, Bentley Bugatti, Lamborghini, Ducati MAN and Scania.
As is the case across the automobile industry, IT teams are being asked to develop new applications in increasingly shorter periods of time, and these developments have to be market-ready faster than ever. This includes tailored business software for wholesale and retail and after-sales service, as well as financial services and the distribution of replacement parts.
Porsche Informatik’s role is to work with the rest of the business, collaborating on the development of new products that can be used by users and dealerships. It has reorganised to support DevOps and enable teams to work in a more agile way using containers and a private cloud via OpenShift.
Christian Köberl, software architect at Porsche Informatik, says Porsche Informatik restructured two years ago to support an ever-changing market by increasing the release speed of new software. “We changed the organisations: some teams were already agile, and made small iterations of software releases, but other parts had releases once or twice a year. We wanted all parts to more to agile and autonomous teams.”
Inspired by the likes of Spotify and Amazon, Köberl says Porsche Informatik wanted to avoid long times in software projects where documents are exchanged upfront. Instead, he says the software development teams work with a minimum viable product and short release cycles.
Köberl says the new organisation comprises 42 development teams, each with 10 people. “A fifth of the employees are dedicated to infrastructure, and we have 300 developers.”
More than 500 digitisation specialists work on the software, which runs in 26 countries on three continents. The products developed are individually adapted to meet the specific requirements of each market.
In total, this encompasses some 160 software products with millions of users daily. Projects include the used-car portal Das WeltAuto, the Car Configurator, which enables customers to design their next car, and the PIA Service app, which supports the digitisation of service activities seen from the customer’s point of view.
A private cloud to modernise IT
OpenShift is also being used as part of Porsche Informatik’s drive to modernise its legacy IT, by reengineering legacy code for the private cloud.
Johannes Grumböck, infrastructure architect, Porsche Informatik says the legacy environment that was in place before the move to the private cloud was restrictive, in terms of the operating systems, software packages, patch management and provisioning of hardware available to the development teams. For instance, a new server for a development team could take days or weeks to provision, and it was not possible to run software like MongoDB or PostgreSQL.
To support greater flexibility and agility, the company is also using the OpenShift container platform to orchestrate customer applications and support a continuous integration/continuous deployment (CI/CD) pipeline integration for software development.
The project began with a private cloud, hosted by datacentre provider eww ITandTEL, in April 2017. The hosting service provider used Red Hat OpenShift Container Platform for a PaaS environment in order to make rapid application development and quick deployment possible. This environment has now been fully migrated into an in-house datacentre.
Grumböck says Porsche Informatik can now easily migrate legacy infrastructure to its cloud. When legacy teams redesign parts of the legacy system, they can rebuild parts of it on the private cloud, and can cut out features of the monolithic applications, recreating the functionality as a microservice.
While not strictly microservices, Köberl says Porsche Informatik has been developing loosely coupled IT functionality for two decades. He adds: “We never really thought about microservices; it just happened. We are not doing really small microservices, but we have services that are coordinated and do one thing really well.” These can be connected together in new ways to build additional services.
The new platform has also given development teams the ability to use the newest versions of languages like PHP or Ruby. Previously, they were limited to Java and Python, but they now have the ability to deploy a new container and run out new technology.
Compliance and standards for software
DevOps offers development teams flexibility but this flexibility must be balanced with the need for teams to follow best practices and comply with company standards.
In comparison to traditional software development, developers have more flexibility on one hand, and more responsibility on the other in an evolved organisational culture.
Porsche Informatik takes two approaches to compliance. Porsche Informatik has established communities of engineers who promote best practice. For instance, there are communities for UX designers, DevOps, technical architects and security experts.
The idea is that the member of the development team responsible for, say, security, will share information and document best practices with member of the security community; the UX expert would be on the UX community. “We try to get best practices back to the teams,” says Köberl.
These communities are also able to take on board new ideas, says Grumböck. “We are trying not to strictly enforce standards. If someone has a better idea for a new framework, we can incorporate it into our standard and make it easy to use. If something is easy to use then it is more likely people will use it.” This enables Porsche Informatik to adopt a softer approach to encourage developer teams to adopt a corporate standard.
Enforcement is the other aspect of compliance. Porsche Informatik uses sonarcube, a tool which enables continuous code inspection. The tool runs a code check to report on critical issues or so-called “blocker” issues in the source code.
The teams submitting the code are responsible for correcting the identified problem areas. Porsche Informatik has also setup a control system, which validates all the code being produced by its development teams three to four times a year, to ensure that there are no critical issues that have been resolved. These checks enable Porsche Informatik to keep the teams aligned with business standards.
Each year, Porsche Informatik runs 150 to 200 checks covering everything from infrastructure to software development as a self-assessment exercise to see if the code being produced by its DevOps teams adheres to the company’s own rules. As an example, he says the control system measures the downtime of a software component. If this is below a certain threshold, quality may be an issue.
While DevOps teams have the flexibility to build applications using their own tools and platforms, Porsche Informatik encourages them to use its own. “The software architects and engineering environment team are provided with a software stack that is easy to use,” says Grumböck.
“Most of the teams will stick to our software stack. If there are good reason to build a new service that requires a another software library for some special feature, then we build a pilot project. If this works out, we can can then build a business services.”
Digital innovation management
For entirely new services and API, Porsche Informatik has one team dedicated to digital innovation management. “They are the first ones to experiment with voice APIs, chatbots, VR or augmented reality. Other development teams can consult them.”
According to Red Hat, layering microservices on top of Kubernetes and Linux containers can help businesses respond to competitive pressures. As Porsche Informatik found, a private cloud also provides a platform to start reengineering components of legacy systems as microservices.
As Joe Fernandes, vice-president, products, cloud platforms, Red Hat explains: “Companies are starting to understand the concept of ‘immutability’ for infrastructure, and are looking for the ability to simply replace infrastructure with new, upgraded elements rather than constantly maintaining and patching existing artefacts. This creates more secure environments, especially in modern IT environments that are frequently changing.
“Kubernetes is also not just for net-new applications; it can serve as a keystone for modernisation efforts that transform existing applications into cloud-native services.”