Bakker speelde in de jeugd van Ajax. Hij debuteerde op 27 oktober 2017 in het betaald voetbal in dienst van Jong Ajax. Daarmee won hij die dag met 2–3 uit bij FC Eindhoven. Hij kwam in de 65e minuut in het veld voor Mauro Savastano. Bakker werd in het seizoen 2017/18 met Jong Ajax kampioen van de Eerste divisie. Aan het einde van het seizoen 2017/18 zat hij regelmatig op de bank bij de selectie van het eerste elftal van Ajax. Hij debuteerde het seizoen erna, in een met 7–0 gewonnen bekerwedstrijd tegen HVV Te Werve. Ook speelde hij in een met 3–0 gewonnen bekerwedstrijd tegen Go Ahead Eagles. Een debuut in de Eredivisie bleef uit. Bakker wilde in de winterstop van het seizoen 2018/19 naar het tweede elftal van Paris Saint-Germain vertrekken, maar door vertraging in het afhandelen van het papierwerk kwam deze transfer niet op tijd rond.[3]
Paris Saint-Germain
Bakkers contract bij Ajax eindigde in de zomer van 2019, waarna hij transfervrij kon vertrekken. Paris Saint-Germain had in de tussentijd echter het tweede elftal opgeheven. Hierdoor sloot hij in de voorbereiding van het seizoen 2019/20 aan bij het eerste elftal.[4] Bakker debuteerde op 29 januari 2020 in de hoofdmacht van Paris Saint-Germain in een bekerwedstrijd tegen Pau. Hij kreeg op 12 februari 2020 zijn eerste basisplek, tijdens een bekerwedstrijd tegen Dijon. Hij speelde op 15 februari 2020 zijn eerste wedstrijd in de Ligue 1, tegen Amiens. Dat seizoen bleef het bij deze ene competitiewedstrijd. Met deze bijdragen won hij in het seizoen 2019/20 alle nationale prijzen met PSG. Hij zat op de bank tijdens de van Bayern München verloren finale van de Champions League 2019/20. Bakker was in seizoen 2020/21 een volwaardig selectielid bij Paris Saint-Germain. Hij speelde dat jaar 26 wedstrijden in de Ligue 1 (18 vanaf de aftrap) en 10 in de Champions League (3 als basisspeler). Hij bereikte met Paris Saint-Germain deze keer de halve finale van de Champions League, tegen Manchester City. Hierin was hij ook basisspeler. Desondanks besloot hij PSG te verlaten omdat hij meer speeltijd wilde.[5]
Bayer Leverkusen
Bakker tekende in juli 2021 een vierjarig contract bij Bayer Leverkusen, dat een bedrag van circa 7 miljoen euro voor hem betaalde aan Paris Saint-Germain.[6][7] Hier kreeg hij een vergelijkbare hoeveelheid speeltijd als die hij in zijn laatste jaar in Parijs had. Dit was het geval in zowel zijn eerste jaar onder coach Gerardo Seoane als in 2022/23 onder diens opvolger Xabi Alonso. Bakker maakte op 21 augustus 2021 zijn eerste doelpunt in het betaald voetbal. Hij bracht Leverkusen toen na drie minuten op 1–0 in een met 4–0 gewonnen wedstrijd in de Bundesliga thuis tegen Borussia Mönchengladbach. Zijn ploeggenoten en hij werden dat jaar derde, het beste resultaat sinds 2015/16. Bakker speelde zodoende in 2022/23 ook met Bayer Leverkusen in de Champions League. Na een derde plaats in de poule, kwamen zijn teamgenoten en hij tot de halve finale van de Europa League.[8]