Servicios de desarrollo en Scala
Servicios de desarrollo en Scala para pipelines de datos con Apache Spark, back ends de fintech y trading, plataformas de adtech y analítica, servicios orientados a eventos con Akka, Apache Pekko, ZIO o Cats Effect, aplicaciones Play y migraciones de Scala 2 a Scala 3, con desarrolladores Scala dedicados para su equipo o un proyecto Scala desarrollado de principio a fin.
Qué desarrollamos con Scala
Trabajos de Apache Spark en Scala
Trabajos batch y de streaming en Spark 4 con Scala 2.13, con Datasets tipados y Spark SQL sobre tablas Delta Lake o Apache Iceberg en Databricks, Amazon EMR o Kubernetes, particionados y ajustados para que cada ejecución encaje en su ventana y en su presupuesto.
Servicios de trading, pagos y riesgo
Servicios de pagos, libro mayor, precios y riesgo con modelos de dominio inmutables, tipos sellados y coincidencias exhaustivas sobre cada estado al que puede llegar una transacción, BigDecimal para el dinero y una pista de auditoría de cada cambio.
Sistemas con Akka y Apache Pekko
Servicios basados en actores, clústeres, event sourcing y streams con contrapresión sobre Akka con su licencia comercial, o sobre Apache Pekko, el fork con licencia Apache de Akka 2.6, con persistencia en PostgreSQL o Cassandra.
Servicios funcionales con ZIO y Cats Effect
Servicios HTTP y gRPC con ZIO 2 o Cats Effect 3 con http4s, Tapir o ZIO HTTP, Doobie o Skunk sobre PostgreSQL, y fs2 o ZIO Streams, con los efectos, los errores y los recursos controlados en los tipos.
Streaming con Kafka en Scala
Productores, consumidores y procesadores de streams con fs2-kafka, zio-kafka, Kafka Streams o Pekko Connectors, con contratos Avro o Protobuf en un schema registry, escrituras idempotentes, reintentos y topics de mensajes fallidos (dead-letter).
Pipelines de pujas y atribución en adtech
Pipelines de real-time bidding, atribución y audiencias que reciben eventos en gran volumen, con agregación en Spark o ClickHouse y API que responden dentro del tiempo que permite una solicitud de puja.
Aplicaciones con Play Framework
Aplicaciones web y API sobre Play 3, que funciona sobre Pekko, y aplicaciones Play 2 sobre Akka migradas a él, con Slick o Anorm para el acceso a datos y plantillas Twirl o un front end independiente para las páginas.
Migración de Scala 2 a Scala 3
Código Scala 2.12 y 2.13 llevado a Scala 3.9, la versión actual con soporte a largo plazo, módulo a módulo con el modo de migración del compilador y reescrituras de Scalafix, mientras que los trabajos de Spark se mantienen en Scala 2.13 mientras Spark esté construido sobre esa versión.
Builds, pruebas y actualización de dependencias en Scala
Builds con sbt 2 o Mill que se reproducen desde un checkout limpio, suites de MUnit o ScalaTest con propiedades de ScalaCheck, Scalafmt y Scalafix en el pipeline y Scala Steward abriendo una pull request por cada actualización de dependencias.
Contrate desarrolladores Scala
desarrolladores Scala dedicados
Desarrolladores Scala que se incorporan a su equipo a tiempo completo, trabajan en sus repositorios, su tracker y sus reuniones, y responden ante su responsable. Usted los entrevista; nosotros nos hacemos cargo del contrato ucraniano, la nómina, la facturación y las vacaciones.
Entrega de proyectos Scala
Un equipo que lleva el proyecto Scala desde el alcance hasta la publicación: estimación, desarrollo, pruebas y despliegue, con un líder técnico de nuestro lado que se responsabiliza del plan y de la calidad.
Soporte y relevo de sistemas Scala
Un sistema Scala existente que recibimos de otro equipo o mantenemos en funcionamiento: primero una revisión de solo lectura y una lista escrita de riesgos, después correcciones y nuevas funcionalidades por orden de impacto.
La página de equipo dedicado explica cómo se incorporan los especialistas a su equipo, y la de outsourcing trata de la entrega de proyectos, los relevos y cómo cobramos.
Quién trabaja en su proyecto Scala
desarrolladores Scala
Trabajos de Spark y servicios con Akka, Pekko, ZIO o Cats Effect
Ingenieros de datos
Tablas lakehouse, orquestación y calidad de datos
Ingenieros Java
Servicios JVM junto al código Scala
Ingenieros de cloud y DevOps
Kubernetes, clústeres de Spark y pipelines
Ingenieros de QA
Automatización de pruebas de API, de datos y de carga
Cómo trabajamos en Scala
Datos inmutables y pattern matching exhaustivo, para que el compilador señale los casos que un cambio olvida; errores y efectos en los tipos en lugar de excepciones lanzadas; Scalafmt y Scalafix en el pipeline y una compilación que termina con cero advertencias; y dependencias al día, con un aviso de seguridad tratado como actualización incondicional.
En una base de código existente seguimos su estilo, ya sea Scala funcional sobre Cats Effect o ZIO, actores sobre Akka o Pekko, o Scala escrito cerca de Java, y elevamos el nivel un cambio cada vez. Los desarrolladores trabajan en sus repositorios, su sistema de seguimiento y su proceso, y todo lo que escriben se le cede a usted.
Otros lenguajes con los que trabajamos
Desarrollo en Java
Servicios de desarrollo Java: microservicios con Spring Boot, sistemas bancarios y de pagos, back ends de comercio electrónico y SaaS, integraciones con Kafka y modernización de sistemas heredados, con desarrolladores Java dedicados o entrega por proyecto.
Desarrollo en Node.js
Servicios de desarrollo Node.js: API en TypeScript, back ends de comercio electrónico y SaaS, integraciones fintech, funciones en tiempo real y de streaming y funciones serverless, con desarrolladores Node.js dedicados o entrega por proyecto.
Desarrollo en PHP
Servicios de desarrollo PHP: aplicaciones en Laravel y Symfony, comercio electrónico en Magento, Shopware y WooCommerce, API, WordPress y Drupal, y actualizaciones de PHP, con desarrolladores PHP dedicados o entrega por proyecto.
Desarrollo en C y C++
Servicios de desarrollo en C y C++: firmware embebido, software de escritorio en Qt, software de redes y telecomunicaciones, sistemas de baja latencia, software de seguridad y modernización de C++, con desarrolladores de C++ dedicados o entrega por proyecto.
Desarrollo en Go
Servicios de desarrollo en Go: microservicios y API en Golang, back ends fintech y SaaS, operadores de Kubernetes, pipelines de eventos y software de redes y seguridad, con desarrolladores Go dedicados o entrega por proyecto.
Desarrollo en Kotlin y Android
Servicios de desarrollo de apps Android en Kotlin y Jetpack Compose para apps de banca, medios, compras y salud, además de back ends en Kotlin Multiplatform y Ktor, con desarrolladores de Kotlin dedicados o entrega por proyecto.
Desarrollo en Rust
Servicios de desarrollo en Rust: servicios backend y API, blockchain y Web3, software de sistemas e infraestructura, herramientas de seguridad, firmware embebido y WebAssembly, con desarrolladores Rust dedicados o entrega por proyecto.
Desarrollo en Swift y iOS
Servicios de desarrollo de apps iOS en Swift y SwiftUI: apps de banca, compras, medios y salud, apps para Apple Watch y Vision Pro, mantenimiento de Objective-C y publicaciones en la App Store, con desarrolladores iOS dedicados o entrega por proyecto.
Desarrollo en TypeScript
Servicios de desarrollo en TypeScript: front ends en Angular, React y Vue, back ends en Node.js, apps full-stack, monorepos y migraciones de JavaScript a TypeScript, con desarrolladores TypeScript dedicados o entrega por proyecto.
Preguntas sobre el desarrollo con Scala
¿Para qué sectores desarrollan sistemas en Scala?
Plataformas de datos y analítica (pipelines de Spark, lakehouses e informes), fintech, banca y trading (servicios de pagos, riesgo y precios), comercio electrónico y marketplaces (recomendaciones, búsqueda y servicios de pedidos), adtech y marketing (pujas, atribución y datos de audiencia), software empresarial y SaaS, y empresas industriales y energéticas que procesan datos de sensores y contadores.
¿Akka o Apache Pekko?
Cualquiera de los dos. Apache Pekko es el fork con licencia Apache de Akka 2.6 y la base de Play 3; Akka continúa con su licencia comercial. Pasar de Akka 2.6 a Pekko consiste sobre todo en cambiar nombres de paquetes, claves de configuración y dependencias, módulo a módulo y ejecutando las pruebas tras cada uno.
¿Pueden pasar nuestro código Scala 2 a Scala 3?
Sí. Las bibliotecas y los servicios se migran módulo a módulo, con el modo de migración del compilador y Scalafix haciendo las reescrituras mecánicas, los implicits convertidos en instancias given y métodos de extensión, y las macros reescritas para la metaprogramación de Scala 3. El código que ejecuta Spark se mantiene en Scala 2.13 mientras Spark esté construido con esa versión.
¿Con qué rapidez pueden empezar desarrolladores Scala?
Cuando el desarrollador Scala adecuado está disponible, el inicio solo depende de su entrevista, del NDA y de la cesión de propiedad intelectual. Si no, hacemos una búsqueda, que normalmente aporta perfiles de candidatos en dos o tres semanas, y nadie empieza hasta que usted haya dicho que sí.
¿Cómo contratamos desarrolladores Scala a través de BigTree108?
Cuéntenos el trabajo, la seniority y las horas que necesita. Le proponemos una o dos personas con sus perfiles, usted las entrevista como entrevistaría a un empleado propio, firma un único contrato con BIG TREE 108 LLC y recibe una factura al mes.
¿Quién es el propietario del trabajo que realizan?
Usted. Cada especialista tiene un contrato firmado con BigTree108 que cede todo el producto de su trabajo a la empresa, y nuestro contrato con usted lo cede a su vez. El código, los diseños y los documentos se entregan en sus propios repositorios y herramientas, no se guardan donde solo nosotros podamos modificarlos.
¿Necesita desarrolladores Scala?
Indíquenos el sistema, la versión de Scala y las bibliotecas sobre las que funciona. Recibirá una respuesta en un día laborable: perfiles de candidatos o un plan para el trabajo.