Database

db={"users":[{_id:ObjectId("62a2a0422ec90fea68390aaa"),name:"Robert Yamashita",username:"robyama",email:"robert.yamashita@rocketmail.com",},{_id:ObjectId("62a2a0452ec90fea68390aad"),name:"Charles X",username:"cvx",email:"charles.xxx@rocketmail.com",}],"points":[{userId:ObjectId("62a2a0422ec90fea68390aaa"),action:"Liked a post",points:10,},{userId:ObjectId("62a2a0422ec90fea68390aaa"),action:"Liked a post",points:10,},{userId:ObjectId("62a2a0452ec90fea68390aad"),action:"Liked a comment",points:5,}]}

Query

db.users.aggregate([{"$match":{"username":"robyama"}},{"$lookup":{"from":"points","as":"sortedPoints","pipeline":[{"$group":{"_id":"$userId","count":{"$sum":"$points"}}},{"$sort":{"count":-1}}]}},{"$unwind":{"path":"$sortedPoints","includeArrayIndex":"idx"}},{"$match":{"$expr":{"$eq":["$_id","$sortedPoints._id"]}}},{"$project":{"_id":{"name":"$name","username":"$username","email":"$email"},"count":"$sortedPoints.count","rank":{"$add":["$idx",1]}}}])

Result