Zur Saison 2009/10 transferierten die Juniors den Stürmer im Austausch für Nicolas Chouinard, Spencer MacDonald und ein Erstrunden-Wahlrecht im LHJMQ Entry Draft 2009 zum Ligakonkurrenten Cape Breton Screaming Eagles. Dort absolvierte er mit 90 Punkten in 56 Begegnungen seine beste Spielzeit und wurde ins First All-Star-Team berufen. Gegen Ende der Spielzeit holten ihn die Buffalo Sabres, die ihn bereits im April 2010 unter Vertrag genommen hatten, in ihr Farmteam. Für die Portland Pirates bestritt Adam drei Spiele in den Playoffs der American Hockey League (AHL).
Mit Beginn der Saison 2010/11 war Adam fester Bestandteil des Kaders der Pirates, kam aber bereits im Oktober 2010 zu seinem Debüt in der NHL. Im Saisonverlauf bestritt der Center 19 NHL-Spiele für die Sabres und kam dabei auf vier Punkte. In der AHL absolvierte er 57 Spiele und erzielte 62 Punkte. Dies waren teamintern hinter Mark Mancaris 64 die zweitmeisten und unter allen Liganeulingen die meisten. Folglich erhielt Adam den Dudley „Red“ Garrett Memorial Award als bester Rookie der Saison und wurde ins AHL All-Rookie Team berufen. Darüber hinaus hatte er im Saisonverlauf am AHL All-Star Classic teilgenommen. Zur Saison 2011/12 erhielt er einen Stammplatz im NHL-Kader der Sabres. Im Saisonverlauf erhielt er eine Nominierung zur SuperSkills-Competition der Rookies beim NHL All-Star Game 2012 in der kanadischen Hauptstadt Ottawa.
Trotz der 20 Punkte in 52 NHL-Spielen verbrachte er nahezu die komplette Saison 2012/13 in der AHL bei den Rochester Americans, für die er insgesamt 67 Mal auf dem Eis stand. Bei den Sabres kam er nur auf vier Spiele und stand zu Beginn der Spielzeit 2013/14 ebenfalls nicht im NHL-Kader, absolvierte jedoch im Laufe der Spielzeit immerhin zwölf Einsätze für Buffalo.
Im Dezember 2014 wurde Adam im Austausch gegen Jerry D’Amigo innerhalb der Liga zu den Columbus Blue Jackets transferiert, wo er jedoch zunächst erneut im Farmteam, den Springfield Falcons aus der AHL, spielen wird.[1] Nach einem knappen halben Jahr in Columbus wurde sein auslaufender Vertrag nicht verlängert, sodass er sich im Juli 2015 den New York Rangers anschloss, wo er zu Beginn der Saison 2015/16 zunächst zum Farmteam Hartford Wolf Pack in die AHL geschickt wurde. Dort verbrachte er die gesamte Spielzeit und erhielt anschließend keinen weiterführenden Vertrag in New York, sodass er im Oktober 2016 erstmals nach Europa wechselte und einen Einjahresvertrag bei den Adler Mannheim aus der Deutschen Eishockey Liga (DEL) unterzeichnete.
Im Frühjahr 2019 gewann Adam mit den Adlern die Deutsche Meisterschaft und wechselte anschließend zur Düsseldorfer EG.[2] Mit dem Düsseldorfer Traditionsverein erreichte er den fünften Platz nach der Hauptrunde, ehe die Playoffs wegen der COVID-19-Pandemie abgesagt wurden. Im November 2020 verließ er den Verein während der Vorbereitung auf die neue Saison.[3] Kurz darauf entschied er sich für ein Engagement bei den Nürnberg Ice Tigers und unterschrieb einen Vertrag für die Spielzeit 2020/21.[4] Nach Ablauf dessen wurde er im Juli 2021 von den Iserlohn Roosters verpflichtet, wo er eine Saison verbrachte. Anschließend wechselte er zur Saison 2022/23 innerhalb der Liga zu den Straubing Tigers, bei denen er eine Spielzeit verbrachte, ehe die Tigers im Juli 2023 die Trennung vom Spieler bekannt gaben.
Adam vertrat sein Heimatland Kanada bei der U20-Junioren-Weltmeisterschaft 2010 in den kanadischen Städten Saskatoon und Regina. Nach einer knappen 5:6-Niederlage in der Overtime gegen die Vereinigten Staaten gewannen die Kanadier die Silbermedaille. In sechs Turnierspielen erzielte Adam vier Tore, darunter der erste Treffer des Finalspiels, und bereitete weitere vier vor. Zudem erhielt er acht Strafminuten.
Zudem spielte er bei der World U-17 Hockey Challenge 2006 für das Team Canada Atlantic, wo er in fünf Spielen ein Tor vorbereitete.
(Legende zur Spielerstatistik: Sp oder GP = absolvierte Spiele; T oder G = erzielte Tore; V oder A = erzielte Assists; Pkt oder Pts = erzielte Scorerpunkte; SM oder PIM = erhaltene Strafminuten; +/− = Plus/Minus-Bilanz; PP = erzielte Überzahltore; SH = erzielte Unterzahltore; GW = erzielte Siegtore; 1Play-downs/Relegation; Kursiv: Statistik nicht vollständig)