Saltar al contenido
BigTree108

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

Resumen de Lenguajes de programación

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.