No lo pudiste encontrar porque es imposible. Ninguno de los operadores de búsqueda funciona en el esquema que proporcionó.
La solución más sencilla es cambiar un poco el esquema:
db.coders.save( {
'name': 'John',
'languages' : [ { n: 'php', v: 'bad'},{n:'java', v: 'good'},{n : 'brainfuck', v: 'very bad'}]
});
En tal caso, puede consultar los datos utilizando la siguiente consulta:
db.coders.find({'languages.v' : 'good'})