Top x distinct values ordered by date for each uid
WITH cte AS ( SELECT *,
                     DENSE_RANK() OVER ( PARTITION BY interviewee_uid 
                                         ORDER BY interviewer_uid) iid,
                     ROW_NUMBER() OVER ( PARTITION BY interviewee_uid, 
                                                      interviewer_uid 
                                         ORDER BY idate DESC) did
              FROM datatablename )
SELECT * 
FROM cte
WHERE did = 1
  AND iid &lt;= 3;


fiddle



UPDATE.

Previous query contains logical error.

Edited variant:

WITH 
cte1 AS ( SELECT interview_id, interviewee_uid, interviewer_uid, idate,
                 ROW_NUMBER() OVER (PARTITION BY interviewee_uid, 
                                                 interviewer_uid 
                                    ORDER BY idate DESC) did
          FROM test ),
cte2 AS ( SELECT interview_id, interviewee_uid, interviewer_uid, idate,
                 ROW_NUMBER() OVER (PARTITION BY interviewee_uid 
                                    ORDER BY idate DESC) did
          FROM cte1
          WHERE did = 1
)
SELECT interview_id, interviewee_uid, interviewer_uid, idate 
FROM cte2 
WHERE did &lt;= 3;


fiddle (with demonstration that previous query is wrong).