Você não conseguiu encontrá-lo porque é impossível. Nenhum dos operadores de pesquisa funciona no esquema fornecido.
A solução mais fácil é alterar um pouco o esquema:
db.coders.save( {
'name': 'John',
'languages' : [ { n: 'php', v: 'bad'},{n:'java', v: 'good'},{n : 'brainfuck', v: 'very bad'}]
});
Nesse caso, você pode consultar os dados usando a seguinte consulta:
db.coders.find({'languages.v' : 'good'})