Informazioni sul servizio
TradottoSono uno sviluppatore backend e scrivo in Scala, e la programmazione funzionale per me è un modo di pensare a un problema, non una tecnica a cui ricorro occasionalmente. Progetto servizi attorno a dati immutabili, funzioni pure ed effetti tipizzati, in modo che il comportamento rimanga prevedibile e il compilatore catturi intere classi di errori prima che raggiungano la produzione. Se hai già uno stack JVM e hai bisogno delle garanzie di correttezza e concorrenza che Scala fornisce, o stai partendo da zero e vuoi una base che si scaldi piuttosto che trasformarsi in un pasticcio, porterò il lavoro dall'architettura a un servizio che funziona in modo affidabile in battaglia.
La maggior parte del tempo costruisco API REST e gRPC, sistemi di eventi e pipeline di elaborazione dei dati. Costruisco backend concorrenti e distribuiti su attori Akka e Akka Streams, modello processi a lungo termine che sopravvivono ai riavvii, e collego tutto a Kafka, PostgreSQL, Cassandra o Spark a seconda della natura dei dati. Penso alla pressione inversa e a cosa succede quando una dipendenza diventa lenta o scompare, quindi i miei sistemi degradano in modo elegante invece di andare in crash. I compiti batch e di streaming su big data sono routine: migrazione, pulizia e aggregazione di grandi volumi senza perdere record e senza esaurire la memoria.
Lasciami essere chiaro riguardo all'ambito: questo è Scala e approccio funzionale, non Java, Kotlin o Go normali riscritti in sintassi Scala. Scrivo codice idiomatico con Cats, ZIO o Akka, testo tramite ScalaCheck e approccio basato sulle proprietà e fornisco codice che il tuo team può leggere ed evolvere. Parlami del throughput necessario e dei vincoli — suggerirò un approccio e una tempistica realistica.
— Servizi backend funzionali in Scala (Cats, ZIO)
— Attori Akka e Akka Streams per sistemi distribuiti concorrenti
— API REST e gRPC con domini testabili tipizzati
— Pipeline di big data ed ETL su Spark e Kafka
— PostgreSQL, Cassandra e archiviazione basata su eventi
— Testing basato sulle proprietà e configurazione CI JVM
La maggior parte del tempo costruisco API REST e gRPC, sistemi di eventi e pipeline di elaborazione dei dati. Costruisco backend concorrenti e distribuiti su attori Akka e Akka Streams, modello processi a lungo termine che sopravvivono ai riavvii, e collego tutto a Kafka, PostgreSQL, Cassandra o Spark a seconda della natura dei dati. Penso alla pressione inversa e a cosa succede quando una dipendenza diventa lenta o scompare, quindi i miei sistemi degradano in modo elegante invece di andare in crash. I compiti batch e di streaming su big data sono routine: migrazione, pulizia e aggregazione di grandi volumi senza perdere record e senza esaurire la memoria.
Lasciami essere chiaro riguardo all'ambito: questo è Scala e approccio funzionale, non Java, Kotlin o Go normali riscritti in sintassi Scala. Scrivo codice idiomatico con Cats, ZIO o Akka, testo tramite ScalaCheck e approccio basato sulle proprietà e fornisco codice che il tuo team può leggere ed evolvere. Parlami del throughput necessario e dei vincoli — suggerirò un approccio e una tempistica realistica.
— Servizi backend funzionali in Scala (Cats, ZIO)
— Attori Akka e Akka Streams per sistemi distribuiti concorrenti
— API REST e gRPC con domini testabili tipizzati
— Pipeline di big data ed ETL su Spark e Kafka
— PostgreSQL, Cassandra e archiviazione basata su eventi
— Testing basato sulle proprietà e configurazione CI JVM