Služby vývoje ve Scale
Služby vývoje ve Scale pro datové pipeline na Apache Spark, back endy fintechu a obchodování, adtechové a analytické platformy, událostmi řízené služby na Akka, Apache Pekko, ZIO či Cats Effect, aplikace v Play a přechody ze Scaly 2 na Scalu 3, s dedikovanými Scala vývojáři pro váš tým nebo s projektem ve Scale dodaným od začátku do konce.
Co stavíme v technologii Scala
Úlohy Apache Spark ve Scale
Dávkové a streamové úlohy na Spark 4 ve Scale 2.13, s typovanými Datasety a Spark SQL nad tabulkami Delta Lake nebo Apache Iceberg na Databricks, Amazon EMR či Kubernetes, rozdělené na partitiony a vyladěné tak, aby se každý běh vešel do svého okna i rozpočtu.
Služby pro obchodování, platby a rizika
Služby pro platby, hlavní knihy, oceňování a rizika s neměnnými doménovými modely, zapečetěnými typy a vyčerpávajícím porovnáváním se vzorem přes každý stav, kterého může transakce dosáhnout, BigDecimal pro peníze a auditní stopou každé změny.
Systémy na Akka a Apache Pekko
Služby založené na aktorech, clustery, event sourcing a streamy s back-pressure na Akka pod její komerční licencí, nebo na Apache Pekko, forku Akka 2.6 s licencí Apache, s perzistencí na PostgreSQL či Cassandře.
Funkcionální služby na ZIO a Cats Effect
Služby HTTP a gRPC na ZIO 2 nebo Cats Effect 3 s http4s, Tapir či ZIO HTTP, Doobie nebo Skunk nad PostgreSQL a fs2 nebo ZIO Streams, s efekty, chybami a zdroji sledovanými v typech.
Streamování přes Kafka ve Scale
Producenti, konzumenti a stream procesory na fs2-kafka, zio-kafka, Kafka Streams nebo Pekko Connectors, s kontrakty v Avro nebo Protobuf ve schema registry, idempotentními zápisy, opakováním pokusů a dead-letter tématy.
Adtechové pipeline pro bidding a atribuci
Pipeline pro real-time bidding, atribuci a publikum, které přijímají události ve vysokém objemu, s agregací ve Spark nebo ClickHouse a API, která odpoví v čase, jaký bid request dovoluje.
Aplikace v Play Framework
Webové aplikace a API na Play 3, které běží na Pekko, a aplikace v Play 2 na Akka na něj převedené, se Slick nebo Anorm pro přístup k datům a šablonami Twirl nebo samostatným front endem pro stránky.
Přechod ze Scaly 2 na Scalu 3
Kód ve Scale 2.12 a 2.13 převedený na Scalu 3.9, aktuální verzi s dlouhodobou podporou, modul po modulu pomocí migračního režimu kompilátoru a přepisů Scalafix, zatímco úlohy Spark zůstávají na Scale 2.13, dokud je na ní Spark postaven.
Buildy, testy a aktualizace závislostí ve Scale
Buildy v sbt 2 nebo Mill, které jdou zopakovat z čistého checkoutu, sady MUnit nebo ScalaTest s vlastnostmi ScalaCheck, Scalafmt a Scalafix v pipeline a Scala Steward, který u každé aktualizace závislosti otevře pull request.
Scala vývojáři do vašeho týmu
Dedikovaní Scala vývojáři
Scala vývojáři, kteří nastoupí do vašeho týmu na plný úvazek, pracují ve vašich repozitářích, trackeru a na vašich schůzkách a zodpovídají se vašemu vedoucímu. Pohovor s nimi vedete vy; my neseme ukrajinskou smlouvu, mzdy, fakturaci a dovolenou.
Realizace projektu v technologii Scala
Tým, který provede projekt v technologii Scala od vymezení rozsahu po vydání: odhad, vývoj, testy a nasazení, s technickým vedoucím na naší straně, který odpovídá za plán a kvalitu.
Podpora a převzetí systémů v technologii Scala
Stávající systém v technologii Scala převzatý od jiného týmu nebo udržovaný v chodu: nejprve revize jen pro čtení a písemný seznam rizik, pak opravy a nové funkce podle dopadu.
Stránka o dedikovaném týmu vysvětluje, jak se specialisté připojují k vašemu týmu, a stránka o outsourcingu pokrývá dodávku projektů, převzetí systémů a jak účtujeme.
Kdo pracuje na vašem projektu v technologii Scala
Scala vývojáři
Úlohy Spark a služby na Akka, Pekko, ZIO nebo Cats Effect
Datoví inženýři
Tabulky lakehouse, orchestrace a kvalita dat
Java inženýři
Služby na JVM vedle kódu ve Scale
Cloud a DevOps inženýři
Kubernetes, clustery Spark a pipeline
QA inženýři
Automatizace testů API, dat a zátěže
Jak pracujeme ve Scale
Neměnná data a vyčerpávající porovnávání se vzorem, takže kompilátor pojmenuje případy, na které změna zapomněla; chyby a efekty v typech, ne ve vyhazovaných výjimkách; Scalafmt a Scalafix v pipeline a build končící s nulou varování; a aktuální závislosti, přičemž bezpečnostní upozornění je bezpodmínečným důvodem k aktualizaci.
U stávající kódové základny dodržujeme její styl, ať jde o funkcionální Scalu na Cats Effect či ZIO, aktory na Akka nebo Pekko, nebo Scalu psanou blízko Javě, a úroveň zvyšujeme po jedné změně. Vývojáři pracují ve vašich repozitářích, vašem trackeru a vašem procesu a vše, co napíšou, se postupuje vám.
Další jazyky, ve kterých pracujeme
Vývoj v Javě
Služby vývoje v Javě: mikroslužby ve Spring Boot, bankovní a platební systémy, backendy pro e-commerce a SaaS, integrace s Kafkou a modernizace legacy systémů, s dedikovanými vývojáři Javy nebo dodávkou projektu.
Vývoj v Node.js
Služby vývoje v Node.js: API v TypeScriptu, backendy pro e-commerce a SaaS, fintechové integrace, funkce v reálném čase a streamování a serverless funkce, s dedikovanými vývojáři Node.js nebo dodávkou projektu.
Vývoj v PHP
Služby vývoje v PHP: aplikace v Laravelu a Symfony, e-commerce na Magento, Shopware a WooCommerce, API, WordPress a Drupal a upgrady PHP, s dedikovanými vývojáři PHP nebo dodávkou projektu.
Vývoj v C a C++
Služby vývoje v C a C++: embedded firmware, desktopový software v Qt, síťový a telekomunikační software, systémy s nízkou latencí, bezpečnostní software a modernizace C++, s dedikovanými vývojáři C++ nebo dodávkou projektu.
Vývoj v Go
Služby vývoje v Go: mikroslužby a API v Golangu, backendy pro fintech a SaaS, operátory Kubernetes, pipeline událostí a síťový a bezpečnostní software, s dedikovanými vývojáři Go nebo dodávkou projektu.
Vývoj v Kotlinu a pro Android
Služby vývoje aplikací pro Android v Kotlinu a Jetpack Compose pro bankovní, mediální, nákupní a zdravotní aplikace, plus Kotlin Multiplatform a backendy v Ktoru, s dedikovanými vývojáři Kotlinu nebo dodávkou projektu.
Vývoj v Rustu
Služby vývoje v Rustu: backendové služby a API, blockchain a Web3, systémový a infrastrukturní software, bezpečnostní nástroje, embedded firmware a WebAssembly, s dedikovanými vývojáři Rustu nebo dodávkou projektu.
Vývoj v Swiftu a pro iOS
Služby vývoje aplikací pro iOS ve Swiftu a SwiftUI: bankovní, nákupní, mediální a zdravotní aplikace, aplikace pro Apple Watch a Vision Pro, údržba Objective-C a vydání do App Store, s dedikovanými vývojáři iOS nebo dodávkou projektu.
Vývoj v TypeScriptu
Služby vývoje v TypeScriptu: frontendy v Angularu, Reactu a Vue, backendy v Node.js, full-stack aplikace, monorepa a migrace z JavaScriptu na TypeScript, s dedikovanými vývojáři TypeScriptu nebo dodávkou projektu.
Otázky k vývoji v technologii Scala
Pro jaké obory vytváříte systémy ve Scale?
Datové a analytické platformy (pipeline Spark, lakehouse a reporting), fintech, bankovnictví a obchodování (platební, rizikové a cenotvorné služby), e-commerce a marketplacy (doporučování, vyhledávání a služby objednávek), adtech a marketing (bidding, atribuce a data o publiku), podnikový software a SaaS a průmyslové a energetické firmy zpracovávající data ze senzorů a měřidel.
Akka, nebo Apache Pekko?
Obojí. Apache Pekko je fork Akka 2.6 s licencí Apache a základ Play 3; Akka pokračuje pod komerční licencí. Přechod z Akka 2.6 na Pekko je většinou změna názvů balíčků, konfiguračních klíčů a závislostí, prováděná modul po modulu s testy spuštěnými po každém z nich.
Dokážete převést náš kód ze Scaly 2 na Scalu 3?
Ano. Knihovny a služby se převádějí modul po modulu, přičemž mechanické přepisy dělá migrační režim kompilátoru a Scalafix, implicity se mění na given instance a extension metody a makra se přepisují pro metaprogramování Scaly 3. Kód, který spouští Spark, zůstává na Scale 2.13, dokud je na ní Spark sestaven.
Jak rychle mohou nastoupit Scala vývojáři?
Když je k dispozici ten pravý Scala vývojář, začátek brzdí jen váš pohovor, NDA a převod práv duševního vlastnictví. Jinak vedeme hledání, které obvykle přinese profily kandidátů do dvou až tří týdnů, a nikdo nenastoupí, dokud neřeknete ano.
Jak probíhá najímání přes BigTree108 (role: Scala vývojáři)?
Řekněte nám, jakou práci, jakou seniority a kolik hodin potřebujete. Navrhneme jednoho nebo dva lidi s jejich profily, pohovoříte s nimi stejně jako s vlastním zaměstnancem a podepíšete jednu smlouvu s BIG TREE 108 LLC a budete dostávat jednu fakturu měsíčně.
Komu patří práce, kterou vytvářejí?
Vám. Každý specialista má podepsanou smlouvu s BigTree108, která převádí všechny výsledky práce na společnost, a naše smlouva s vámi je převádí dál. Kód, návrhy a dokumenty se dodávají do vašich vlastních repozitářů a nástrojů, ne do míst, kde je můžeme měnit jen my.
Potřebujete Scala vývojáře?
Sdělte nám systém, verzi Scaly a knihovny, na kterých běží. Do jednoho pracovního dne dostanete odpověď: profily kandidátů nebo plán práce.