ROI

Does Spotify Backstage make development simpler?

On my continuous journey for simplifying business IT, I recently noticed a new apparently promising FOSS product. Spotify Backstage. Spotify Backstage is a FOSS product developed at Spotify.

On March 16, 2020 a first public FOSS version of the Backstage product was announced by Spotify.  According to the announcement Spotify created this product for internal use about 4 years ago. With this FOSS release of Backstage everyone can now take advantage of this solution as used by Spotify.

What problem does Backstage solve?

In essence the goal of Backstage is to increase the speed for creating custom business applications.

The core problem that Backstage tries to solve is to simplify the process for developing internal business applications. This means solving the problem for finding all crucial information, software tools and services that are needed when developing custom business applications within an enterprise company.

Core solution

The solution Backstage brings is a portal based solution where every developer can use existing tools, services (APIs) and find all information needed for development. By making sure developers use the portal solution when developing new business applications, the portal content should become better and better. The Backstage portal solution aims at developers that must create a new application by enforcing the use of standard building blocks that are already available.

So the core problem is solved by centralization and hiding complexity. In other words: centralization of custom application development by introducing  a common portal that must be used by all developers and for all application developments.

The core architecture of the Backstage portal is based around services and APIs. This so reuse of software building blocks is fast and easy. And creating business functionality is simpler and faster. Also shipping code towards production is claimed to be easier.

The Backstage solution aims to hide infrastructure complexity from developers. So developers can focus on developing solutions that bring direct business value. Complex and time consuming aspects like security, privacy and infrastructure management should require no or far less time.

Observations

  • Backstage documentation is very limited. (as checked on March 2020)
  • The core of the Backstage portal solution is JavaScript based. 
  • Backstage is currently aimed at developing JavaScript based applications.
  • Backstage brings yarn. Yarn is a package manager for JavaScript.
  • Most Enterprise environments are known for good logical and physical security separation of environments.  Centralized portal solutions that are aimed at speeding up development seldom match with enterprise security rules and regulations. 
  • The project is under heavy development by Spotify. 
  • This FOSS project is developed based on a specific problem situation at Spotify. In essence all major enterprises face a number of common IT complexity problems. But this project is already several years in use at Spotify and only recently released as a FOSS project. So it is questionable how easy this product can be tuned for use in another business context.
  • The exact capabilities of the Spotify Backstage product are not very explicit and clear. This makes it difficult to verify if your needs to reduce complexity can be solved with this product. 

Quick scan of Backstage source code repository (git statistics)

Date report: 2020/03/30

  • Number of files in the git repository: 242
  • Lines Of Code in repository (LOC) (estimation): 183595
  • First commit to GitHub repository: Sat Jan 25 09:16:32 2020 
  • Number of authors:33

Top 10 committers: A simple view tells that two people do most of the commits.

Solving any infrastructure complexity problem always requires context specific research within a company. A problem should never be approached as a technical problem only. Only after a detailed problem diagnosis is performed a first orientation on technical and organisational solutions makes sense. 

Central based portal solutions, even if loved by some developers are often problematic in practice. This because:

  • Centralized solutions have been proven hard to implement within large enterprises. Centralized solutions require very strong governance and strong top down management. Decentralized and distributed solutions are often far more effective and simpler to use and implement. 
  • The Backstage FOSS solution comes with the paradigm of (micro)services and a  technical portal solution as a cure for a very complex problem. That is hiding infrastructure complexity from application developers. Forcing another technical product that hides the complexity to be used as a solution is seldom a good choice to solve complex IT problems. Even if the product is a FOSS software product released by a famous company. Mind also that the paradigm of (micro)services as solution for complexity reduction is often problematic in practice.

The Spotify Backstage product is promoted as ‘an open platform for building developer portals.’ Unfortunately the idea for creating a portal solution to speed up application development within a company is not new.  An infinite amount of large and small software vendors (Oracle, IBM, Tibco, Microsoft etc) have created similar solutions in the last 20 years. But history learns that the disadvantages that come with such a portal solution all have major drawbacks. The technical disadvantages are often hidden at first sight and the organisational preconditions are hard to meet.

The Spotify Backstage product is not a simple solution for a common complex problem all large organisations have. The Backstage FOSS product itself is large and complex. But the organisational challenges when starting with this product are even more challenging. The fact that the product is now released as a FOSS product that can be used by every company can be beneficial for Spotify. But if you are considering using this product to solve your apparently similar complexity problem you should be careful.

Solving business IT related problems is hard. We solve complex business IT problems and make sure you reach all your short and long term goals. Business IT simplification is challenging but in the end always profitable.