Both frameworks are asynchronous.
We also use it for direct training of the weights of a network in reinforcement learning, not only hyperparameters.
I wonder if the maker never graduated.
;-)
Program synthesis only in some particular cases, like the parametrization of programs for speed or another criterion - but not in the general case of program synthesis.
If you instead have a sampling algorithm informed by the loss functions you avoid this problem. (You instead might have to worry about local minima.)