Share via


Che cos'è la progettazione della piattaforma?

La progettazione della piattaforma è una pratica creata dai principi DevOps che cercano di migliorare la sicurezza, la conformità, i costi e il tempo per l'azienda di ogni team di sviluppo attraverso esperienze di sviluppo migliorate e self-service all'interno di un framework sicuro e regolamentato. È sia il cambio di mentalità basata sul prodotto che un set di strumenti e sistemi per supportarlo.

In ritardo, c'è un sacco di entusiasmo del settore intorno al termine progettazione della piattaforma. In effetti, Gartner prevede che circa il 80% delle organizzazioni di ingegneria abbia un team dedicato alla progettazione della piattaforma entro il 2026. Questi team si concentrano sulla creazione di una piattaforma per sviluppatori interna. Indipendentemente dal dominio , le vendite (ad esempio , Microsoft Dynamics, Salesforce), l'evasione dei servizi (ad esempio: ServiceNow), le comunicazioni (ad esempio: Twilio) – piattaforme, in base alla loro natura intrinseca, sono progettate per ottenere scalabilità e ridurre il tempo necessario per offrire valore aziendale.

Le piattaforme che gli sviluppatori usano o estendono possono eliminare il rischio durante il processo di sviluppo con esperienze per sviluppatori altamente ottimizzate e operazioni semplificate. Queste piattaforme includono strumenti che:

  • Aiutare gli sviluppatori a essere autosufficienti (ad esempio, kit di avvio, plug-in IDE)
  • Assistenza con attività comuni
  • Incapsulare modelli e procedure comuni in blocchi predefiniti riutilizzabili
  • Fornire consigli e feedback iniziali sui problemi o sui rischi di sicurezza
  • Semplificare le operazioni gestendo l'infrastruttura e gli strumenti sottostanti

Che cos'è una piattaforma per sviluppatori interna?

Una piattaforma per sviluppatori interna è incentrata sulle procedure di sviluppo interne di un'azienda. È possibile definire un set di percorsi di sviluppo consigliati e supportati per la produzione e "pavimentare" in modo incrementale con una piattaforma interna. Per usare un'analogia reale, i nuovi percorsi iniziano spesso come sentieri di sporcizia, ma come più persone li usano, sono pavimentati per migliorare la sicurezza mantenendo velocità e velocità effettiva. I percorsi pavimentati all'interno di una piattaforma di sviluppo interna hanno obiettivi simili. Sono progettati per guidare gli sviluppatori attraverso requisiti e standard critici senza sacrificare la velocità di distribuzione degli sviluppatori. Ciò è ottenuto fornendo ai team di sviluppo funzionalità standard, sicure e scalabili. Allo stesso tempo, è comunque possibile semplificare le operazioni e l'organizzazione IT per garantire che l'infrastruttura e gli strumenti sottostanti siano efficienti, conformi e convenienti. Mentre alcuni percorsi potrebbero essere parzialmente pavimentati, un percorso d'oro completamente pavimentato riduce il carico cognitivo per tutti coinvolti. Gli sviluppatori sono i consumer principali o i clienti di una piattaforma di sviluppo interna. L'automazione e la centralizzazione consentono operazioni efficienti, garantendo comunque requisiti degli stakeholder come la conformità.

Con la progettazione della piattaforma, si crea questa piattaforma interna combinando una mentalità del prodotto con apprendimento da DevOps e DevSecOps per offrire un set di strumenti. Questi strumenti forniscono automazione, rilevamento, governance e osservabilità sufficienti che guidano i team di sviluppo naturalmente "nel pit of success". Come responsabile della progettazione della piattaforma per una società di mass media multinazionale, lo ha messo:

La progettazione della piattaforma è stata adottata per aumentare la velocità o la velocità nei prodotti. I team centralizzati eliminano la necessità di ogni team di preoccuparsi dell'infrastruttura, aumentando così l'efficienza... Migliorano anche la sicurezza e la sicurezza perché tutto è predefinito, riducendo gli errori. - Daniel, Cloud Engineer, Fortune 500 Media Company

In altre parole, una piattaforma per sviluppatori interna consente di centralizzare e ridimensionare le conoscenze specializzate nell'intero ciclo di vita dello sviluppo e delle operazioni riducendo o eliminando il carico cognitivo e i passaggi manuali.

Grafico dei concetti di ingegneria della piattaforma.

L'implementazione di una strategia di progettazione della piattaforma riuscita richiede un lavoro, ma il pagamento vale la pena. Non è raro che i team con meno di 20 persone possano supportare migliaia di sviluppatori e centinaia di progetti.

Tuttavia, la creazione di una piattaforma per sviluppatori interna è un percorso. Non consigliamo un approccio "big bang" o un impegno guidato dall'alto verso il basso. Un aspetto critico della progettazione della piattaforma sta applicando una mentalità del prodotto in cui si trattano sviluppatori, professionisti di Machine Learning o data scientist come cliente. Come un ingegnere della piattaforma presso un'azienda tecnologica lo ha messo:

[Ci sono] due problemi principali che [nostro] strumenti di progettazione della piattaforma sono stati progettati per risolvere. Il primo è stato quello di facilitare il provisioning dei servizi usando un modello self-service. … Il secondo è stato quello di fornire sistemi di supporto automatico, ad esempio metriche delle prestazioni e disponibilità dell'applicazione. L'obiettivo è stato quello di consentire agli sviluppatori di lavorare più velocemente e in modo più efficiente, avendo tutte le informazioni necessarie per risolvere i problemi e ottimizzare le applicazioni. - Alex, Lead Cloud Architect, Large Technology Company

Questo può essere un alto ordine di implementazione, ma non due aziende sono uguali, quindi prendere in considerazione le esigenze specifiche dei clienti interni per tracciare un corso incrementale attraverso questo percorso. Creando un set di blocchi predefiniti di base che verranno assemblati nel tempo, è possibile assicurarsi che la piattaforma per sviluppatori interna abbia un valore sufficiente che i team di sviluppo diventino avvocati e lo useranno lungo il percorso. Usare queste informazioni per creare una piattaforma più sottile (TVP, un prodotto minimo valida per la piattaforma) e crescere da lì.

Grafico dei concetti di progettazione della piattaforma con le opzioni di implementazione.

Il punto importante è che si vuole pensare a qualsiasi investimento che si fa in queste aree come blocchi predefiniti chiave per il percorso di progettazione della piattaforma.

È quindi possibile concentrarsi sulla creazione di un collante coesivo con gli investimenti personalizzati per aggiungere valore univoco per l'azienda, anziché costruire tutto da zero.