Qui utilise Bazel

Cette page répertorie les entreprises et les projets OSS connus pour utiliser Bazel. Ceci ne constitue pas une approbation.

Entreprises utilisant Bazel

Acqio

Acqio est une entreprise de la fintech qui propose des produits et services de paiement pour les petites et moyennes entreprises. Acqio dispose de plusieurs monoreposs et utilise Bazel ainsi que Kubernetes pour fournir des microservices rapides et fiables.

Adobe

Adobe a publié des règles Bazel pour les déploiements Kubernetes continus basés sur GitOps.

Asana

Asana est une application Web et mobile conçue pour aider les équipes à surveiller leur travail. Avec leurs propres mots:

Bazel est devenu plus fiable, plus stable et plus rapide pour tous les builds et tests d'Asana. Nous n'avons plus besoin de procéder à un nettoyage en raison de caches incorrects.

Ascend.io

Ascend est une start-up Palo Alto qui propose des solutions d'analyse de grands ensembles de données. Leur devise : Le big data est difficile. Nous simplifions.

Abeille

Beeswax est une start-up basée à New York qui propose des enchères en temps réel en tant que service. Bazel alimente son framework d'intégration et de déploiement continus Jenkins. Beeswax adore Bazel, car il est extrêmement rapide, correct et compatible avec de nombreuses langues et plates-formes.

Braintree

Braintree, une filiale de PayPal, développe des solutions de paiement pour les sites Web et les applications. L'entreprise utilise Bazel pour certaines parties de sa compilation interne et Paul Gross a même publié un bon article sur le passage à Bazel.

Canvas

Canva utilise Bazel pour gérer son important codebase polyglot, qui inclut Java, Typescript, Scala, Python, etc. La migration vers Bazel a permis d'améliorer considérablement l'efficacité des infrastructures de calcul et de développement, par exemple une diminution de 5 à 6 fois le temps de compilation des CI. En outre, elle continue de devenir la base de compilations logicielles rapides, reproductibles et normalisées à l'adresse l'entreprise.

CarGurus

CarGurus a pour mission de développer le marché automobile le plus fiable et le plus fiable du monde. Il utilise Bazel pour concevoir son monorepo polyglot.

Boussole

Compass est une plate-forme immobilière axée sur la technologie. Notre équipe de spécialistes de l'immobilier, de la technologie et des affaires nous tient à cœur d'être la source de référence la plus fiable pour les chercheurs d'immobilier.

Databricks

Databricks fournit des espaces de travail intégrés basés sur le cloud et basés sur Apache SparkTM.

Le codebase Databricks est un Monorepo contenant le code Scala alimentant la plupart de nos services, JavaScript pour l'interface utilisateur, Python pour les scripts, Jsonnet pour configurer notre infrastructure, etc. [...] même Bien que Monorepo contienne un million de lignes de Scala, l'utilisation du code est rapide et rapide. (Speedy Scala Build with Bazel at Databricks)

Dataform

Dataform fournit des analyses évolutives aux équipes responsables des données. Elles disposent de quelques packages npm et d'un site de documentation dans un seul monorepo, et le tout fonctionne avec Bazel.

Après la migration vers Bazel, l'entreprise a signalé de nombreux avantages, parmi lesquels:

  • CI plus rapide: nous avons activé la mise en cache des builds à distance, ce qui a permis de réduire le temps de compilation moyen de 30 à 5 (pour l'ensemble du dépôt).
  • Améliorations apportées au développement local: plus de scripts bash aléatoires que vous oubliez d'exécuter, moins de quelques minutes à partir de quelques minutes
  • Configuration des développeurs : les nouveaux ingénieurs peuvent créer tout notre code avec seulement trois dépendances : bazel, Docker et JVM. Le dernier ingénieur à avoir rejoint notre équipe a réussi à créer tout notre code en moins de 30 minutes sur un nouvel ordinateur portable vide.

FILAIS DE BAISSE Argent profond

Deep Silver FISHLABS est un développeur de jeux 3D haut de gamme. Bazel avec C++/Python/Go/C sert de base à ses outils de compilation internes, et plus particulièrement à la préparation et au déploiement de tous ses éléments 3D.

Dropbox

Avec Dropbox, Bazel est un composant clé de notre environnement de compilation et de test distribué. Nous utilisons Bazel pour combiner Typescript/Python/Go/C/Rust dans des versions de production fiables.

Engel et Völkers

Engel & Völkers AG est une société allemande privée qui, à travers une série de bureaux franchisés, fournit des services liés aux transactions immobilières.

L'un de nos projets internes a connu une réduction du temps de compilation de 11 minutes à environ une minute. C'est une réussite impressionnante, et nous travaillons actuellement à l'intégration de Bazel dans davantage de projets. (Expérimenter avec Google Cloud Build et Bazel)

Etsy

Etsy est un site Web d'e-commerce axé sur des articles et des fournitures vintage ou faits main, ainsi que sur des articles uniques fabriqués en usine.

L'entreprise utilise Bazel pour développer et tester sa plate-forme de recherche basée sur Java. Bazel génère des packages pour les serveurs physiques et pour les images Docker reproductibles.

Evertz.io

Evertz.io est une plate-forme SaaS mutualisée et sans serveur qui propose des services multirégionaux rentables dans le monde entier à l'industrie des médias de radiodiffusion, créés par Evertz Microsystems.

Le site Web est entièrement créé et déployé avec un workflow Angular et Bazel (source).

RECHERCHER

SEEMINE est une technologie d'automatisation pour le secteur du commerce qui utilise le machine learning pour faire évoluer le processus de sélection de produits actuel et fastidieux. Nous utilisons Bazel pour mécaniser l'ensemble du processus de création, de test et de déploiement de packages Python.

Flexport

Flexport est un transitaire de technologies mondial et technologique. notre mission est de faciliter le commerce mondial pour tous. Avec Flexport, nous utilisons Bazel pour créer et tester nos services Java/JavaScript et nos bibliothèques clientes, ainsi que pour générer du code Java et Ruby à partir de définitions protobuf. Découvrez comment exécuter des tests JUnit individuels 5 de manière isolée avec Bazel.

Google

Bazel a été conçu pour s'adapter aux besoins de Google et à ses exigences en termes de reproductibilité et de plate-forme/langue. Tous les logiciels de Google sont créés à l'aide de Bazel. Google utilise Bazel et ses règles pour des millions de builds chaque jour.

GRAKN.AI

Logo GRAKN AI

Grakn est une technologie de base de données qui sert de base aux bases de connaissances des systèmes intelligents. Grakn permet à des systèmes intelligents d'interpréter des ensembles de données complexes comme un ensemble de connaissances unique pouvant être logiquement logique. Bazel permet à l'équipe @graknlabs de créer un pipeline de distribution et de CI hautement organisé, capable de gérer plusieurs dépôts de plusieurs langages et de se déployer facilement sur de nombreuses plates-formes.

Huawei

Huawei Technologies utilise Bazel dans environ 30 projets. Ce sont des projets Java/Scala/Go, à l'exception des projets Go, qui ont été créés à l'origine par Maven. Nous écrivons un outil simple pour traduire un projet créé par Maven en un projet créé à Bazel. De plus en plus de projets utiliseront Bazel récemment.

IMC Trader

IMC est une société de vente internationale et un leader du marché établi à Amsterdam. Bazel nous permet de compiler et de tester nos projets Java/C++/Python/SystemVerilog en continu.

Improbable.io

Improbable.io développe SpatialOS, un système d'exploitation distribué qui permet de créer des simulations massives habitées par des millions d'entités complexes.

Interaxon

InteraXon est une société informatique contrôlée par l'esprit qui crée des plates-formes matérielles et logicielles pour convertir les ondes cérébrales en signaux numériques.

Jupiter

L'entreprise Jupiter fournit chaque semaine des produits alimentaires et des articles pour la maison.

Elle utilise Bazel dans son code de backend, en particulier pour compiler des protos et des fichiers Kotlin dans JVM à l'aide de la mise en cache à distance. (source).

Juste

Just est une entreprise de technologie financière d'entreprise, basée en Norvège, qui crée des solutions logicielles afin de transformer la manière dont les trésoriers d'entreprise mondiaux gèrent les risques et les liquidités. Toute leur pile d'applications est créée à l'aide de Bazel.

Kitty Hawk Corporation

Kitty Hawk Corporation est un fabricant d'avions américain fabriquant des avions électriques. Il utilise Bazel avec les règles Haskell et Scala.

Ligne

Line fournit une application de communication instantanée, l'application de messagerie la plus populaire au Japon. Elle utilise Bazel sur son codebase composé d'environ 60% de Swift et 40 % C/C++/Objective-C/Objective-C++ (source).

Le passage à Bazel nous a permis d'améliorer considérablement les temps de compilation. Cela a permis d'améliorer considérablement le délai d'exécution pendant une période de contrôle qualité. Distribuer une nouvelle version à nos testeurs ne nécessite plus une heure de attente pour la création et les tests. (Améliorer les performances de compilation de LINE pour iOS avec Bazel)

LingoChamp

LingoChamp fournit des solutions professionnelles aux apprenants anglais. Nous utilisons Bazel pour nos projets go, java et python.

LinkedIn

LinkedIn, filiale de Microsoft, est le plus grand réseau social professionnel au monde. LinkedIn utilise Bazel pour développer ses applications iOS.

Lyft

Lyft utilise Bazel pour ses applications iOS (source).

Makani

Makani, désormais une filiale de Google, développe des cerfs-volants et utilise Bazel pour développer ses logiciels (y compris son logiciel C++ intégré).

Meetup

Meetup est un portail de réseau social en ligne qui facilite les réunions de groupe hors connexion. L'équipe d'ingénierie Meetup contribue à rules_scala et est responsable de rules_avro et rules_searchads.

Nvidia

Chez Nvidia, nous utilisons dazel(docker bazel) pour Python afin de contourner quelques-uns des événements à venir de Python. Tout le reste s'exécute en bazel normal (Presque principalement Go / Scala/ C++/ Cuda) (source)

Peloton Technology

Peloton Technology est une entreprise technologique automatisée des véhicules qui traite les accidents de camions et l'utilisation de carburant. L'entreprise utilise Bazel pour activer des builds fiables pour les systèmes de sécurité automobile.

Pinterest

Pinterest est le catalogue d'idées du monde. L'équipe se sert de Bazel pour créer divers services de backend (Java/C++) et de l'application iOS (Objective-C/C++).

Nous avons constaté que Bazel était le mieux adapté à nos objectifs pour établir les fondations d'un ordre d'ampleur des performances, éliminer les variations dans les environnements de compilation et adopter progressivement. C'est pourquoi nous vous envoyons désormais toutes nos releases iOS via Bazel. Développement de compilations iOS rapides et fiables sur Pinterest

PubRef

PubRef est une plate-forme d'édition scientifique émergente. Elle utilise Bazel avec rules_closure pour créer l'interface, des règles Java natives pour créer le backend principal, rules_go,rules_node et rules_kotlin pour créer des services de backend assortis rules_protobuf permet de faciliter la communication basée sur gRPC entre les services de backend. PubRef.org est basé à Boulder (Colorado).

Redfin

Redfin est une agence immobilière de nouvelle génération qui propose des services locaux complets. Elle se sert de Bazel pour créer et déployer le site Web et divers services de backend.

Avec la conversion derrière nous, les choses sont bien meilleures ! Nos compilations CI sont plus rapides (rapidement, car elles prenaient auparavant 40 à 90 minutes et se présentent maintenant en moyenne en 5 à 6 minutes). La fiabilité est également beaucoup plus élevée. Cette opération est plus difficile à quantifier, mais le passage d'échecs de compilation inexpliqués étant simplement considérés comme de vrais problèmes à résoudre, nous a soumis à un cycle vertueux de fiabilité croissante. (Installation de Python groupée). Nous sommes passés de Maven à Bazel et les builds sont 10 fois plus rapides.

Rituels

Ritual est une application de collecte mobile qui met en relation les restaurants avec les clients pour leur proposer un outil simple et rapide de récupération des repas et des boissons, sans attendre. Rituel utilise Bazel pour ses services de backend.

Snap

Snap, développeur de l'application de messagerie Snapchat, a migré de Buck vers Bazel en 2020 (source). Pour en savoir plus sur leur processus, consultez leur blog technique.

Rayure

Stripe propose des solutions de paiement mobile. Ce sont les principaux responsables des règles de Bazel.

Tink

Tink est une entreprise de la fintech européenne qui crée le meilleur moyen de communiquer avec des banques dans toute l'Europe.

L'entreprise utilise Bazel pour développer ses services de backend à partir d'un monorepo polyglot. Les ingénieurs de Tink organisent le groupe de meetup bazel build //stockholm/....

Tokopédie

Tokopedia est une entreprise technologique indonésienne spécialisée dans l'e-commerce. Elle compte plus de 90 millions d'utilisateurs actifs par mois et plus de 7 millions de marchands sur la plate-forme.

Il a rédigé l'articleComment Tokopedia a atteint un délai de compilation 1000% iOS plus rapide , qui explique comment Bazel a accéléré ses builds. La durée de compilation est passée de 55 minutes à 10 minutes avec Bazel et de 5 minutes avec la mise en cache à distance.

Twitter

Twitter a choisi de migrer de Pants vers Bazel comme outil principal de compilation (source).

Deux Sigma

Two Sigma est une entreprise technologique basée à New York qui s'efforce de dégager de la valeur dans les données mondiales.

Uber

Uber est une entreprise de transport de voitures. Avec 900 développeurs actifs, le monorepo Go d'Uber est probablement l'un des plus grands dépôts Go utilisant Bazel. Consultez l'article Building Go's Go Monorepo with Bazel pour en savoir plus sur leur expérience.

Uber Advanced Technologies Group

Uber Advanced Technologies Group se concentre sur les efforts des véhicules autonomes chez Uber, y compris le covoiturage et le transport de marchandises. Bazel est le système de compilation principal de Bazel.

Vistar Media

Vistar Media est une plate-forme publicitaire qui permet aux marques de toucher les consommateurs en fonction de leur comportement dans le monde physique. Son équipe d'ingénieurs est principalement basée à Philadelphie et utilise Bazel pour les builds, les déploiements, pour accélérer les tests et pour regrouper les dépôts écrits avec différentes technologies.

VMware

VMware utilise Bazel pour produire des builds déterministes et fiables tout en développant des produits innovants pour ses clients.

Wix

Wix est une plate-forme de développement Web dans le cloud. Leur backend utilise du code Java et Scala. Ils utilisent l'exécution à distance avec Google Cloud Build.

Nous avons constaté que les builds vides sont environ cinq fois plus rapides lors de l'exécution avec l'exécution à distance bazel, qui exploite les fonctionnalités de compilation/test parallèles de Bazel lorsqu'elle distribue les actions de build/test à une ferme de nœuds de calcul. Les temps de compilation moyens sont plus de 10 fois plus rapides en raison de l'utilisation du mécanisme de mise en cache agressif de Bazel. (Si vous effectuez une migration de Bazel depuis Maven ou Gradle vers 5 questions essentielles à vous poser)

Zenly

Zenly est une carte en ligne de vos amis et de votre famille. C'est le moyen le plus amusant de se réunir, ou de voir ce qui se passe ! pour que vous puissiez vous sentir ensemble, malgré l'éloignement.


Projets Open Source à l'aide de Bazel

Abseil

Abseil est une collection Open Source de code C++ (compatible avec C++11) conçue pour compléter la bibliothèque standard C++.

Angular

Angular est un framework Web populaire. Angular a été créé avec Bazel.

Apollo

Apollo est une architecture hautes performances et flexible qui accélère le développement, les tests et le déploiement de véhicules autonomes.

brpc

Un framework RPC de niveau industriel utilisé dans Baidu, avec plus d'un million d'instances(ne comptant pas les clients) et des milliers de types de services, appelés "baidu-rpc", au sein de Baidu.

cert-manager

cert-manager est un module complémentaire de Kubernetes permettant d'automatiser la gestion et l'émission de certificats TLS à partir de diverses sources émettrices. Cela garantit que les certificats sont valides et à jour régulièrement, et tente de les renouveler à un moment approprié avant leur expiration.

CallBuilder

Générateur de code Java permettant de créer un compilateur en écrivant une fonction.

CPPItertools

Bibliothèque C++ basée sur les plages pour les modules complémentaires de boucles, inspirées des bibliothèques Python intégrées itertools et itertools. À l'instar des outils itérables et des intégrées intégrées Python3, cette bibliothèque utilise l'évaluation différée dans la mesure du possible.

Copybara

Copybara est un outil permettant de transformer et de déplacer du code d'un dépôt à un autre.

Dagger

Dagger est un framework d'injection de dépendances totalement statique et au moment de la compilation pour Java et Android.

DAML

DAML est un langage de contrat intelligent qui permet de créer des applications distribuées évolutives dans un environnement sécurisé et respectant la vie privée.

Deepmind Lab

Plate-forme 3D personnalisable pour la recherche d'IA basée sur des agents.

Drake

Drake est une boîte à outils C++ démarrée au MIT et dirigée par l'Institut de recherche Toyota. Il s'agit d'un ensemble d'outils permettant d'analyser la dynamique de nos robots et de créer des systèmes de contrôle pour eux, en mettant l'accent sur la conception/analyse basée sur l'optimisation.

Envoy

Proxy C++ L7 et bus de communication

Ce produit est sujet à une erreur

Détecte les erreurs Java courantes en tant qu'erreurs de compilation. (La migration vers Bazel est en cours.)

Extensible Service Proxy

Extensible Service Proxy (ESP) est un proxy qui active les fonctionnalités de gestion des API pour les services d'API JSON/REST ou gRPC. La mise en œuvre actuelle est basée sur un serveur proxy inverse HTTP NGINX.

Fruit

FFruit est une application Android Open Source gratuite pour le service populaire Falling Fruit.

Examen du code Gerrit

Gerrit est un outil de révision de code et de gestion de projets destiné aux projets Git.

Gitiles

Gitiles est un navigateur de dépôt simple conçu pour JGit destiné aux dépôts Git.

Grakn

Grakn (https://grakn.ai/) est le moteur de Knowledge Graph qui permet d'organiser des réseaux de données complexes et de les interroger.

GRPC

Système d'appel de procédure à distance neutre en langage et plate-forme Bazel est un système de compilation compatible, mais pas principal.

gVisor

gVisor est un bac à sable d'exécution de conteneur.

Guétzli

Guetzli est un encodeur JPEG qui vise à offrir une excellente densité de compression à haute qualité visuelle.

Gulava

Un générateur de code Java qui vous permet d'écrire des prédicats de style Prolog et de les utiliser de manière transparente à partir du code Java normal.

Heron

Heron est un moteur de traitement par flux distribué, tolérant aux pannes et en temps réel proposé par Twitter.

JGit

JGit est une bibliothèque Java légère et pure qui met en œuvre le système de contrôle des versions de Git.

Jsonnet

Langage de génération de configuration élégant et spécifié de manière explicite pour JSON. (Bazel est un système de compilation compatible.)

Kubernetes

Kubernetes est un système Open Source permettant de gérer les applications conteneurisées sur plusieurs hôtes. Il fournit des mécanismes de base pour le déploiement, la maintenance et le scaling des applications.

Kythe

Un écosystème pour la création d'outils compatibles avec le code

Nomulus

Service de registre de noms de domaine de premier niveau sur Google App Engine

ONOS : Open Network Operating System (Système d'exploitation réseau ouvert)

ONOS est la seule plate-forme de contrôleurs SDN compatible avec la transition des anciens réseaux "brun field" vers les réseaux "SDN" (champ vert). Ainsi, les opérateurs peuvent saisir de nouvelles fonctionnalités, ainsi que des coûts de déploiement et d'exploitation inédits.

PetitParser pour Java

Les grammaires des langages de programmation sont traditionnellement spécifiées en mode statique. Elles sont difficiles à rédiger et à réutiliser en raison des ambigu.tés qui surviennent inévitablement. PetitParser combine des idées d'analyses sans analyses, de combinateurs d'analyseurs, d'analyses grammaticales d'expressions et d'analyseurs de packsrat pour modéliser les grammaires et les analyseurs en tant qu'objets pouvant être reconfigurés de manière dynamique.

PlaidML

PlaidML est un framework qui permet de travailler en profondeur sur le deep learning.

Projet V

Le projet V est un ensemble d'outils conçus pour vous aider à créer votre propre réseau de confidentialité sur Internet.

Mise en œuvre de Prysmatic Labs Ethereum 2.0

Prysm est un client de segmentation pour Ethereum 2.0, une plate-forme de calcul distribuée basée sur la blockchain.

Rayon

Ray est un framework d'exécution distribué hautes performances flexible.

Reste

Resty est une bibliothèque cliente HTTP et REST simple pour Go, inspirée de Ruby-client.

Temps brut

Le projet "Roughtime" vise à assurer une synchronisation temporelle sécurisée.

Sélénium

Selenium est un framework portable qui permet de tester des applications Web.

Sémantique

Semantic est une bibliothèque Haskell et un outil de ligne de commande permettant d'analyser, d'analyser et de comparer le code source. Il est développé par GitHub et utilisé par exemple pour la navigation du code.

Diffusé

Served est une bibliothèque C++ pour la création de serveurs Web RESTful hautes performances.

Sonnet

Sonnet est une bibliothèque basée sur TensorFlow qui permet de créer des réseaux de neurones complexes.

Sorbet

Sorbet est un vérificateur de type rapide et puissant pour un sous-ensemble de Ruby. Il s'adapte aux codebases comportant des millions de lignes de code et peut être adopté de manière incrémentielle.

Tink

Tink est une bibliothèque Open Source multilingue, multiplate-forme qui fournit des API cryptographiques sécurisées, faciles à utiliser correctement et difficiles à utiliser.

TensorFlow

Bibliothèque logicielle Open Source pour l'intelligence artificielle

Turbo Santa

Un émulateur GameBoy indépendant de la plate-forme.

Analysis

Le projet Wycheguard teste les bibliothèques cryptographiques contre les attaques connues.

XIOSim

XIOSim est un simulateur microarchitectural détaillé en mode utilisateur pour l'architecture x86.

ZhihuDailyPurify

ZhihuDailyPurify est une version légère de Zhihu Daily, un site Web chinois de questions-réponses.