Peca attended Quinnipiac University for four years, where he played four seasons with the Quinnipiac Bobcats men's ice hockey team which competes in NCAA's Division I in the ECAC Hockey conference. He was recognized for his outstanding play with the Bobcats when he was named as a freshman to the 2011–12 ECAC Hockey All-Rookie Team,[3] and in his final season was named to the 2014–15 All-ECAC Hockey First Team and team co-captain.[4]
On December 27, 2016, the Lightning announced that Peca would be called up to the NHL roster.[7] On December 28, Peca made his NHL debut in a 4–3 Lightning overtime win over the visiting Montreal Canadiens.[8][9] On December 31, Peca recorded his first career NHL point, which was an assist on a goal by Alex Killorn.[10] On January 3, 2017, Peca scored his first NHL goal against Connor Hellebuyck of the Winnipeg Jets, making him the first Quinnipiac Bobcat to score a goal in the NHL.[11] On July 5, 2017, Peca signed a one-year, two-way contract extension with the Lightning.[12] On January 4, 2018, Peca was named to the 2018 AHL All-Star game.[13]
As a free agent, Peca signed a two-year, $2.6 million contract with the Montreal Canadiens on July 1, 2018.[14] During the following 2018–19 season, on 8 November 2018, Peca scored his first goal for Montreal in a 6–5 overtime defeat against the Buffalo Sabres.[15] In the final year of his contract with the Canadiens in the 2019–20 season, Peca was unable to keep his role in the NHL through training camp and was placed on waivers before he was assigned to AHL affiliate, the Laval Rocket. He appeared in five scoreless games on recall with Montreal through the season, before he was dealt at the NHL trade deadline to the Ottawa Senators in exchange for Aaron Luchuk and a 2020 draft pick on February 24, 2020.[16] He played in five games for the Senators, registering one assist and an additional 21 games for Ottawa's AHL affiliate, the Belleville Senators, scoring three goals and eleven points.[17]
On July 29, 2021, Peca was signed as a free agent to a one-year, two-way contract with the St. Louis Blues.[17] He was assigned to the Blues' AHL affiliate, the Springfield Thunderbirds after clearing waivers at the beginning of the 2021–22 season.[18] Peca was recalled on December 10, 2021[19] and played in five games with the Blues, registering one point before being sent to Springfield again on December 20.[20] He was re-signed by the Blues to a two-year contract extension on March 23, 2022.[21]
Peca attended the Blues 2023 training camp but failed to make the roster. He was placed on waivers on October 1, 2023[22] and after going unclaimed, was assigned to Springfield on October 2 to begin the 2023–24 season.[23] He was named the captain of the Springfield Thunderbirds on opening night of the 2023–24 season, on October 14.[24]