For such things like loops, filters, groups I use alot library - it designed for lazy iterations over arrays, but also supports Promise handlers. The first example would look like this:
const names = ['saviomartin', 'victoria-lo'];
const users = await alot(names)
.mapAsync(async name => {
let { data: user } = await axios.get(`api.github.com/users${name}`);
return user;
})
.toArrayAsync({ threads: 4 })