James attended South Allegheny Middle/Senior High School in Allegheny County, Pennsylvania. where he was a two-time Second-team All-State selection in both football and basketball. He was named First-team All-Century Conference as a tight end for both his junior and senior seasons. Over the two seasons he recorded 71 receptions for 1,030 yards and 10 touchdowns. For his final three seasons, he was named a team captain. He was invited to play in the Semper-Fidelis All-American game. He was also named to the 2011 Pittsburgh Post-Gazette Fabulous 22. MaxPreps rated him as the nation's No.3 tight end as a senior. He was rated by Rivals.com as a three-star recruit. He committed to Penn State University to play football.
College career
James began attending Penn State in 2012. He played in 12 games as a true freshman in 2012, with six starts. He recorded 15 receptions for 276 yards and tied a school record with five receiving touchdowns by a tight end. As a sophomore in 2013, James started all 12 games and recorded 25 receptions for 333 yards and three touchdowns. During his junior season in 2014, James broke the school's record for career touchdowns by a tight end, passing Ted Kwalick's 10. For the season, he recorded 38 receptions for 396 yards and three touchdowns. After his junior season, James entered the 2015 NFL Draft. He finished his career at Penn State with 76 receptions for 1,005 yards and 11 touchdowns.
Career statistics
Professional career
Coming out of Penn State, James was projected to be drafted anywhere from the fourth to sixth round by the majority of NFL analysts and scouts. He received an invitation to the NFL Combine and completed all of the required drills and positional workouts. On March 19, 2015, James attended Penn State's annual Pro Day and succeeded in lowering his times in the 40, 20, and 10-yard dash from the combine. He also performed positional drills for representatives and scouts from 19 NFL teams, who attended to scout James, Donovan Smith, Adrian Amos, and eight other Penn State players. He was ranked the fifth best tight end prospect available in the 2015 NFL Draft by NFLDraftScout.com and was ranked the 13th best tight end by NFL analyst Charles Davis.
Pittsburgh Steelers
James was drafted by the Pittsburgh Steelers in the fifth round of the 2015 NFL Draft.
2015 season
On May 14, 2015, the Steelers signed James to a four-year, $2.48 million rookie contract with $218,912 guaranteed. On November 8, 2015, James made his professional regular season debut and caught two passes for 13-yards and also scored his first touchdown on a four-yard reception in a 38-35 victory over the Oakland Raiders. As a rookie, he appeared in eight games, recording eight receptions for 56 yards and one touchdown.
2016 season
The following season, with Heath Miller retired, and newly signed free agentLadarius Green on injured-reserve, James became the starting tight end to begin the season. He started the Pittsburgh Steelers' season-opener against the Washington Redskins and caught five passes for 31-yards in the 38-16 victory. The following week, James caught three passes for 29 receiving yards and a touchdown in a 24-16 win against the Cincinnati Bengals. His first touchdown came on a nine-yard pass from Ben Roethlisberger. On October 9, 2016, James caught a career-high six receptions for 43-yards and caught his third touchdown of the season in a 31-13 victory over the New York Jets. In a Week 10 matchup against the Dallas Cowboys, James caught four passes for a season-high 59 receiving yards in a 35-30 loss. He finished the 2016 season with 39 receptions for 338 receiving yards and three touchdown in 16 games and 13 starts. On January 8, 2017, James started in his first career postseason game and caught one pass for nine yards as the Pittsburgh Steelers defeated the Miami Dolphins 30-12 in the AFC Wildcard game.
2017 season
James began the regular season as the Pittsburgh Steeler's de facto starting tight end ahead of Vance McDonald. On September 10, in the season opening 21–18 victory over the Cleveland Browns, James had six receptions for 41 yards and two touchdowns for his first career multi-touchdown game. During Week 15 against the New England Patriots, James seemingly caught a potential game-winning touchdown, but after a review, it was overturned when officials ruled that James lost control as the ball hit the ground. The controversial moment loomed large as Ben Roethlisberger threw an interception two plays later, resulting in the Steelers losing 24–27 and giving the Patriots another AFC East title and eventual #1 seed.
2018 season
In Week 2, against the Kansas City Chiefs, James recorded a career-high 138 receiving yards and a touchdown in the 42–37 loss. He played in 16 games with seven starts, recording 30 receptions for 423 yards and two touchdowns.
Detroit Lions
On March 14, 2019, James signed a four-year, $22.6 million contract with the Detroit Lions.