BurnRate sta alimentando il successo dei ricavi con Blazor
Cliente
BurnRate
Prodotti e servizi
Blazor
ASP.NET
Azure SQL
Settore
Software e consulenza
Dimensioni dell'organizzazione
Piccole dimensioni (1-100 dipendenti)
Paese/area geografica
Stati Uniti
Incontra Robert McAws, un esperto di .NET e imprenditrice esperto che ha la passione di aiutare le persone ad avere successo. Nel corso della sua carriera Mc Mirrors ha visto come i VM e le centinaia di miliardi di investimenti non sono riusciti a migliorare significativamente i tassi di successo delle startup. Anche dopo 50 anni di investimenti in vc, almeno il 70% delle aziende ha comunque esito negativo in ogni fase di crescita.
La statistica ha allarmato Mc Cars. Ha quindi iniziato ad aiutare i promotori e i responsabili dei ricavi a sistemare il processo di assunzione e a tracciare il proprio corso per la crescita senza dover usare formule di foglio di calcolo. Ha visto un'opportunità per la tecnologia di rendere alcuni calcoli preziosi e specifici che rendono più semplice e precisa la pianificazione della crescita scalabile.
Creazione di un algoritmo umano
Anni fa Mc Law aveva creato un framework applicativo usando ASP.NET per creare un prodotto di analisi finanziaria nello spazio commerciale. La creazione di modelli di capacità per i complessi di apartment lo ha messo nel percorso per approfondire i modelli di capacità di vendita SaaS e il modo in cui la capacità umana per il lavoro influisce sulla capacità di un'azienda di generare ricavi.
Questo è il momento in cui ha ideato BurnRate, un sistema di pianificazione per ricavi, domanda e personale per i team go-to-market. McLaws ritiene che affidarsi a intuizioni e congetture per determinare i livelli di personale per i team chiave per i ricavi come marketing, vendite e successo dei clienti non fosse una strada sostenibile per la crescita.
Ha invece pensato che ci fosse una scienza: un algoritmo che poteva aiutare le aziende a crescere in modo più intelligente usando quello che ha coniato "People Algorithm." Come ha detto, "questi team [customer success, marketing e sales] sono responsabili di portare denaro in primo luogo, quindi era essenziale ottenere i calcoli corretti, e rendili abbastanza semplici da consentire ai team di ricavi di usarli in modo intuitivo."
Scelta dello stack tecnico più adatto
L'esperienza di McLaws in matematica finanziaria gli ha insegnato che i linguaggi di programmazione che usano la matematica a virgola mobile, come JavaScript, non erano sufficienti per la creazione di sistemi finanziari. La base per questo algoritmo dovrebbe essere in C# per fornire risultati attendibili che potrebbero essere convalidati in modo coerente.
Quando ha lasciato la società precedente per avviare BurnRate, ha dovuto lasciare indietro il framework dell'applicazione e reinventarlo da zero. La prima versione di .NET Core è stata appena pubblicata, quindi è stato il momento ideale per ricompilarlo per un'era moderna.
Il back-end è stato abbastanza semplice, con Azure SQL e Microsoft Restier più che in grado di gestire le esigenze API queryable del progetto. In .NET Core, il suo algoritmo "People Algorithm" è stato velocissima e in grado di gestire calcoli estremamente complessi da dati altamente strutturati in frazioni di secondo.
Tuttavia, l'organizzazione dei dati finanziari aziendali in modo da consentire alle aziende di creare più scenari e passare da uno all'altro richiedeva una profondità dell'architettura che non aveva previsto.
"La sovrapposizione in scenari, scenari padre, scale temporali e risultati pianificati rispetto ai [risultati] effettivi in un unico modello è stata sufficiente per farmi uscire di testa. Ci sono voluti mesi di lavoro intenso e ripetuti tentativi per farlo funzionare"," ha detto. McLaws ha affermato che il numero di unit test usati da BurnRate nel suo algoritmo per garantire la corretta funzionalità è probabilmente di grandezza superiore rispetto alla maggior parte delle altre società che creano con la propria applicazione. Stiamo chiedendo alle aziende di prendere decisioni sul futuro dell'intera azienda con questa piattaforma. Non possiamo permetterci di fare errori."
BurnRate ha creato l'intero framework di test open source denominato Breakdance per aumentare la produttività unit test e scrivere test più coerenti in meno tempo.
Il front-end ha presentato diverse sfide. McLaws ha iniziato a creare prototipi dell'interfaccia utente burnrate usando una combinazione di Webpack, TypeScript e Knockout, ma ha dovuto affrontare numerosi ostacoli. Al momento, Webpack non aveva definizioni TypeScript per semplificare la configurazione delle compilazioni.
"Con JavaScript, un linguaggio in cui qualsiasi elemento può essere qualsiasi elemento e tutto può essere scambiato in fase di esecuzione, l'errore è un'impostazione predefinita. Il successo deve essere ottenuto, in genere attraverso un'ampia angosa mentale"," ha detto Mc Laws.
Quando ha fatto funzionare tutto e ha avuto il primo prototipo completamente funzionale, il team ha avuto difficoltà con i problemi di ridimensionamento, soprattutto durante la generazione di piani di assunzione per aziende con centinaia di dipendenti.
"Tentando di capire come ridimensionarlo e gestire gli aggiornamenti dell'interfaccia utente e i ricalcoli e il lato server, stavamo facendo passi indietro"," ha detto. "Era sempre più Stava diventando sempre più scattoso nel browser, mentre cercavamo di eseguire il rendering."
Come Blazor ha acceso il percorso verso la scalabilità
Blazor è entrato nel marketplace in questo periodo ed era una nuova tecnologia front-end.
"La promessa di C# end-to-end nel browser con codice JavaScript minimo era semplicemente troppo buona per essere ignorata," ha detto Mc Math.
L'uso di C# tra il lato client e il lato server non solo ha reso lo sviluppo delle applicazioni "molto più semplice"," secondo McLaws, ma ha anche svolto un ruolo fondamentale nel rendere affidabile l'interfaccia utente di BurnRate come i calcoli.
È possibile scrivere unit test nello stesso linguaggio in cui viene scritto il codice back-end. È enorme! Perché non vuoi creare in questo modo? Ha eliminato migliaia di righe di codice ed è stato così intuitivo per chiunque abbia trascorso anche cinque secondi nel mondo WPF."
Con Blazor, BurnRate è riuscito a spostare "molto, molto rapidamente." Invece di tre anni, il team ha creato un prototipo Blazor funzionante in poche settimane e ha completamente convertito diverse centinaia di migliaia di righe di codice in meno di un anno.
Buona parte del tempo è stata dedicata alla creazione di nuovi strumenti open source in modo che anche altre aziende possano creare app Blazor più rapidamente, un approccio che si adatta all'utile approccio di McLaws.
"Le persone tendono a dimenticare che quando si crea una piattaforma come BurnRate, non è sufficiente l'app rivolta ai clienti; è necessaria anche l'app dietro l'app per le modifiche al database e l'amministrazione del sistema"," ha detto.
"Abbiamo creato BlazorEssentials, una libreria che abilita lo stile architetturale Model-View-ViewModel (MVVM) da XAML in Blazor. Ci consente di separare in modo pulito l'acquisizione dei dati dalla visualizzazione dei dati nelle app. In questo modo, l'architettura dell'applicazione offre un livello di semplicità e coerenza. Ora il 100% della codebase è testabile in un unico linguaggio con modelli prevedibili."
Sfruttando Azure DevOps per l'integrazione continua e il recapito continuo (CI/CD) altamente automatizzati, il team BurnRate può spostarsi ancora più velocemente.
"Indipendentemente dal fatto che si tratti di una nuova app o di una nuova utilità per un'app esistente, è possibile eseguire la spedizione in produzione in poche ore"," ha detto McLaws.
Con il ridimensionamento di BurnRate, era necessario garantire la stabilità del prodotto per incorporare di più le operazioni quotidiane principali dei clienti. Mc Laws si è fidato di Microsoft.
Distribuzione di soluzioni senza compromissione
"Ho scelto Microsoft molto tempo fa e Microsoft non mi ha mai deluso"," ha detto.
McLaws è un esperto .NET di 23 anni e cinque volte Microsoft MVP, con contributi open source per un totale di oltre 1,4 miliardi di download. Ancora oggi continua a sviluppare con Microsoft, sapendo che sono disponibili risorse e una community per creare insieme grandi cose. Con Blazor, il team BurnRate è stato in grado di creare l'app e offrire la visione di McLaws senza compromessi.
Non c'è mai stata, nella sua mente, "un’altra piattaforma diversa da .NET che sarebbe stata in grado di supportare quel [livello] di scalabilità stabile"," ha detto. Secondo lui, Blazor ha alimentato il suo team snella per creare più intelligente e veloce.
Ho atteso tutta la mia carriera per questo livello di produttività. Con .NET Core e Blazor non è mai stato così facile trasformare i miei sogni in realtà."
Pronti per iniziare?
Questa esercitazione dettagliata ti aiuterà a ottenere Blazor in esecuzione nel computer.