The Polyglot's Dilemma: Conformance Testing a Dozen Specs in as Many Languages

MongoDB engineers juggling many implementations of many specs. At MongoDB, we develop a dozen client libraries ("drivers") in a dozen programming languages. A few wrap shared cores written in C or Java, but mostly they're rewrites in their target languages: the JavaScript Driver is pure JavaScript, the Rust Driver is pure Rust, and so on. Building the drivers this way is a big commitment. Lots of…