Gooch was born in Santa Cruz, California on December 24, 1995, son of an English father and an Irish mother. His father is a professional soccer coach. At an early age, he joined the U.S. Soccer Development Academy club Santa Cruz County Breakers Academy. Gooch's talent attracted the attention of several European outfits, earning him a trial and eventual spot with Sunderland's youth academy. From the age of 10 Gooch traveled to Sunderland regularly during school holidays to train before moving to England and joining full-time at the age of 16, signing a two-year scholarship. Since joining the Sunderland U-16 side, Gooch worked his way through the U-18 and U-21 sides. Because of this, he signed a contract with the club, keeping him until 2017. On February 27, 2015, Gooch went on loan to Conference side Gateshead, on a 28-day youth loan. Gooch made his professional debut soon after, playing the whole game, in a 1–0 home loss against Bristol Rovers. Gooch made seven appearances and scored one goal, putting the Wearsiders ahead in a 3–1 home win against Wrexham and causing an own goal by opponent Steve Tomassen. Gooch made his professional debut for Sunderland on August 26, 2015 in a League Cup second round match against Exeter City as a substitute for Adam Matthews in the 58th minute of a 6–3 win at the Stadium of Light. On January 21, 2016, Gooch was loaned for a month to Doncaster Rovers of League One. He made his debut for them two days later, playing the full 90 minutes of a goalless draw at Fleetwood Town and his performance was praised by the Sheffield Star. After a handful of appearances for the club, on February 24 his loan was extended till then end of the season. He returned to Sunderland on March 19, due to ankle injury that he sustained against Fleetwood Town, but continued to play through the pain for eight matches. On April 21, 2016 Gooch signed a three-year contract with Sunderland, keeping him until 2019. On August 13, he made his Premier League debut, starting away against Manchester City in Sunderland's first match of the season, a 2–1 defeat. After making his debut, the Sunderland Echo commented on his performance, describing him as "Energy, fearlessness and endeavour". Gooch continued to appear in the first team despite being on the substitutes' bench on numerous occasions, before suffering an ankle injury in November that kept him out between two and three months. Though he was fit again by February 2017, he was frozen out of the team by manager David Moyes who preferred Adnan Januzaj and Fabio Borini in midfield, as the season ended with relegation. Gooch scored his first goal for the Black Cats on August 22, 2017 in a League Cup second round match away to Carlisle United, the winning goal in a 2–1 victory at Brunton Park. He said that he had dreamt of the moment since the age of 10. A month later he recorded a first league goal, a penalty that he won himself to equalise in a 2–1 home loss to Cardiff City. Sunderland suffered a second consecutive relegation to the 2018–19 EFL League One. On August 4, in their first game of the season, Gooch headed an added-time winner in a 2–1 home victory over Charlton Athletic – the Black Cats' first opening win for eleven years. In what would have been the last season of his contract, he signed a three-year extension on December 31.