
Le web software solutions di DotEnv sono realizzate attraverso l’utilizzo delle più recenti tecnologie di programmazione disponibili: ci teniamo infatti ad essere sempre aggiornati ed al passo con lo sviluppo tecnologico, trovando il giusto compromesso tra novità e stabilità delle strumentazioni, per poter garantire una sempre migliore performance.
Partiamo però dalla base di ogni nostro progetto, ovvero l’ascolto del cliente e l’analisi delle esigenze specifiche. Questo ci permette di creare soluzioni personalizzate e cucite su misura intorno al cliente ed è proprio per questo motivo che definiamo “sartoriale” il metodo utilizzato.
Tecnologie utilizzate
Nel momento in cui si inizia a costruire un nuovo progetto software, a maggior ragione se personalizzato, è fondamentale valutare le varie tecnologie a disposizione, considerando innanzitutto i fattori essenziali che dovrà avere la soluzione creata: requisiti funzionali, non funzionali e aspetto grafico del prodotto.
Da qui, la scelta della tecnologia più adatta a supportare il progetto.
Il team di DotEnv utilizza diverse tecnologie, delle quali vi presentiamo un breve excursus.
La business logic, il cuore dei nostri applicativi, viene sempre gestita tramite api e servizi, che ci servono sia per determinare un certo funzionamento, che per applicare logiche di integrazioni bidirezionali verso applicativi e gestionali già esistenti.
Sviluppiamo api (application programming interface) solide e prestanti in php, tramite Symfony Framework. Quando si parla di microservizi e di praticità, scegliamo Node.js e Express.js.
La qualità di un software è argomento molto sensibile (ne parleremo in un prossimo articolo) e può essere misurata tramite strumenti oggettivi, ma anche e soprattutto dal cliente finale in merito alle anomalie riscontrate, regressioni di funzionalità e solidità del rilascio.
In DotEnv siamo abituati a gestire la robustezza e solidità del codice applicativo, testando sia in termini di funzionalità, che di integrazione, che di atomicità tramite tool di testing e di code quality.
Questa gestione ci permette di essere sicuri che una funzionalità rilasciata oggi faccia esattamente quello che il cliente ci ha richiesto e soprattutto non crei anomalie su funzionalità rilasciate anche anni prima.
Capita spesso che la produzione non possa fermarsi o che non vi sia la possibilità di un fermo applicativo di ore o giorni: per questo motivo aderiamo al binomio della CI/CD (Continuous Integration/Continuous Delivery) che per un cliente non tecnico pare essere cosa ovvia e implicita, ma di fatto non lo è. Infatti adottiamo tool e strumentazioni di versionamento, controllo e rilascio per le nostre applicazioni che favoriscono e sposano a pieno una integrazione e rilascio continuo, in maniera completamente trasparente all’utente finale e all’applicativo in ambiente di produzione senza alcun fermo o aggiornamento che comporti un blocco.
Progettiamo i design di UI/UX (User Interface/User experience) per poi sviluppare interfacce web tramite alcuni framework JS, in base alla necessità.
Realizziamo frontend (con o senza TypeScript) in React e/o Vue.js e sviluppiamo app ibride e native: quando si tratta di app ibride utilizziamo NativeScript con Vue.js. Abbiamo anche esperienza con ReactNative e, purtroppo o per fortuna, con Titanium Mobile.
La bellezza del nostro lavoro è che si può arrivare alla stessa soluzione mediante diverse strade, tutte valide e percorribili: noi abbiamo sposato queste tecnologie che, unite al project flow sviluppato e messo a punto negli anni, ci permettono di creare soluzioni sempre diverse e adatte al cliente.





