Arizona Cardinals Penny was signed by the
Arizona Cardinals as an undrafted free agent on May 9, 2016. He was waived on September 3, 2016, and was signed to the practice squad the next day. He signed a reserve/future contract on January 3, 2017, after spending his entire rookie season on the practice squad. In Week 4, against the
San Francisco 49ers, Penny had his first career carry, a one-yard rush, in the 18–15 victory. On December 3, against the
Los Angeles Rams, he had his first professional touchdown in the 32–16 loss. Overall, he finished the 2017 season with 31 carries for 124 yards and two rushing touchdowns to go along with four receptions for 38 yards. On September 1, 2018, Penny was waived by the Cardinals and was signed to the practice squad the next day.
New York Giants 2018 On September 19, 2018, Penny was signed by the
New York Giants off the Cardinals' practice squad. In the 2018 season, Penny finished with eight receptions for 50 receiving yards to go along with seven carries for 25 rushing yards in 14 games and three starts. Penny became the Giants' main fullback and also contributed to their special teams units.
2019 On March 12, 2019, Penny re-signed with the Giants. In the 2019 season, Penny finished with 15 carries for 39 rushing yards in 16 games and one start.
2020 On March 12, 2020, Penny signed a two-year contract extension with the Giants. On January 2, 2021, Penny was placed on injured reserve. Penny appeared in 14 games and had six carries for 15 yards along with 2 receptions for 20 yards.
2021 Due to multiple injuries at running back, Penny would be used as a hybrid fullback and running back in the 2021 season. On October 17, 2021, Penny recorded his first rushing touchdown for the
New York Giants against the
Los Angeles Rams in a 38–11 loss. In Week 14, against the
Los Angeles Chargers, he had a receiving touchdown. In the 2021 season, he appeared in all 17 games and started three. On November 28, 2022, Penny announced his retirement from the NFL. ==Coaching career==