Quién usa Bazel

En esta página, se enumeran las empresas y los proyectos de OSS que usan Bazel. Esto no constituye una recomendación.

Empresas que usan Bazel

acqio

Acqio es una tecnología financiera que ofrece productos y servicios de pago para comercios pequeños y medianos. Acqio tiene varios monorepos y usa Bazel junto con Kubernetes para entregar microservicios rápidos y confiables.

Adobe

Adobe lanzó reglas de Bazel para implementaciones continuas de Kubernetes basadas en GitOps.

Asana

Asana es una aplicación web y para dispositivos móviles diseñada para ayudar a los equipos a realizar un seguimiento de su trabajo. En sus propias palabras:

Bazel aumentó la confiabilidad, la estabilidad y la velocidad para todas las compilaciones y pruebas de Asana. Ya no es necesario realizar una limpieza debido a cachés incorrectas.

Ascend.io

Ascend es una startup de Palo Alto que ofrece soluciones para el análisis de grandes conjuntos de datos. Su lema es Los macrodatos son difíciles. Facilitamos el trabajo.

Cera de abejas

Beeswax es una startup con sede en Nueva York que ofrece ofertas en tiempo real como servicio. Bazel potencia su framework de integración y de implementación continuas basado en Jenkins. La cera de abejas ama Bazel porque es increíblemente rápida, correcta y compatible con muchos lenguajes y plataformas.

Braintree

Braintree, una subsidiaria de PayPal, desarrolla soluciones de pago para sitios web y aplicaciones. Usan Bazel para partes de su compilación interna, y Paul Gross incluso publicó una nada interesante sobre cómo fue el cambio a Bazel.

Canva

Canva aprovecha Bazel para administrar su gran base de código políglot, que incluye Java, TypeScript, Scala, Python y mucho más. La migración a Bazel proporcionó eficiencias significativas en la infraestructura de desarrollo y procesamiento, por ejemplo, disminuciones de 5 a 6 veces en los tiempos promedio de compilación de CI, y sigue siendo la base de compilaciones de software rápidas, reproducibles y estandarizadas en la empresa.

CarGurus

La misión de CarGurus es construir el mercado automotriz más confiable y transparente del mundo, y usa Bazel para crear su monorepo políglota.

Brújula

Compass es una plataforma de bienes raíces impulsada por la tecnología. Con un equipo de élite de profesionales inmobiliarios, tecnológicos y empresariales, nuestro objetivo es ser la mejor fuente de confianza para quienes buscan casas.

Databricks

Databricks proporciona lugares de trabajo integrados basados en la nube basados en Apache SparkTM.

La base de código de Databricks es un Monorepo, que contiene el código de Scala que impulsa la mayoría de nuestros servicios, JavaScript para la IU del frontend, Python para secuencias de comandos, Jonnet para configurar nuestra infraestructura y mucho más [...] Aunque nuestro monorepo contiene un millón de líneas de Scala, trabajar con código en su interior es rápido y rápido. (Speedy Scala Builds with Bazel at Databricks) (Compila rápidamente las compilaciones de Scala con Bazel en Databricks).

Dataform

Dataform proporciona estadísticas escalables para los equipos de datos. Mantienen algunos paquetes de NPM y un sitio de documentación en un único monorepo, y lo hacen todo con Bazel.

Después de la migración a Bazel, informaron muchos beneficios, entre los que se incluyen los siguientes:

  • CI más rápida: habilitamos el almacenamiento en caché de las compilaciones remotas, lo que redujo nuestro tiempo promedio de compilación de 30 minutos a 5 (para todo el repositorio).
  • Mejoras en el desarrollo local: no hay más secuencias de comandos de Bash aleatorias que te olvides de ejecutar; las compilaciones incrementales se reducen a segundos a partir de minutos.
  • Tiempo de configuración del desarrollador: Los ingenieros nuevos pueden compilar todo nuestro código con solo 3 dependencias: Bazel, Docker y JVM. El último ingeniero en unirse a nuestro equipo logró compilar todo nuestro código en menos de 30 minutos en una laptop nueva y vacía.

FISHLABS en plata profunda

Deep Silver FISHLABS es una empresa desarrolladora de juegos en 3D de alta gama. Usan Bazel con C++/Python/Go/C como base para sus herramientas de compilación internas y, en especial, para preparar e implementar todos sus elementos 3D.

Dropbox

En Dropbox, Bazel es un componente clave de nuestro entorno de compilación y pruebas distribuido. Usamos Bazel para combinar TypeScript/Python/Go/C/Rust en versiones de producción confiables.

Engel y Völkers

Engel & Völkers AG es una empresa alemana privada que, a través de una serie de oficinas concesionarias, ofrece servicios relacionados con transacciones de bienes raíces.

En uno de nuestros proyectos internos, el tiempo de compilación disminuyó de 11 minutos a aproximadamente 1 minuto. Este fue un logro impresionante, y estamos trabajando para llevar Bazel a más proyectos. (Experimenta con Google Cloud Build y Bazel)

Etsy

Etsy es un sitio web de comercio electrónico centrado en artículos y suministros hechos a mano o vintage, además de artículos únicos de la fábrica.

Usan Bazel para compilar y probar su plataforma de búsqueda basada en Java. Bazel produce ambos paquetes para servidores de equipos físicos y, también, imágenes de Docker repetibles.

Evertz.io

Evertz.io es una plataforma de SaaS multiusuario y sin servidores que ofrece servicios multirregionales rentables en todo el mundo a la industria de medios de transmisión, creada por Evertz Microsystems.

El sitio web está completamente compilado y también implementado con un flujo de trabajo de Angular y Bazel (fuente).

ENCONTRAR

FINDMINE es una tecnología de automatización para el sector de venta minorista que usa el aprendizaje automático a fin de escalar el, en la actualidad, el tedioso proceso manual de selección de productos. Usamos Bazel para mecanizar todo el proceso de compilación, prueba e implementación de paquetes de Python.

Flexport

Flexport es un transitario mundial con tecnología de carga. Nuestra misión es facilitar el comercio internacional para todo el mundo. En Flexport, usamos Bazel para compilar o probar nuestros servicios de Java/JavaScript y las bibliotecas cliente, y para generar código de Java y Ruby a partir de las definiciones de protobuf. Obtén información sobre cómo ejecutamos pruebas individuales de JUnit 5 de forma aislada con Bazel.

Google

Bazel se diseñó para poder adaptarse a las necesidades de Google y cumplir con los requisitos de reproducibilidad y compatibilidad de plataforma/lenguaje. Todo el software de Google se compila con Bazel. Google usa Bazel y sus reglas para millones de compilaciones todos los días.

GRAKN.AI

Logotipo de GRAKN AI

Grakn es una tecnología de base de datos que funciona como base de conocimiento para sistemas inteligentes. Grakn permite que los sistemas inteligentes interpreten conjuntos de datos complejos como un solo conjunto de conocimiento sobre el que se puede razonar lógicamente. Bazel permite que el equipo de @graknlabs compile una canalización de CI y distribución altamente organizada que administre varios repositorios de varios lenguajes y se implemente en varias plataformas sin problemas.

Huawei

Huawei Technologies utiliza Bazel en alrededor de 30 proyectos, que son proyectos de Java/Scala/Go, a excepción de los proyectos de Go, otros que se compilaron originalmente en Maven. Escribimos una herramienta simple para traducir un proyecto compilado en Maven a uno compilado en Bazel. Cada vez más proyectos usarán Bazel en el futuro reciente.

IMC Trading

IMC es una empresa de comercio internacional y creador de mercado con sede en Ámsterdam. Usamos Bazel para compilar y probar de forma continua nuestros proyectos de Java/C++/Python/SystemVerilog.

Improbable.io

Improbable.io desarrolla SpatialOS, un sistema operativo distribuido que permite crear simulaciones enormes en las que viven millones de entidades complejas.

Interaxon

InteraXon es una empresa de computación controlada por el pensamiento que crea plataformas de hardware y software para convertir ondas cerebrales en señales digitales.

Jupiter

Jupiter es una empresa que entrega cada semana de comestibles y artículos básicos para el hogar.

Usan Bazel en su código de backend, específicamente para compilar archivos proto y Kotlin para objetos binarios de JVM, mediante el almacenamiento en caché remoto. (fuente)

Solo

Just es una empresa de tecnología financiera empresarial con sede en Noruega que crea soluciones de software para transformar la manera en que los tesoreros corporativos globales administran el riesgo y la liquidez. Toda su pila de aplicaciones se compila con Bazel.

Kitty Hawk Corporation

Kitty Hawk Corporation es un fabricante de aviones estadounidense que produce aeronaves eléctricas. Usa Bazel con reglas de Haskell y Scala.

Line

Line proporciona una app para comunicaciones instantáneas, que es la aplicación de mensajería más popular en Japón. Usa Bazel en su base de código que consta de alrededor de un 60% de Swift y un 40% de C/C++/Objective-C/Objective-C++ (fuente).

Después de cambiar a Bazel, pudimos lograr una gran mejora en los tiempos de compilación. Esto trajo una mejora significativa en el tiempo de respuesta durante un período de control de calidad. La distribución de una compilación nueva a nuestros verificadores ya no implica una hora de espera para la compilación y las pruebas. (Cómo mejorar el rendimiento de compilación de LINE para iOS con Bazel)

LingoChamp

LingoChamp ofrece soluciones profesionales para los estudiantes de inglés. Usamos Bazel para nuestros proyectos Go, Java y Python.

LinkedIn

LinkedIn, una subsidiaria de Microsoft, es la red social profesional más grande del mundo. LinkedIn usa Bazel para compilar sus apps para iOS.

Lyft

Lyft usa Bazel para sus apps de iOS (fuente).

Makani

Makani, que ahora es una subsidiaria de Google, desarrolla cometas de energía y usa Bazel para compilar su software (incluido su software de C++ incorporado).

Reunión

Meetup es un portal de redes sociales en línea que facilita las reuniones grupales sin conexión. El equipo de ingeniería de Meetup contribuye a rules_scala y es el responsable del mantenimiento de rules_avro y rules_openapi.

NVIDIA

En Nvidia, usamos dazel(docker bazel) para Python a fin de solucionar algunos problemas de Bazel en Python. Todo lo demás se ejecuta en Bazel normal (principalmente en Go / Scala/ C++/ Cuda) (fuente).

Peloton Technology

Peloton Technology es una empresa de tecnología de vehículos automatizados que aborda accidentes de camiones y uso de combustible. Usan Bazel a fin de habilitar compilaciones confiables para sistemas de seguridad automotriz.

Pinterest

Pinterest es el catálogo de ideas del mundo. Usan Bazel para compilar varios servicios de backend (Java/C++) y la aplicación para iOS (Objective-C/C++).

Identificamos que Bazel era la mejor opción para nuestros objetivos a fin de construir una base que te permitiera lograr una mejora importante en el rendimiento, eliminar la variabilidad en los entornos de compilación y adoptarla de forma incremental. Como resultado, ahora enviamos todas nuestras versiones de iOS con Bazel. Cómo desarrollar compilaciones de iOS rápidas y confiables en Pinterest

PubRef

PubRef es una plataforma emergente de publicación científica. Usan Bazel con rules_closure para compilar el frontend, reglas nativas de Java a fin de compilar el backend principal, rules_go, rules_node y rules_kotlin para compilar servicios de backend ordenados. rules_protobuf se usa para ayudar con la comunicación basada en gRPC entre servicios de backend. PubRef.org se encuentra en Boulder, Colorado.

Redfin

Redfin es una nueva generación de corretaje inmobiliario con agentes locales de servicio completo. Usan Bazel para implementar y compilar el sitio web y varios servicios de backend.

Ya que la mayor parte de la conversión no está bien nuestras, las cosas mejoraron mucho. Nuestras compilaciones de CI son más rápidas (mucho más rápidas: solían tardar entre 40 y 90 minutos, y ahora las compilaciones de desarrollo tardan entre 5 y 6 minutos en promedio). La confiabilidad también es mucho mayor. Esto es más difícil de cuantificar, pero el cambio de las fallas de compilación inexplicables que son algo que “simplemente sucede” a que se consideran problemas reales por resolver nos llevó a un ciclo virtuoso de confiabilidad en aumento. (Cambiamos de Maven a Bazel y las compilaciones se hicieron 10 veces más rápidas).

Ritual

Ritual es una app de retiro en dispositivos móviles que conecta a los restaurantes con los clientes y ofrece una herramienta sencilla que ahorra tiempo para obtener los alimentos y las bebidas que desean, sin tener que esperar. Ritual usa Bazel para sus servicios de backend.

Ajustar

Snap, el desarrollador de la app de mensajería de Snapchat, migró de Buck a Bazel en 2020 (fuente). Para obtener más detalles sobre su proceso, consulta su blog de ingeniería.

Stripe

Stripe proporciona soluciones de pago mediante dispositivos móviles. Son los principales encargados de mantener las reglas de Scala de Bazel.

Tink

Tink es una empresa de tecnología financiera europea que desarrolla la mejor manera de conectarse con bancos de toda Europa.

Usan Bazel para compilar sus servicios de backend a partir de un monorepo políglota. Los ingenieros de Tink están organizando el grupo de reuniones de compilación de Bazel //stockholm/....

Tokopedia

Tokopedia es una empresa de tecnología indonesia especializada en comercio electrónico, que cuenta con más de 90 millones de usuarios activos por mes y más de 7 millones de comercios en la plataforma.

Escribieron el artículo Cómo Tokopedia logró un tiempo de compilación un 1,000% más rápido para iOS, en el que explicaba cómo Bazel aceleró sus compilaciones. La duración de la compilación pasó de 55 minutos a 10 minutos con Bazel y a 5 minutos con almacenamiento en caché remoto.

Twitter

Twitter tomó la decisión de migrar de Pants a Bazel como su herramienta de compilación principal (fuente).

Two Sigma

Two Sigma es una empresa de tecnología con sede en Nueva York que se dedica a encontrar valor en los datos del mundo.

Uber

Uber es una empresa de servicios de transporte privado a pedido. Con 900 desarrolladores activos, el monorepo de Go de Uber sea uno de los más grandes repositorios de Go con Bazel. Consulta el artículo Building Uber’s Go Monorepo with Bazel para obtener más información sobre su experiencia.

Uber Advanced Technologies Group

Uber Advanced Technologies Group se centra en las iniciativas de vehículos autónomos en Uber, incluidos el transporte de carga y transporte compartido, y los viajes autónomos. La organización usa Bazel como su sistema de compilación principal.

Vistar Media

Vistar Media es una plataforma publicitaria que permite a las marcas llegar a los consumidores según su comportamiento en el mundo físico. Su equipo de ingeniería se encuentra principalmente en las afueras de Filadelfia y usa Bazel para realizar compilaciones, implementaciones, acelerar las pruebas y consolidar repositorios escritos con una variedad de tecnologías diferentes.

VMware

VMware usa Bazel a fin de producir compilaciones confiables y deterministas mientras desarrollas productos innovadores para sus clientes.

Wix

Wix es una plataforma de desarrollo web basada en la nube. Su backend usa código Java y Scala. Usan la ejecución remota con Google Cloud Build.

Vimos compilaciones limpias aproximadamente 5 veces más rápidas cuando se ejecutan con la ejecución remota de Bazel, que utiliza las excelentes funciones de paralelismo de compilación y prueba de Bazel cuando envía acciones de compilación y prueba a una granja de trabajadores. Los tiempos de compilación promedio son de 10 veces más rápidos debido al uso del mecanismo agresivo de almacenamiento en caché de Bazel. (¿Quieres migrar a Bazel desde Maven o Gradle? 5 preguntas fundamentales que debes hacerte)

Zenly

Zenly es un mapa en tiempo real de tus amigos y familiares. Es la forma más divertida de reunirse o simplemente ver qué sucede. para que puedan sentirse juntos, aunque estén separados.


Proyectos de código abierto con Bazel

Abseil

Abseil es una colección de código abierto de código C++ (compatible con C++11) diseñada para aumentar la biblioteca C++ estándar.

Angular

Angular es un framework web popular. Angular está compilado con Bazel.

Apolo

Apollo es una arquitectura flexible y de alto rendimiento que acelera el desarrollo, las pruebas y la implementación de vehículos autónomos.

brpc

Un framework de RPC de nivel industrial que se usa en todo Baidu, con más de 1,000,000 de instancias(sin contar clientes) y miles de tipos de servicios, llamados "baidu-rpc" dentro de Baidu.

cert-manager

cert-manager es un complemento de Kubernetes para automatizar la administración y emisión de certificados TLS desde varias fuentes de emisión. Garantizará que los certificados sean válidos y estén actualizados de forma periódica y, además, intentará renovarlos en un momento adecuado antes de su vencimiento.

CallBuilder

Un generador de código Java que te permite crear un compilador mediante la escritura de una función.

CPPItertools

La biblioteca de C++ proporciona complementos de bucle basados en rangos inspirados en la biblioteca de itertools y los integrados de Python. Al igual que itertools y los elementos integrados de Python3, esta biblioteca usa la evaluación diferida siempre que sea posible.

Copybara

Copybara es una herramienta para transformar y mover código entre repositorios.

Dagger

Dagger es un framework de inserción de dependencias en tiempo de compilación completamente estático para Java y Android.

DAML

DAML es un lenguaje de contratos inteligente para compilar aplicaciones distribuidas preparadas para el futuro en un entorno de ejecución seguro y que respeta la privacidad.

DeepMind Lab

Una plataforma 3D personalizable para la investigación de la IA basada en agentes.

Drake

Drake es una caja de herramientas de C++ que comenzó en el MIT y que ahora dirige el Instituto de Investigación Toyota. Se trata de una colección de herramientas para analizar la dinámica de nuestros robots y crear sistemas de control para ellos, con un gran énfasis en el diseño y análisis basados en la optimización.

Envoy

Proxy C++ L7 y bus de comunicación

Propenso a errores

Detecta errores comunes de Java como errores de tiempo de compilación. (La migración a Bazel está en curso).

Proxy de servicio extensible

Proxy de servicio extensible, también conocido como ESP, es un proxy que habilita las capacidades de administración de las APIs para los servicios de la API de JSON/REST o de gRPC. La implementación actual se basa en un servidor proxy inverso HTTP de NGINX.

FFruit

FFruit es una aplicación para Android gratuita y de código abierto para el popular servicio Falling Fruit.

Revisión del código Gerrit

Gerrit es una herramienta de revisión de código y administración de proyectos para proyectos basados en Git.

Gitiles

Gitiles es un navegador de repositorio simple para repositorios de Git basado en JGit.

Grakn

Grakn (https://grakn.ai/) es el motor del Gráfico de conocimiento que sirve para organizar redes complejas de datos y permitir consultas.

RPC

Un sistema de llamadas de procedimiento remoto neutral en cuanto al lenguaje y la plataforma. (Bazel es un sistema de compilación compatible, aunque no principal).

gVisor

gVisor es una zona de pruebas de entorno de ejecución de contenedores.

Guetzli

Guetzli es un codificador JPEG que busca lograr una excelente densidad de compresión con alta calidad visual.

Guala

Es un generador de código Java que te permite escribir predicados de estilo Prolog y usarlos sin problemas desde el código Java normal.

Heron

Heron es un motor de procesamiento de transmisiones de Twitter distribuido y tolerante a errores en tiempo real.

JGit

JGit es una biblioteca de Java pura y ligera que implementa el sistema de control de versiones de Git.

Jsonnet

Un lenguaje de generación de configuración elegante y especificado formalmente para JSON. (Bazel es un sistema de compilación compatible).

Kubernetes

Kubernetes es un sistema de código abierto para administrar aplicaciones en contenedores en varios hosts, lo que proporciona mecanismos básicos para la implementación, el mantenimiento y el escalamiento de aplicaciones.

Kythe

Un ecosistema para crear herramientas que funcionen con código.

Nómulo

Servicio de registro de nombres de dominio de nivel superior en Google App Engine.

ONOS : Sistema operativo de red abierta

ONOS es la única plataforma de controlador de SDN que admite la transición de redes “de campo marrón” heredadas a redes de “campo verde” de SDN. Esto habilita capacidades nuevas y emocionantes, así como puntos de costo operativo y de implementación disruptivos para los operadores de red.

PetitParser para Java

Tradicionalmente, las gramáticas de los lenguajes de programación se especifican de forma estática. Son difíciles de componer y reutilizar debido a las ambigüedades que inevitablemente surgen. PetitParser combina ideas del análisis sin escaneo, combinadores de analizadores, análisis gramaticales de expresiones y analizadores de Packrat para modelar gramáticas y analizadores como objetos que se pueden volver a configurar de forma dinámica.

PlaidML

PlaidML es un framework para que el aprendizaje profundo funcione en todas partes.

Proyecto V

Project V es un conjunto de herramientas que te ayudará a crear tu propia red de privacidad a través de Internet.

Implementación de Prysmatic Labs Ethereum 2.0

Prysm es un cliente de fragmentación para Ethereum 2.0, una plataforma de computación distribuida basada en cadena de bloques.

Rayo

Ray es un framework de ejecución distribuida flexible y de alto rendimiento.

Residuo

Resty es una biblioteca cliente HTTP y REST simple para Go (inspirada por el cliente REST de Ruby).

Momento imperdible

Roughtime es un proyecto que tiene como objetivo proporcionar sincronización segura de la hora.

Selenio

Selenium es un framework portátil para probar aplicaciones web.

Semántica

Semantic es una biblioteca de Haskell y una herramienta de línea de comandos para analizar, analizar y comparar código fuente. GitHub lo desarrolla (y se usa, por ejemplo, para la navegación con código).

% publicado

Served es una biblioteca de C++ para compilar servidores web RESTful de alto rendimiento.

Sone

Sonnet es una biblioteca compilada sobre TensorFlow para la creación de redes neuronales complejas.

Sorbete

Sorbet es un verificador de tipos rápido y potente para un subconjunto de Ruby. Se escala a bases de código con millones de líneas de código y se puede adoptar de forma incremental.

Tink

Tink es una biblioteca de código abierto multiplataforma y multilingüe que proporciona APIs criptográficas que son seguras, fáciles de usar de forma correcta y difíciles de usar de forma inadecuada.

TensorFlow

Una biblioteca de software de código abierto para la inteligencia artificial.

Papá Noel turbo

Un emulador de GameBoy independiente de la plataforma

Resistente a la broma

Project WycheProof prueba bibliotecas criptográficas contra ataques conocidos.

XIOSim

XIOSim es un simulador de microarquitectura detallada en modo de usuario para la arquitectura x86.

ZhihuDailyPurify

Zhihu DailyPurify es una versión liviana de Zhihu Daily, una red china de preguntas y respuestas.