He made his professional debut for Atlético Paranaense in 0–1 defeat away to Nacional Atlético Clube in Campeonato Paranaense on 13 February 2005. Guilherme had risen through the ranks at the club and played 18 league matches and three Brazilian Cup games in the 2007 season.
In August 2007, Guilherme signed a five-year contract with FC Lokomotiv Moscow, becoming the first Brazilian goalkeeper in Russian football. He was handed the number 85 shirt. In 2007, he did not play a single game for the first team, and played only three games for the reserves. Guilherme made his official first team debut on 12 July 2009, in Russian Premier League against Tom Tomsk, since then has been first-choice goalkeeper for Lokomotiv. In 2010, Guilherme changed his jersey number from 85 to 1. He played all 30 league matches during this season. On 19 August 2010 Guilherme made his UEFA Europa League debut against Lausanne-Sport. During the winter camp at Cyprus in February 2013 Guilherme was appointed Lokomotiv's captain by manager Slaven Bilić. In July 2013 Guilherme won monthly contest among Lokomotiv's fans and was named Player of the month. He missed six month after cruciate ligaments injury in CSKA match on 28 July 2014 and returned to first-team football only next spring. Though, this season proved to be the most successful for Guilherme at Lokomotiv, as Loko claimed bronze medals. In March 2015, his performances once more gained him the Lokomotiv Player of the month title.
International career
Guilherme was born and raised in Brazil. He gained Russian citizenship, and on 22 November 2015, he was called up to the Russia national football team for friendly games against Lithuania and France. He made his debut on the 26 March 2016 at Otkrytiye Arena, replacing fellow debutant Stanislav Kritsyuk at half time in a 3–0 win, and became the first player naturalised from outside the former Soviet Union to feature for the Russian national team. He was included in the Russia squad in UEFA Euro 2016, but did not play a single match. On 11 May 2018, he was included in Russia's extended 2018 FIFA World Cup squad as a back-up 5th goalkeeper. He was not included in the finalized World Cup squad. Following Igor Akinfeev's retirement from the national team after the World Cup, Guilherme became the first-choice goalkeeper for the team, competing with Andrey Lunyov.
Personal life
On 12 December 2009, his 24th birthday, Guilherme married Rafaele, with whom he has two daughters. Guilherme is fluent in Russian. On 22 November 2015, Guilherme received Russian citizenship and became eligible to represent Russia at international level. He develops a close relationship with Mário Fernandes and Ari, who are also Brazilians and play for the Russian national football team.