After starting off at Fluminense, he transferred to Rio Ave in 2012. He spent his entire time there out on loan, first at Real Madrid Castilla, and made one substitute appearance for the first team. He spent five years at Monaco, playing 233 total games and scoring 31 goals, and won Ligue 1 in 2016–17. In his debut season at Liverpool he won the UEFA Champions League. He won the UEFA Super Cup in 2019 and also played a key role in guiding Liverpool to the Premier League title in 2020, the club’s first league title in 30 years.