Diese Case Study ist auch auf Deutsch verfügbar
The requirements for the relaunch of the web platform and its technical performance were high: As a new digital customer interface, it had to be both the company’s website and an online shop. An appealing design as well as user-friendly navigation were therefore essential features. The individual configurability of many of the products sold by Phoenix Contact is an absolute USP on the market. In other words, the online shop is about more than merely selling articles from stock. Above all, the platform is intended as a planning tool with specially designed B2B solutions, such as ordering of samples and products that can be customized by integrating or linking to independent configurators.
Furthermore, a number of basic conditions were derived from the weaknesses of the existing platform:
- Improved stability
- Higher speed
- Faster updates
- Responsiveness
- Continuous relaunch capability
Another challenge lay in the international sales with a presence in almost 50 countries and in 23 languages, with regional user experiences and localized display of roughly 150,000 products per country. All in all, the many different elements of the customer journey had to work together frictionlessly to position Phoenix Contact even more aggressively as an e-commerce company. One thing was clear from the start: A ready-made software solution would not fit the bill.
Independent systems for a full-featured solution
The organizational unit at Phoenix Contact responsible for the relaunch is DXM (Digital Customer Experience Management). This is where the digital touchpoints between Phoenix Contact and its customers are developed. The unit was founded for creation of the platform, which bears the internal designation CRISP (Continuous Relaunchable International Sales Platform).
The included term “Relaunchable” is one of many requirements to ensure the ability to independently make and release modifications to the platform and led eventually to the selection of an architecture based on self-contained systems (SCS).
The core idea behind self-contained systems (SCS) is to break up a technically complex system into multiple small and maximally independent systems, in this case smaller web applications that are easier to work with. Self-contained systems therefore satisfy precisely the requirements Phoenix Contact has placed on the new platform. There are relatively few dependencies. This makes the system significantly faster and more error-tolerant. Plus, it enables more flexible responses to new requirements. New features or updates can be installed quickly and easily, which also means simpler extensibility. The self-contained systems are oriented around the customer journey. Every touchpoint becomes its own domain, such as Explore, Search, Product or Customer Interaction. The four initial domains eventually grew to a total of eight. Each of them has a dedicated team that is responsible for the entire domain. This allows new functions to be quickly developed, implemented and released — fully independently of each other.
Make and buy – A compromise as a competitive advantage
The classic decision for software is “make or buy”. In other words, it is a choice between an already existing standard solution or a custom development. Both have their advantages and disadvantages. But neither was a proper fit for the requirements of CRISP. The goal was to find the best technical solution that would be a major step ahead of the competition. Over the course of a joint hackathon between Phoenix Contact and INNOQ, the idea of “make and buy” was conceived.
Technical highlights
Software architecture:
- Self-contained systems, microservices, asynchronous communication and data replication
- Server-side and client-side frontend integration, server-side includes
- Security gateway, reverse proxy, legacy backend integration
- Continuous delivery, feature flags
Software development:
- Java, Spring Boot, Thymeleaf, Maven, JUnit
- Javascript, node.js, vue.js, HTML, CSS, NPM, Jest, Nuxt
- REST, JSON, JSON Schema, Swagger
- Gitlab, Nexus, Docker, Conduktor
Service infrastructure:
- AWS Cloud, managed Kafka service, OpenSearch, OpenLogging, Kibana
- DocumentDB, Postgres, FactFinder, Contentful, Dynatrace
- nginx, Okta, SEO URL mapping service, Google Tag Manager
For some applications, there were already well functioning standard tools on the market, such as search engines or job order management. These were simple to integrate into the platform, while the developer teams were able to focus on what matters most: special applications aligned with the core business and the needs of Phoenix Contact and its customers. This includes, for example, the integration of existing and heterogeneous ERP systems of international subsidiaries or the major topic of product configuration.
Partnership of equals
The collaboration between INNOQ and Phoenix Contact can be characterized as a strategic partnership that was continuously expanded over the course of the development process. The basis for collaboration at Phoenix Contact is also a principle that INNOQ is committed to: not sitting behind closed doors as an independent development; rather, working together hand-in-hand with all parties involved. This means more than simply sharing technological know-how and experiences and building expertise together within the company. It also means modeling and establishing new and inclusive forms of teamwork and proposing new organizational frameworks. Everyone profits from such an approach. Because the collaboration is more congenial and marked by mutual respect, because better results are achieved more quickly by working together and - above all - because it allows the company to continue the project over the long term without the support of INNOQ.
In making the decision to bring a service provider on board for the project, what criteria were particularly important to you?
Above all, it was important to us to have an independent consulting company that would support us in the further development of our teams and not merely sell a product or handle the entire implementation themselves. The service provider had to have extensive technical expertise as well as a willingness to engage in knowledge transfer. They also needed to demonstrate a pragmatic approach in order to bring such a large project over the finish line on time and within the planned budget. In addition, they had to be a good fit for the casual and liberal working culture we wanted to establish in the new DXM unit. On the other hand, they also needed to understand that we are not a start-up but rather part of a large corporation with all the associated challenges.
Why did you choose INNOQ?
INNOQ met all our criteria to make it onto the shortlist, and it was clear from getting to know them in the initial workshops that the collaboration with the INNOQ consultants simply worked tremendously well at both the technical and personal levels. We particularly liked their pragmatic approach: on the one hand, laying out all the possibilities; on the other, not simply advocating one as the best, but working with us to discover which was the right solution in the context of the project. With this level of trust right from the start, it was clear that INNOQ was the right strategic partner for Phoenix Contact. Another reason was that INNOQ was able to support us throughout the entire development cycle as a one-stop shop, eliminating the need to coordinate multiple service providers. That lightened the project workload significantly. And, naturally, also because as the originators of the concept of self-contained systems (SCS), INNOQ could offer us all the relevant expertise first hand.
What did you learn from the project? What would you do the same and what different?
Over the several years of collaboration, both Phoenix Contact and INNOQ have learned a lot from each other. One success factor was definitely the creation of mixed teams, which was critical for achieving the transfer of knowledge and exchange of experience that we were after. The project and the developers at Phoenix Contact profited enormously from this, and we would certainly do the same again. Another lesson learned involved remote work, which we were not initially familiar with at Phoenix Contact, but especially thanks to our experiences with INNOQ, we came to appreciate it. It may come as no surprise that this helped us out considerably during the pandemic. If we did it over, we would work that way from the beginning. We also learned that, while the consultants have a strong influence on decisions, we are ultimately responsible for which advice we accept and how we pursue our vision within the context of the company.
One final question: Would you do it again?
Yes, definitely. The success of our collaboration and the mutual understanding that developed have encouraged us to continue the strategic partnership with INNOQ in the future as well.
At the moment, the internal development department DXM at Phoenix Contact consists of about 40 employees. Overall, a total of about 60 internal and external persons are working on the platform. INNOQ supports most of the teams with at least one person.
The agile teams are all structured as such that all disciplines are represented that are necessary to build and operate an SCS. Because not every team is working at full capacity all the time, it also happens that UX or DevOps experts, for example, will take on these roles in other teams during a later phase of the project. The team organization is therefore constantly in flux and is adapted to the development status of the platform.
A music streaming service as organizational model
As was previously mentioned, the new platform also changed the way work is done at Phoenix Contact. This is because the SCS architecture model only works when structures and processes are also adapted. The example used in this case was an organization built according to the Spotify model. The agile approach that was first employed by the music streaming surface Spotify is now considered a role model for other large and agile companies. It improves the collaboration and technical knowledge sharing among independently organized teams and ensures that the primary objective of the platform does not fall to the wayside.
The Spotify model is characterized by division of the organization into squads, tribes, chapters and guilds. A squad is the basic unit in the development department, with all the necessary skills from design to release and production. A tribe encompasses multiple squads who are working in related areas in order to promote the exchange of knowledge. Chapters bring together members of different squads who have similar skills or tasks, such as product owners. They meet regularly to discuss special challenges. A guild is a community with shared interests. In other words, a group that spans tribes and consists of people who want to share knowledge and methods with each other.
The collaboration with INNOQ allowed us to optimally complement our skillset. We set high technical standards for the project, but INNOQ lived up to them in every way. Everyone pulled together and worked side-by-side as equals. In other words, we could not have chosen a better partner for the implementation.
Peter WhitmoreDirector Engineering Digital Business Platform, Phoenix Contact
The Spotify model works similar to a soccer team. The team - in other words a squad - consists of people with specific skills: offense, midfield, defense, etc. The defense players together form a chapter. And the trainers - that is, the product owners, chapter leads or tribe leads - don’t just sit on the bench, they play along. And when the team wins, it isn’t about individuals winning. Everyone wins together.
Phoenix Contact has taken this organizational model as a template but allows itself the freedom to adapt it to the company’s specific needs. The DXM department with CRISP plays the pioneering role here. Everyone is firmly committed to the principle of self-organized teams. The platform is the ideal example within the company of how this works.