Cork native John was a stand-out player at underage level for Ireland, captaining the Under-19s to the semi-finals of the UEFA U19 European Championships in 2011.
He became a regular for the Under-21s and also wore the captain's armband for that team. At the same time, his club career started to take off after originally starting out at Sunderland.
The intelligent cantre-back had loan spells with Crystal Palace, Sheffield United, Bradford City and Southend United before joining Gillingham in 2014.
A regular with Gillingham, where he scored 10 goals, John opted to move to Brentford in 2016 and was appointed as club captain. Then in 2018, he joined Sheffield United for what was then a club transfer record fee.
John made his Ireland senior debut in a home friendly against Iceland in 2017. He led Ireland out as captain against Bulgaria in 2019.