Andrew Ferguson, 35, attacked his victim in the complex at Dundee's Ninewells Hospital in 2000 before going on to rape another woman years later.
A jury convicted him of eight offences including rape, attempted rape, indecent assault and assault against three victims between 2000 and 2014.
Ferguson had denied the charges at the High Court in Edinburgh.
Two of the women were sleeping when he sexually assaulted them.
Ferguson, from Cairneyhill, carried out a sex attack and rape on the woman at the nurses' residence.
He then raped a second victim at houses in Inverkeithing and Cairneyhill.
Ferguson also assaulted a third woman at an address in Inverkeithing.
The trial judge, Lord McEwan, told Ferguson he needed a background report before sentencing him because he had not previously served a prison term.
Ferguson was put on the sex offenders' register and remanded in custody ahead of sentencing next month.
A Fife man has been found guilty of raping a woman at a Dundee hospital's nurses' residence.