I am using YAML myself to manage my CV in two different languages. Using a convention like "description(en): ..." the different translations are co-located making it easier to keep everything in sync.
// Change this to switch languages
#let selectedLang = "en"
#let lang(..arguments) = arguments.named().at(selectedLang)
#workinfo(
position: lang(en: "Senior Developer", es: "Señor Developer"),
etc...
)