Database

[{_id:1,title:"Task 1",assignedTo:["userId1","userId2","userId3"],status:"To do"},{_id:2,title:"Task 2",assignedTo:["userId1","userId2"],status:"In progress"},{_id:3,title:"Task 3",assignedTo:["userId2","userId3"],status:"In progress"}]

Query

db.collection.aggregate([{"$unwind":"$assignedTo"},{"$group":{"_id":{assignedTo:"$assignedTo",status:"$status"},"numTasks":{"$sum":1}}},{"$group":{"_id":"$_id.assignedTo","tasks":{"$push":{status:"$_id.status","numTasks":"$numTasks"}}}}])

Result