Backstage Spotify - building developer portals

Backstage Spotify - building developer portals

Mi è capitato nella mia lunga carriera (30 anni) di lavorare per diverse aziende, ma trovarne una che aveva un’adeguata documentazione sugli standard per sviluppare è stato pura utopia.

Il senior o l’architect di turno che con malavoglia e malagrazia ti spiegava due cose in croce e per il resto dovevi sputare sangue, mi chiedo a che pro? Perchè sprecare tempo di una risorsa quando ci sono tool (open source) che permettono di documentare bene un progetto, dettagliare le specifiche tecniche, gli standard di sviluppo e la creazione di template con tutto il necessario per permettere ad uno sviluppatore di integrarsi in maniera veloce in una nuova realtà di sviluppo.

Uno di questi è Backstage creato dalla fucina di sviluppo di Spotify.

backstage.io Il link del prodotto

Backstage Spotify

E’ una piattaforma open source per la creazione di developer portal. Grazie a un catalogo software centralizzato, Backstage rimette ordine nei microservizi e nell’infrastruttura e consente ai team di prodotto di distribuire rapidamente codice di alta qualità, senza compromettere l’autonomia.

Out of the box, Backstage include:

  • Backstage Catalogo software per la gestione di tutti i software (microservices, libraries, data pipelines, websites, ML models, etc.)
  • Backstage Software Templates per avviare rapidamente nuovi progetti e standardizzare il tooling con le best practice dell’organizzazione.
  • Backstage TechDocs per semplificare la creazione, la manutenzione, la ricerca e l’utilizzo della documentazione tecnica, utilizzando un approccio “docs like code”.
  • Inoltre, un ecosistema crescente di plugin open source che espandono ulteriormente la personalizzazione e le funzionalità di Backstage.

Funzionalità

Tra le principali funzionalità:

Catalogo Software

Catalogo delle API

Software template

TechDocs Documentation Solutione docs-lilke-code, la documentazione è scritta con file Markdown ed è ospitata assieme al codice sorgente (esempio: readme.md) questa viene importata da Backstage creando una raccolta documenti centralizzata.

Source code hosting providers

Source Code Hosting ProviderSupport Status
GitHubYes ✅
GitHub EnterpriseYes ✅
BitbucketYes ✅
Azure DevOpsYes ✅
GerritYes ✅
GitLabYes ✅
GitLab EnterpriseYes ✅

File storage providers

File Storage ProviderSupport Status
Local Filesystem of Backstage appYes ✅
Google Cloud Storage (GCS)Yes ✅
Amazon Web Services (AWS) S3Yes ✅
Azure Blob StorageYes ✅
OpenStack SwiftCommunity ✅

PLUGIN

Altra interessante funzionalità sono la vasta gamma di plugin.

Plugin

Ad esempio i plugin di integrazione con la CI/CD che permettono di tenere monitorato i tools di CI/CD

CI/CD Plugin

PlugIn
Azure Pipeline
Gitlab
Github Actions
Octopus Deploy
Jenkins

GitLab PlugIn

Cloudnative

Oltre all’installazione on prem Backstage può essere installato anche su Kubernaters. Infatti fa parte dei progetti inclusi dell’incubazione CNCF

Conclusioni

Sicuramente un prodotto che in ambito di sviluppo dovrebbe essere presente, specialmente in quelle realtà dove il riciclo di sviluppatori è alto ma non solo, tenere una documentazione aggiornata degli stardard dei sofware aiuta anche dopo un certo periodo di tempo a tornare su soluzioni ferme da un pò di tempo.

comments powered by Disqus

Related Posts

Rebus lean service Bus implementation for .Net

Rebus lean service Bus implementation for .Net

Rebus .Net Sempre per la serie “Don’t Accept the Defaults” ormai mio mantra di vita, cercavo una libreria semplice, veloce, ed affidabile per gestire al meglio le code di RabbitMQ.

Read More
TIPS #5 Scan NuGet Packages for Security Vulnerabilities

TIPS #5 Scan NuGet Packages for Security Vulnerabilities

NUGET Scan dei Packages per vulnerabilità di sicurezza Nell’era dove la sicurezza è il core principale, non può mancare un controllo sui packeges nuget che referenziamo alle nostre solution.

Read More
Gestiamo i secrets di HashiCorp Vault con HashiCorp Terraform

Gestiamo i secrets di HashiCorp Vault con HashiCorp Terraform

Terraform, non solo IaC (Infrastructure as Code), chi usa terraform per gestire IaC ne conosce la potenza e la comodità una volta creato lo script per il deploy di una infrastruttura sul cloud e on-prem questo è replicabile all’infinito in diversi ambienti e modificabile per gestire lo scaling ad esempio o semplicamente cambiare le caratteristiche di una infrastruttura in meniera semplice e veloce.

Read More