La mia azienda è cresciuta rapidamente negli ultimi anni in più territori. Non siamo una società di software di per sé, ma una società che ha sviluppato internamente varie applicazioni su misura. Alcuni di questi sono ora venduti come SAAS.
Sono personalmente responsabile di 3 di queste applicazioni: tutte le applicazioni Web interne, una scritta in MySQL / Python / Django, una scritta in SQL Server / Python / Django e una in MySQL / PHP / Symfony. La mia risorsa per sviluppatori include l'esperienza in tutti questi, oltre a Java e Adobe Flex. Nessuno di noi ha esperienza significativa nelle tecnologie Microsoft oltre a SQL Server.
Tuttavia, tutti gli altri reparti della mia azienda che hanno sviluppatori lavorano tutti utilizzando lo stack Microsoft - tutte le altre nostre applicazioni web sono C # / asp.NET ecc. ecc.
Mi è stato chiesto di valutare l'integrazione dei nostri prodotti di deploy con gli altri in azienda a livello di condivisione dei dati e di presentazione.
Vedo 3 possibili percorsi:
-
Mordiamo il proiettile e passiamo allo stack di sviluppo Microsoft, che diventa una politica aziendale. Pro: standardizzazione, capacità di raggruppare le risorse, l'integrazione può essere fatta a qualsiasi livello. Contro: massicci costi di licenza che non possiamo permetterci al momento, completare la riqualificazione di tutti gli sviluppatori richiesti, dovendo usare IIS al posto dei simpatici server Ubuntu / Apache e un'opposizione filosofica generale (siamo per lo più evangelisti open-source nel mio reparto) .
-
Middleware. Abbiamo esaminato Adobe Flex per gestire gli abbonamenti di dati tra servizi. Vantaggi: una soluzione relativamente economica, l'esperienza in-house esistente, può utilizzare qualsiasi tecnologia sottostante che scegliamo. Contro: ci sono voluti anni per ottenere una quotazione per i servizi dati Adobe, non mi è chiaro in che modo questa rotta sia futura - stiamo potenzialmente acquistando una tecnologia che si sta estinguendo?
-
Fai da te. Rimaniamo con open-source fino in fondo e API di servizi Web di scrittura personalizzata tra tutte le app. Pro: economico su licenza, open-source. Contro: tempo aggiuntivo richiesto, più test, problema centrale della proliferazione tecnologica non affrontato
Sarei interessato a sapere quali altri approcci ci potrebbero essere qui. Ci sono altri modi di fare il Middleware su questo? Sono irrimediabilmente obsoleto con le mie opinioni? Qual è una scommessa sicura per il futuro?
Grazie