Mark is from Newry. He spent a year at Banbridge and was at Glenavon from the age of 15 making his debut there against Linfield aged 16.
He signed a 2 year contract with Linfield on 29 April 2013 having earlier signed a pre-contract. He had a trial at Bournemouth in January 2013 while with Glenavon.
Mark made his debut in a 3-0 home win against Ballinamallard United on Saturday December 14, 2013.
1st goal was an injury time winner in a 3-2 win away to Warrenpoint Town on Saturday, January 4, 2014.
Signed a new 2 year contract on Saturday December 20, 2014 to take effect on the expiry of his current contact at the season.
Named in the NIFWA Team of the Year for season 2014/15
Mark made his 100th Linfield appearance in a 0-0 draw at Seaview on Saturday August 13, 2016.
Mark agreed a 3 year contract extension on January 12, 2017 to take effect at the expiry of his current contract at the end of the season.
Mark made his 150th appearance in a 1-0 home win against Glentoran on September 9, 2017.
1st Newtownabbey LSC Player of the Year 2017/18
Missed the entire 2018/19 season due to injury.
Signed a one year contract extension in February 2020 to take effect from the end of the 2019/20 season.
200th Linfield appearance in a 2-0 win away to Coleraine on November 14, 2020.
Final goal away to Coleraine in 1-1 draw on May 25, 2021 effectively sealed the 55th league title.
Final game as sub in 2-0 win away to Cliftonville on May 29, 2021.
Mark rejoined Glenavon at the start of the 2021-22 season.
LINFIELD CAREER RECORD
(at end of 2020-21):
Played: 232 (including 5 as sub)