async.each could work for this as well.

```javascript
async.each(files, function(file, done){
  self.upload(file.src, file.dest, done)
}, cb);
```