Database

db={user:[{_id:1,title:"User 1"}],user_credential:[{_id:1,credential_id:1,created_at:new Date(),identifier:{first_name:"Tan",middle_name:"Ting",last_name:"Tong"}},{_id:2,credential_id:1,created_at:new Date(),identifier:{first_name:"Mike",middle_name:"",last_name:"Jacky"}}]}

Query

db.user.aggregate([{"$lookup":{"from":"user_credential",let:{"user_credential_id":"$_id","title":"$title"},pipeline:[{$match:{$expr:{$eq:["$credential_id","$$user_credential_id"]}}},{$project:{first_name:"$identifier.first_name",middle_name:"$identifier.middle_name",last_name:"$identifier.last_name",title:"$$title",created_at:"$created_at",}}],"as":"member"}},{$unwind:"$member"},{$project:{_id:0,user_credential_id:"$_id",member:1}}])

Result