El segundo parámetro de populate
es una cadena de selección de campo, por lo que puede hacer esto como:
Author
.findOne({personcode: code})
.select('-_id -__v')
.populate('bookids', '-_id -__v')
.exec(function (err, data) {
//foo
});
Tenga en cuenta que debe combinar sus selecciones de campo en una sola cadena.