Database

[{participants:[{user:"A",lastViewed:"Jan 11"},{user:"B",lastViewed:"Jan 13"},],updatedAt:"Jan 13",},{participants:[{user:"A",lastViewed:"Jan 11"},{user:"B",lastViewed:"Jan 14"},],updatedAt:"Jan 10",},{participants:[{user:"C",lastViewed:"Jan 11"},{user:"B",lastViewed:"Jan 14"},],updatedAt:"Jan 10",}]

Query

db.collection.find({$expr:{$let:{vars:{user:{$arrayElemAt:[{$filter:{input:"$participants",cond:{$eq:["$$this.user","A"]}}},0]}},in:{$and:[{$ne:["$$user",null]},{$gt:["$updatedAt","$$user.lastViewed"]}]}}}})

Result