I would have each row as a "shift" (start/end) for employee. column for get-in, column for get-out, and you can find duration between them as duration.
data: load * ,if(rowno()=1, 1, if(peek(Name) = Name and Event = 'Get Out', peek(ShiftId), peek(ShiftId)+1)) as ShiftId ; load * inline [ Name | Event | Time Maria | Get In | 09:00 AM Maria | Get Out | 11:00 AM Maria | Get In | 01:00 PM Maria | Get Out | 05:00 PM John | Get In | 01:00 PM John | Get Out | 05:00 PM ] (delimiter is '|') ;
data_final1: load distinct ShiftId, Name resident data ;
left join (data_final1) load distinct ShiftId, time#(Time,'hh:mm TT') as Shift_Start resident data where lower(Event) = 'get in' ;
left join (data_final1) load distinct ShiftId, time#(Time,'hh:mm TT') as Shift_End resident data where lower(Event) = 'get out' ;