Roef begon zijn jeugdopleiding bij KFCO Wilrijk. Na één seizoen ruilde hij de club in voor Germinal Beerschot.[2] Nadat hij als generatiegenoot van onder andere Tortol Lumanza en Michaël Heylen titels pakte met de U12 en U13 van Germinal Beerschot, stapte hij over naar RSC Anderlecht.[3] Met Roef in doel won Anderlecht in 2013 als eerste Belgische club ooit de Viareggio Cup, een belangrijk internationaal jeugdvoetbaltoernooi. Roef werd na afloop uitgeroepen tot beste doelman van het toernooi.[4]
In de voorbereiding op het seizoen 2012/13 werd Roef bij de A-kern gehaald. Hij debuteerde voor Anderlecht op 19 januari 2014 toen hij in de eerste helft van de competitiewedstrijd tegen KV Mechelen de geblesseerde Silvio Proto moest vervangen.[5] Ruim een half jaar later verving hij tijdens de eerste groepswedstrijd van de Champions League de geschorste Proto tegen Galatasaray.[6] Roef speelde een zeer verdienstelijke wedstrijd, die op 1-1 eindigde, en kreeg achteraf een plaatsje in het Elftal van de Week van de Champions League.[7] Roef verving Proto in het seizoen nog in twee competitiewedstrijden (tegen KV Kortrijk vanwege de geboorte van Proto's kind en tegen Club Brugge vanwege een schorsing van Proto).[8][9] Roef startte dat seizoen ook de bekercampagne van Anderlecht, maar vanaf de terugwedstrijd van de kwartfinale koos trainer Besnik Hasi voor eerste doelman Proto. In het seizoen 2015/16 speelde Roef de hele bekercampagne, die weliswaar slechts twee wedstrijden inhield.
Roef werd in juli 2016 vaste doelman van Anderlecht, dat Proto naar KV Oostende zag vertrekken. Het liep niet zoals verwacht, want hij werd na wat blunders van hem door trainer René Weiler in de loop van het seizoen tussen de palen vervangen door toenmalig tweede doelman Frank Boeckx die voor de rest van het seizoen 2016/17 eerste keeper bleef van RSC Anderlecht. Hierdoor werd Davy Roef uitgeleend aan Deportivo La Coruña en maakte Rubén Martínez Andrade de omgekeerde beweging. Deze uitleenbeurt was vooral bedoeld om Davy Roef zijn gedachten te verzetten. De laatste wedstrijd van het seizoen waarin niets meer in te beslissen viel, maakte Davy Roef zijn debuut tussen de palen van Deportivo La Coruña thuis tegen UD Las Palmas. In die wedstrijd hield Roef de nul, de wedstrijd werd gewonnen met 3-0. Roef had in die wedstrijd zo'n goede indruk gemaakt dat Deportivo La Coruña er zelfs aan dacht om hem te kopen van RSC Anderlecht om hem volgend seizoen op gelijke hoogte met de andere doelmannen aan het seizoen te laten beginnen. Zover kwam het uiteindelijk niet, waarna hij het seizoen erna opnieuw werd uitgeleend, deze keer aan de Belgische eersteklasser Waasland-Beveren. Na zijn uitleenbeurt bij Waasland-Beveren keerde hij in de zomer van 2019 terug naar Anderlecht, waar hij echter geen speelkansen kreeg.
In september 2018 werd hij door de blessure van tweede doelman Simon Mignolet voor het eerst opgeroepen voor het eerste elftal van het Belgisch voetbalelftal voor de oefeninterland tegen Schotland en de allereerste wedstrijd van de UEFA Nations League tegen IJsland.[11] In september 2020 werd hij na het afhaken van Hendrik Van Crombrugge opgeroepen voor de UEFA Nations League-wedstrijden tegen Denemarken en IJsland.[12] Doordat enkele dagen later ook Thibaut Courtois afhaakte, werd Roef als derde doelman opgenomen in de wedstrijdkern tegen Denemarken en IJsland, waardoor hij zijn eerste twee selecties behaalde.
[13]