As a freshman at the University of North Carolina at Chapel Hill, Morin made 24 appearances including one start. He recorded a 5-3 win–loss record with a 5.45 ERA, and had 3 saves. After the 2010 season, he played collegiate summer baseball with the Bourne Braves of the Cape Cod Baseball League. As a sophomore in 2011, Morin made 32 appearances including six starts. He became the Tar Heels closer, and recorded 10 saves. In 64 innings of work, he struck out 66 batters, and walked 18, while posting a 4.64 ERA. While at North Carolina, Morin set the Atlantic Coast Conference’s single-season saves record as a junior in 2012, with 19. In 2012, he was named an All-American by Baseball America.
Professional career
Los Angeles Angels
The Los Angeles Angels of Anaheim selected Morin in the 13th round, 417th overall pick, of the 2012 Major League Baseball draft. The following season he was an MiLB.com Angels Organization All Star and Angels Minor League Pitcher of the Year, as pitching for two minor league teams he was 3-3 with 23 saves and a 1.93 ERA in 56 games, and struck out 76 batters in 70 innings. Morin was called up to the majors for the first time on April 27, 2014 and made his debut three days later on April 30 against the Cleveland Indians. He earned his first career win on June 21 against Texas. Morin would remain in the Angels bullpen for the remainder of the season and posted a 4-4 record with a 2.90 ERA in 60 appearances. The following season, Morin took a step back following the success from a season prior, posting a 4-2 record with one save and an ERA of 6.37 in 47 games, with 41 strikeouts in 35.1 innings. In 2016, Morin matched his career high of 60 appearances from 2014 while going 2-2 and lowering his ERA to 4.37. In 2017, Morin spent the majority of the season at the AAA level, pitching in 10 games for the Angels. He was put on waivers towards the end of the season.
Kansas City Royals
The Kansas City Royals claimed Morin off of waivers on September 12, 2017. He spent the rest of the season in the majors, pitching in six games for the Royals, but was designated for assignment at season's end.
Seattle Mariners
Morin was claimed off waivers by the Seattle Mariners on December 8, 2017. He was designated for assignment before the 2018 season. Morin began the 2018 season with the Tacoma Rainiers, and was promoted to the major leagues on June 8, pitching in three games for the team. He was designated for assignment on June 14, 2018. He was recalled on July 12, but then outrighted off the roster on July 20. He declared free agency on October 2, 2018.
Minnesota Twins
On December 18, 2018, Morin signed a minor league deal with the Minnesota Twins that included an invitation to spring training. Morin began the 2019 season with the Rochester Red Wings, with whom he was 0-1 with a 2.25 ERA and one save in eight games including one start, and was promoted to the major leagues on May 2, 2019. In 23 games for the Twins in 2019 he was 0-0 with one save and a 3.18 ERA.
Philadelphia Phillies
On July 20, 2019, the Minnesota Twins traded Morin to the Philadelphia Phillies in exchange for cash considerations. In 2019 with the Phillies he was 1-3 with a 5.79 ERA in 29 relief appearances in which he pitched 28.0 innings. He elected free agency on November 4, 2019 after being outrighted off the major league roster.
On January 31, 2020, Morin signed a minor league contract with the Milwaukee Brewers. On July 26, 2020, Morin was designated for assignment without appearing in a game.
Miami Marlins
On July 28, 2020, Morin was claimed off waivers by the Miami Marlins.