W pierwszej drużynie „Kolejorza” zadebiutował 12 lipca 2012 w zremisowanym 1:1 spotkaniu I rundy kwalifikacyjnej Ligi Europy z kazachskim Żetysu Tałdykorgan, wchodząc na plac gry w 90. minucie za Bartosza Ślusarskiego. 27 października 2012 zaliczył debiut w Ekstraklasie w przegranym 0:2 meczu 9. kolejki z Jagiellonią Białystok, zmieniając w 62. minucie Huberta Wołąkiewicza. 20 września 2013 w trakcie meczu 8. kolejki Ekstraklasy z Pogonią Szczecin nabawił się kontuzji mięśnia dwugłowego uda i do meczowej „osiemnastki” Lecha wrócił 13 grudnia na spotkanie 21. kolejki z Zawiszą Bydgoszcz. 5 maja 2014 zdobył swojego debiutanckiego gola w najwyższej klasie rozgrywkowej, w wygranym 2:1 spotkaniu 32. kolejki z Zawiszą Bydgoszcz. 21 listopada 2014 podpisał z poznańskim klubem nowy, trzyletni kontrakt, obowiązujący od 1 lipca 2015 do 30 czerwca 2018. W sezonie 2014/2015 zdobył z Lechem Poznań tytuł mistrza Polski, występując w 35 spotkaniach, strzelając 3 bramki i zaliczając 6 asyst.
Dynamo Kijów 11 lipca 2017, podpisując czteroletni kontrakt, został piłkarzem ukraińskiego Dynama Kijów. Gra na pozycji bocznego obrońcy. Po powrocie z wypożyczenia z Poznania w 2022 roku, jego pierwszym spotkaniem był mecz II rundy eliminacji Ligi Mistrzów przeciwko Fenerbahçe SK, rozgrywany na Stadionie Miejskim im.