Mattis began his career as a trainee with Huddersfield Town, debuting on 1 May 1998 in the First Division match which Huddersfield drew 2-2 with Crystal Palace. Mattis came on as a 38th minute susbtitute for Jon Dyson.
Mattis played his second match - the final game of 1998-99 - eight days later, but did not play again until the second game of 2001-02, more than two years later. However, this was the breakthrough season for Mattis, who played a total of 29 league matches that season. Another full season followed, but in 2003-04 Mattis played only five games, including just one full match - the 6-2 defeat at Scunthorpe United.
Released at the season's end, Mattis joined Bury and made his debut on 7 August 2004 in the 3-1 home win over Yeovil Town. He has appeared regularly for the club since then.
Mattis has represented the Republic of Ireland at under-21 level.
On 10 January 2007, Mattis joined Barnsley after two unsuccessful bids despite offers from MK Dons. The final fee was £50,000 rising to £75,000 if Barnsley avoid relegation, plus a 20% sell on fee.
In September 2007 he signed for Walsall on a month long loan deal but suffered a broken leg in a 0-0 draw with Tranmere Rovers and was sent back to Barnsley where he is expected to be out for three months.
Mattis was released by Barnsley on 30 June 2008, after having his contract terminated by mutual consent. On 3 July 2008, he signed a permanent contract with Walsall returning to the club he had a successful loan spell with during the previous season.
He was released by Walsall on 10 May 2010 along with six other players. He has since signed for the Spireites on the 21st May 2010. He signed a two year deal, keeping him at the club until summer 2012. He made a flying start to his Chesterfield career, scoring in his first three games against Barnet in the league, against Middlesbrough in the League Cup and Port Vale in the league.