Database
[{createdBy:"user1",storyId:1,viewers:["user3"],},{createdBy:"user2",storyId:2,viewers:["user3"],},{createdBy:"user2",storyId:3,viewers:["user4"],},{createdBy:"user5",storyId:4,viewers:["user3"],},{createdBy:"user5",storyId:5,viewers:["user3"],}]
Query
db.collection.aggregate([{"$group":{"_id":"$createdBy","isAllViewed":{"$push":{"$ne":[{"$setIntersection":["$viewers",["user3"]]},[]]}}}},{"$project":{"_id":0,"createdBy":"$_id","isAllViewed":{"$allElementsTrue":"$isAllViewed"}}}])