by Michał Cukierman
4 min read
by Michał Cukierman
4 min read
They keep the platform afloat. They know how each integration works, how the component libraries are built, and why the CDN caching rules are defined the way they are. They know how to build HTML components, write multi-threaded applications, manage integrations, tune the database, configure dispatchers, or deploy a hotfix to a running production server without breaking it.
Is it the invincible Iron Man, Tony Stark, at the helm? Well, actually I've just described a typical DXP Senior Developer/Architect role.
Mature monolithic platforms are notorious for their complexity. They are hard to handle on a daily basis, even more so when it comes to advanced tasks like scaling, extending, or integrating them with other systems. This complexity is connected to the structure of Digital Experience Platforms (DXPs), the range of responsibilities they carry in an organization, and the number of features they provide.
It’s no surprise it can be extremely difficult to form a talented team around legacy technologies. Nor is the underlying reason. The evolution of developer roles in DX platforms mirrors the evolution of the platforms themselves. Traditional DXPs, initially designed to manage and publish content, have grown over time to incorporate various functionalities. Similarly - developers, who earlier used to just create CMS components and manage workflows, now find themselves needing to oversee everything related to the platform.
It takes a special kind of person to be able to thrive in a role like that, and they are rare and far between. Those developers have years of experience across a wide range of technologies, a deep understanding of the business's needs, and exceptional problem-solving capabilities. Despite these skills, these so-called "generalists" often bear the burden of a vast amount of responsibilities. They juggle numerous tasks ranging from coding to managing servers to configuring complex systems, often under tight deadlines and high pressure.
However, relying solely on such generalists can be detrimental to a company's productivity and innovation. According to research cited by Harvard Business Review, companies that over-rely on generalists can suffer in terms of productivity. While these individuals are capable of solving a broad range of problems, they often take longer to deliver solutions due to their overly broad focus.
As we read in the same study, specialists are not only easier to replace in a team, but they also have an easier time collaborating. When roles are clear, it simplifies how work is divided.
However with traditional DXP building a specialized team can prove to be an impossible challenge. Dependencies in traditional DXPs force developers to understand all of its underlying technologies, making it harder to find developers with the necessary expertise on top of their specialization.
To be able to build teams of specialized developers with exactly specified responsibilities, we need a modular, standard-based platform that is also more attractive for non-CMS developers, who would like to understand it better and get more involved in development. It would make it possible to be less dependent on external consultants and development service providers.
For a comprehensive platform support, team like that could include:
Frontend developer
CMS components developer
Integrations developer
Machine learning engineer
Services developer
DevOps or SRE
Cloud engineer
While some roles could be combined into a single profile, a one-size-fits-all approach should be avoided altogether. By specializing, developers not only bring focused expertise to the team, they are also more likely to stay engaged and committed. They often prefer to hone their skills in specific technologies, making specialization not only beneficial to the organization, but also a desirable path for the developers themselves.
To attract people and make them productive, it’s important to provide them with the right tools. For DXP, a loosely coupled system like StreamX is the most optimal way to go. It consists of several independent modules that communicate via distributed messaging or eventing systems, allowing work to be divided between several teams.
This setup allows teams from different companies to collaborate on the development of a single platform, without interference or disruption. A contract-based collaboration between modules also prevents a single vendor from introducing a hard to replace, platform-wide framework, saving potential future costs.
Adopting a specialized team approach to DXP development and management is more than just an operational improvement. It's a powerful strategic shift that can drive efficiency, facilitate innovation, and ultimately strengthen your digital experience platform team. A super team, if you will - with each member bringing their unique strengths to the table.
Screenshot from the famous Avengers Shawarma Scene