Salta al contenuto

Backend e API

Il backend è la spina dorsale invisibile delle applicazioni moderne: la logica di business, la persistenza dei dati, le integrazioni con sistemi esterni, le API che alimentano web app, mobile app e processi aziendali. SynSphere progetta e sviluppa backend custom per le PMI italiane usando stack mainstream (ASP.NET Core, Node.js, Python FastAPI) su infrastruttura Azure (App Service, Functions, Container Apps, Kubernetes), con focus su scalabilità, sicurezza, osservabilità e manutenibilità a lungo termine.

Il 70% dei progetti backend nelle PMI italiane non è 'inventare un'architettura nuova', è 'far parlare sistemi che non si parlano': gestionale italiano (Zucchetti, TeamSystem, AS400) con e-commerce moderno, CRM con sistema di fatturazione, app mobile con database legacy, partner B2B con file EDI vecchi di 20 anni. SynSphere ha esperienza specifica sui pattern di integrazione italiani: API gateway, message broker, ETL, RPA quando le API non esistono.

Tipici progetti che realizziamo: API per applicazioni mobile/web custom, integrazioni tra sistemi (es. e-commerce ↔ gestionale, CRM ↔ marketing automation, app mobile ↔ backend legacy), microservizi cloud-native su Azure Kubernetes per ISV in scale-up, modernizzazione di backend monolitici legacy verso architetture moderne (Strangler Fig pattern), e backend per IoT/dispositivi connessi.

A chi è rivolto

Profili e dimensioni aziendali per cui Backend e API è la scelta più efficace.

  • PMI con esigenze di integrazione tra sistemi che non si parlano (CRM, ERP, e-commerce, marketing)
  • Aziende che sviluppano web app o mobile app e hanno bisogno del backend di supporto
  • ISV italiane che modernizzano backend legacy verso architetture cloud-native scalabili
  • Realtà che devono esporre API a partner B2B (clienti, fornitori, distributori)
  • Aziende con processi automatizzati cross-sistema da implementare con orchestrazione backend custom

Funzionalità chiave

Cosa è incluso in Backend e API e perché ha valore per la tua azienda.

  • ASP.NET Core

    Framework principale per backend .NET enterprise: performance top, ecosystem maturo, integrazione SQL Server e Microsoft Entra ID.

  • Node.js + TypeScript

    Per backend moderni con API REST/GraphQL, ottima fit con frontend React/Next.js, ecosystem npm gigantesco.

  • Python (FastAPI)

    Per backend AI/ML, data processing, scripting di orchestrazione, integrazioni con ecosistema scientifico Python.

  • API REST + GraphQL

    API REST documentate con OpenAPI/Swagger, GraphQL per scenari complessi multi-entità, gRPC per microservizi interni.

  • Microservizi cloud-native

    Azure Container Apps o Kubernetes (AKS), service mesh, event-driven con Service Bus / Event Grid, scalabilità orizzontale.

  • Database

    SQL Server, Azure SQL, PostgreSQL, MongoDB, Cosmos DB. Scelta in base al workload (relazionale vs document vs graph).

  • Integration patterns

    API Gateway (Azure APIM), message broker (Service Bus, RabbitMQ), ETL (Data Factory), RPA per legacy senza API.

  • Security enterprise

    Microsoft Entra ID per auth, OAuth 2.0/OIDC, API key + rate limiting, JWT, encryption at rest/in transit, OWASP Top 10.

  • Osservabilità

    Application Insights, OpenTelemetry, distributed tracing, log strutturati, alerting su SLA, dashboard real-time.

Casi d'uso reali

Scenari concreti basati su clienti che abbiamo seguito o profili tipici per cui Backend e API ha senso.

  • Integrazione e-commerce ↔ gestionale italiano — retailer — Bologna

    Situazione di partenza

    E-commerce Magento moderno, gestionale Zucchetti Ad Hoc on-premise legacy. Sync articoli, prezzi, ordini, giacenze gestita manualmente con 2 export/giorno via CSV, errori e disallineamenti frequenti.

    Backend di integrazione su Azure Functions: connettore Magento via REST API, connettore Zucchetti via SQL Server diretto (Zucchetti non espone API moderne), middleware con regole di trasformazione e validation, sync real-time bidirezionale (giacenze ogni 5 minuti, ordini istantanei, articoli on-demand). Monitoring con alert su discrepanze. Stack: Azure Functions + .NET 8 + Service Bus + Application Insights. Tempo: 4 mesi.

  • API gateway per partner B2B — distributore — Verona

    Situazione di partenza

    15 partner distributori che richiedono integrazione: 3 fanno EDI (file FTP), 5 vogliono API REST, 7 estraggono CSV manualmente. Ufficio IT impossibilitato a soddisfare tutti.

    Azure API Management come gateway unificato, API REST esposta verso partner moderni (con autenticazione OAuth + rate limiting), backend trasforma le stesse chiamate in EDI per i partner legacy, portale developer self-service per onboarding nuovi partner. Audit log completo, SLA monitoring per partner. Stack: Azure APIM + Azure Functions + Logic Apps. Tempo: 5 mesi.

  • Modernizzazione backend monolitico legacy — ISV — Milano

    Situazione di partenza

    ISV con prodotto SaaS gestionale per studi: backend ASP.NET WebForms del 2014, monolitico, scaling verticale problematico con crescita clienti, deploy 1 volta al mese con downtime di 2 ore.

    Refactoring incrementale Strangler Fig: nuovi moduli scritti come microservizi .NET 8 su Azure Container Apps, vecchio monolite mantenuto in produzione con API gateway che routea le chiamate al sistema giusto. Nel tempo, il monolite si svuota fino a essere dismesso (timeline 18 mesi). Deploy continuo (multiple volte al giorno) senza downtime. Stack: .NET 8 + Azure Container Apps + Azure SQL + Service Bus + Azure APIM. Tempo: 18 mesi continuativi.

  • Backend per app mobile field service — manutentore — Torino

    Situazione di partenza

    App mobile per 40 tecnici manutenzione (sviluppata anche da SynSphere) richiede backend dedicato per dispatching ordini, sync offline-first, integrazione gestionale.

    Backend Node.js + TypeScript su Azure App Service: API REST per app mobile (auth Microsoft Entra ID), database PostgreSQL per ordini e foto/firme, integrazione gestionale via API REST per anagrafica clienti e fatturazione, webhook per dispatching real-time, queue per gestione foto upload async, dashboard amministratori per gestione tecnici. Stack: Node.js + Express + PostgreSQL + Azure Storage + Service Bus. Tempo: 5 mesi.

Modello di ingaggio

Come collaboriamo con te per progettare, sviluppare e mantenere backend e integrazioni.

Il nostro approccio dipende dal tipo di backend e dal livello di integrazione richiesta.

Modalità a progetto (corpo):

  • Quando hai requisiti chiari: contratti API definiti, scope di integrazione delimitato, vincoli tempi/budget.
  • Fasi: discovery (architettura, mapping sistemi, contract API) → sviluppo a sprint → test integrazione end-to-end → security review → deploy produzione → hyper-care.
  • Prezzo a corpo, change request gestiti formalmente.
  • Tipico: integrazione tra 2-3 sistemi specifici, backend per app già scoped.

Modalità Time & Materials (T&M):

  • Quando il backend evolve nel tempo (es. accompagna lo sviluppo di un prodotto SaaS in scale-up).
  • Tariffa giornaliera per profilo (architect, senior backend dev, devops, security).
  • Sprint biweekly, demo continue, billing mensile trasparente.
  • Tipico: ISV con prodotto in continua evoluzione, modernizzazione progressiva di legacy.

Modalità retainer (manutenzione e SRE):

  • I backend in produzione richiedono attenzione costante: monitoring, security patch, performance tuning, gestione incidents, upgrade dipendenze, manutenzione integrazioni quando i sistemi terzi cambiano.
  • Pacchetto ore mensili dimensionato in base a criticità del sistema.
  • Include on-call (ore lavorative o 24/7 in base a SLA concordato).

Specificità backend:

  • Documentazione API: OpenAPI/Swagger sempre incluso nel deliverable. Versioning policy concordato all'inizio.
  • Security review: per backend con dati sensibili o esposizione pubblica, security review esplicita pre-go-live (penetration testing, OWASP audit).
  • Monitoring & alerting: setup di Application Insights/OpenTelemetry, dashboard di SLI/SLO, alert su anomalie. Senza monitoring, un backend in produzione è cieco.
  • Disaster recovery: backup strategy, RPO/RTO documentati, drill di recovery testati.

Discovery iniziale:

Fortemente raccomandata per integrazioni complesse (1-3 settimane). Output: mapping sistemi sorgente/destinazione, contract API definitivi, architettura, identificazione di rischi tecnici (es. sistemi legacy senza API affidabili), stima costi/tempi.

IP ownership: codice, schema database, documentazione API, infrastructure-as-code di proprietà del cliente, su repository del cliente. Documentazione tecnica completa al go-live.

Domande frequenti

Risposte rapide alle domande che ci fanno più spesso su Backend e API.

Quale stack scegliete: .NET o Node.js o Python?
Dipende dal contesto. .NET è lo standard per backend enterprise nelle PMI italiane (specialmente se il cliente ha già skill .NET interne, o se c'è integrazione SQL Server). Node.js è ottimo per API moderne con frontend JS/TS, real-time, microservizi leggeri. Python è la scelta naturale per backend AI/ML, data processing, scripting orchestrazione. SynSphere consiglia in base al contesto (skill team cliente, sistemi sorgente, ecosistema), non per ideologia.
Quanto costa un backend custom?
Variabile in base a complessità. Ordini di grandezza tipici: backend semplice per app singola 30-80k€, integrazione tra 2-3 sistemi 50-150k€, microservizi enterprise multi-modulo 150-500k€, modernizzazione di legacy 200k-1M+€ (in più anni). Manutenzione retainer: tipicamente 15-25% del costo di sviluppo annuo per scenari critici.
Come si integrano i gestionali italiani senza API moderne?
Tre approcci. 1) **API REST se esistono**: anche i gestionali italiani recenti (Zucchetti Ad Hoc Cloud, TeamSystem Polyedro, Sistemi) hanno API REST documentate. 2) **Database access diretto**: per gestionali on-premise SQL Server-based, accesso al database con view/stored procedure dedicate, supportato dal vendor. 3) **RPA Desktop (Power Automate)**: per gestionali Windows-only senza API affidabili, ultima risorsa ma efficace. SynSphere ha esperienza con i pattern italiani specifici per ogni vendor.
Microservizi o monolite — cosa è meglio?
Per il 70% dei backend PMI: **monolite ben fatto** è la scelta giusta. Più semplice da sviluppare, deployare, debuggare. I microservizi servono quando: team sviluppo > 15 persone (Conway's law), scaling indipendente di componenti specifici, deploy frequenti senza coordinamento. Adottare microservizi per default in una PMI è over-engineering. SynSphere consiglia 'modular monolith' come default: un singolo deploy ma struttura interna ben separata, evolvibile a microservizi quando serve davvero.
Cosa succede se uno dei sistemi integrati va offline?
Pattern enterprise: 1) **Retry con backoff** automatico per errori transienti, 2) **Circuit breaker** per evitare di sovraccaricare un sistema in difficoltà, 3) **Queue di compensazione** per replay automatico quando il sistema torna online, 4) **Alerting** al team operations, 5) **Dashboard real-time** stato sistemi sorgenti. SynSphere implementa sempre questi pattern: integrazione che 'va in panne in silenzio' è un disastro che aspetta di succedere.
Hosting su Azure obbligatorio?
No, ma raccomandato per la maggior parte dei clienti. Azure ha integrazione nativa con tutto l'ecosistema Microsoft (Entra ID, SQL Server, Power Platform), datacenter EU, supporto italiano in lingua. Per scenari specifici (cliente già su AWS/GCP, requisiti compliance specifici, hosting on-premise obbligatorio), usiamo lo stack del cliente. Il backend è progettato cloud-agnostic per default (Docker container) per evitare lock-in.
Documentate le API in modo che altri possano usarle?
Sì, sempre. Documentazione OpenAPI/Swagger generata automaticamente dal codice (single source of truth), portale developer interattivo per testing, esempi di chiamate, gestione versioning (v1, v2, deprecation policy). Per partner B2B: SDK auto-generati in linguaggi comuni (TypeScript, Python, C#), portale onboarding self-service.

Altri prodotti in Software su misura

Continua a esplorare le tecnologie della categoria.