Tjänster inom Scala-utveckling
Scala-utveckling för dataflöden i Apache Spark, backend för fintech och handel, plattformar för adtech och analys, händelsedrivna tjänster på Akka, Apache Pekko, ZIO eller Cats Effect, Play-applikationer och flytt från Scala 2 till Scala 3, med dedikerade Scala-utvecklare till ert team eller ett Scala-projekt som levereras från start till mål.
Vad vi bygger med Scala
Apache Spark-jobb i Scala
Batch- och streamingjobb på Spark 4 i Scala 2.13, med typade Datasets och Spark SQL över Delta Lake- eller Apache Iceberg-tabeller på Databricks, Amazon EMR eller Kubernetes, partitionerade och trimmade så att varje körning ryms inom sitt tidsfönster och sin budget.
Tjänster för handel, betalningar och risk
Tjänster för betalningar, huvudbok, prissättning och risk med oföränderliga domänmodeller, sealed types och uttömmande matchningar över varje tillstånd en transaktion kan nå, BigDecimal för pengar och ett revisionsspår för varje ändring.
System på Akka och Apache Pekko
Aktörsbaserade tjänster, kluster, event sourcing och strömmar med back-pressure på Akka under dess kommersiella licens, eller på Apache Pekko, den Apache-licensierade forken av Akka 2.6, med persistens på PostgreSQL eller Cassandra.
Funktionella tjänster på ZIO och Cats Effect
HTTP- och gRPC-tjänster på ZIO 2 eller Cats Effect 3 med http4s, Tapir eller ZIO HTTP, Doobie eller Skunk över PostgreSQL samt fs2 eller ZIO Streams, med effekter, fel och resurser spårade i typerna.
Kafka-streaming i Scala
Producenter, konsumenter och strömprocessorer på fs2-kafka, zio-kafka, Kafka Streams eller Pekko Connectors, med Avro- eller Protobuf-kontrakt i ett schemaregister, idempotenta skrivningar, omförsök och dead-letter-topics.
Dataflöden för budgivning och attribuering inom adtech
Realtidsbudgivning, attribuering och publikflöden som tar emot händelser i stora volymer, med aggregering i Spark eller ClickHouse och API:er som svarar inom den tid en budförfrågan tillåter.
Applikationer i Play Framework
Webbapplikationer och API:er på Play 3, som körs på Pekko, och Play 2-applikationer på Akka som flyttats över till det, med Slick eller Anorm för dataåtkomst och Twirl-mallar eller en separat frontend för sidorna.
Flytt från Scala 2 till Scala 3
Kod i Scala 2.12 och 2.13 flyttad till Scala 3.9, den aktuella versionen med långtidssupport, modul för modul med kompilatorns migreringsläge och Scalafix-omskrivningar, medan Spark-jobb ligger kvar på Scala 2.13 så länge Spark är byggt på den.
Byggen, tester och beroendeuppdateringar i Scala
Byggen med sbt 2 eller Mill som kan återskapas från en ren utcheckning, sviter i MUnit eller ScalaTest med ScalaCheck-egenskaper, Scalafmt och Scalafix i pipelinen samt Scala Steward som öppnar en pull request för varje beroendeuppdatering.
Anlita Scala-utvecklare
Dedikerade Scala-utvecklare
Scala-utvecklare som går med i ert team på heltid, arbetar i era repositories, ert ärendesystem och era möten och rapporterar till er teamledare. Ni intervjuar dem; vi står för det ukrainska avtalet, lönen, faktureringen och ledigheten.
Scala-projektleverans
Ett team som tar Scala-projektet från omfång till release: uppskattning, utveckling, tester och driftsättning, med en teknisk ledare hos oss som äger planen och kvaliteten.
Scala-support och övertaganden
Ett befintligt Scala-system som övertas från ett annat team eller hålls igång: först en skrivskyddad genomgång och en skriftlig riskförteckning, sedan rättningar och nya funktioner i ordning efter effekt.
Sidan om dedikerade team förklarar hur specialister går med i ert team, och sidan om outsourcing beskriver projektleverans, övertaganden och hur vi debiterar.
Vilka som arbetar i ert Scala-projekt
Scala-utvecklare
Spark-jobb och tjänster på Akka, Pekko, ZIO eller Cats Effect
Dataingenjörer
Lakehouse-tabeller, orkestrering och datakvalitet
Java-ingenjörer
JVM-tjänster vid sidan av Scala-koden
Moln- och DevOps-ingenjörer
Kubernetes, Spark-kluster och pipelines
QA-ingenjörer
Automation av API-, data- och belastningstester
Så arbetar vi med Scala
Oföränderliga data och uttömmande mönstermatchning, så att kompilatorn pekar ut de fall en ändring glömmer; fel och effekter i typerna i stället för i kastade undantag; Scalafmt och Scalafix i pipelinen och ett bygge som slutar med noll varningar; samt beroenden som hålls aktuella, med säkerhetsvarningar behandlade som ovillkorliga uppgraderingar.
I en befintlig kodbas följer vi dess stil, oavsett om det är funktionell Scala på Cats Effect eller ZIO, aktörer på Akka eller Pekko eller Scala skriven nära Java, och höjer standarden en ändring i taget. Utvecklarna arbetar i era kodförvar, er tracker och er process, och allt de skriver överlåts till er.
Andra språk vi arbetar i
Java-utveckling
Tjänster inom Java-utveckling: mikrotjänster i Spring Boot, bank- och betalsystem, backends för e-handel och SaaS, Kafka-integrationer och modernisering av legacy-system, med dedikerade Java-utvecklare eller projektleverans.
Node.js-utveckling
Tjänster inom Node.js-utveckling: TypeScript-API:er, backends för e-handel och SaaS, fintech-integrationer, realtids- och streamingfunktioner samt serverless-funktioner, med dedikerade Node.js-utvecklare eller projektleverans.
PHP-utveckling
Tjänster inom PHP-utveckling: applikationer i Laravel och Symfony, e-handel på Magento, Shopware och WooCommerce, API:er, WordPress och Drupal samt PHP-uppgraderingar, med dedikerade PHP-utvecklare eller projektleverans.
C- och C++-utveckling
Tjänster inom C- och C++-utveckling: inbyggd firmware, desktopmjukvara i Qt, nätverks- och telekommjukvara, system med låg latens, säkerhetsmjukvara och modernisering av C++, med dedikerade C++-utvecklare eller projektleverans.
Go-utveckling
Tjänster inom Go-utveckling: Golang-mikrotjänster och API:er, backends för fintech och SaaS, Kubernetes-operatorer, eventpipelines samt nätverks- och säkerhetsmjukvara, med dedikerade Go-utvecklare eller projektleverans.
Kotlin- och Android-utveckling
Tjänster inom utveckling av Android-appar i Kotlin och Jetpack Compose för bank-, media-, shopping- och hälsoappar, plus Kotlin Multiplatform och backends i Ktor, med dedikerade Kotlin-utvecklare eller projektleverans.
Rust-utveckling
Tjänster inom Rust-utveckling: backendtjänster och API:er, blockchain och Web3, system- och infrastrukturmjukvara, säkerhetsverktyg, inbyggd firmware och WebAssembly, med dedikerade Rust-utvecklare eller projektleverans.
Swift- och iOS-utveckling
Tjänster inom utveckling av iOS-appar i Swift och SwiftUI: bank-, shopping-, media- och hälsoappar, appar för Apple Watch och Vision Pro, underhåll av Objective-C och releaser i App Store, med dedikerade iOS-utvecklare eller projektleverans.
TypeScript-utveckling
Tjänster inom TypeScript-utveckling: frontends i Angular, React och Vue, backends i Node.js, full-stack-appar, monorepon och migreringar från JavaScript till TypeScript, med dedikerade TypeScript-utvecklare eller projektleverans.
Frågor om Scala-utveckling
Vilka branscher bygger ni Scala-system för?
Data- och analysplattformar (Spark-flöden, lakehouses och rapportering), fintech, bank och handel (betalnings-, risk- och prissättningstjänster), e-handel och marknadsplatser (rekommendationer, sök och orderhantering), adtech och marknadsföring (budgivning, attribuering och publikdata), företagsmjukvara och SaaS samt industri- och energiföretag som bearbetar sensor- och mätardata.
Akka eller Apache Pekko?
Båda går. Apache Pekko är den Apache-licensierade forken av Akka 2.6 och basen för Play 3; Akka fortsätter under sin kommersiella licens. En flytt från Akka 2.6 till Pekko är mest en ändring av paketnamn, konfigurationsnycklar och beroenden, gjord modul för modul med tester som körs efter varje steg.
Kan ni flytta vår Scala 2-kod till Scala 3?
Ja. Bibliotek och tjänster flyttas modul för modul, där kompilatorns migreringsläge och Scalafix gör de mekaniska omskrivningarna, implicits blir given-instanser och extension methods, och makron skrivs om för Scala 3-metaprogrammering. Kod som Spark kör ligger kvar på Scala 2.13 så länge Spark är byggt med den.
Hur snabbt kan Scala-utvecklare börja?
När rätt Scala-utvecklare finns tillgänglig styrs starten bara av er intervju samt NDA och IP-överlåtelse. Annars gör vi en sökning, som vanligtvis ger kandidatprofiler inom två till tre veckor, och ingen börjar förrän ni har sagt ja.
Hur anlitar vi Scala-utvecklare via BigTree108?
Berätta om arbetet, senioriteten och de timmar ni behöver. Vi föreslår en eller två personer med deras profiler, ni intervjuar dem på samma sätt som ni skulle intervjua en egen anställning, och ni skriver under ett avtal med BIG TREE 108 LLC och får en faktura i månaden.
Vem äger arbetet de producerar?
Det gör ni. Varje specialist har ett undertecknat avtal med BigTree108 som överlåter allt arbetsresultat till bolaget, och vårt avtal med er överlåter det vidare. Kod, designer och dokument levereras in i era egna repositories och verktyg, inte på ett ställe där bara vi kan ändra dem.
Behöver ni Scala-utvecklare?
Berätta om systemet, Scala-versionen och de bibliotek det körs på. Ni får svar inom en arbetsdag: kandidatprofiler eller en plan för arbetet.