ACQUIRED: Selected as No. 4 overall pick in the 2017 MLS SuperDraft.
2019: Started and logged 63 minutes in a 2-1 playoff loss at Real Salt Lake on October 19, finishing the season as the only player on the roster to appear in all 39 matches across all competitions for the Timbers in 2019 … Started his 29th match of the regular season in a 3-1 home win against the San Jose Earthquakes on Oct. 6 … Made his 37th appearance of the season across competitions in a 2-2 road draw against Sporting Kansas City on Sept. 29 … Notched the first brace of his MLS career in a 2-2 home draw against New England Revolution on Sept. 25 … Played 90 minutes in a 0-0 home draw against Minnesota United FC on Sept. 22 … Made his 30th league appearance of 2019 in a 2-0 loss to the New York Red Bull on Sept. 18 ... Started in a 1-0 home loss against D.C. United on Sept. 15 … Scored his ninth goal of the 2019 MLS campaign in a 2-1 home win against Sporting Kansas City on Sept. 7 ... Logged his 19th start in league play in a 1-0 win over Real Salt Lake on Aug. 31 ... Made his 30th appearance across all competitions in a 2-1 home loss against Seattle Sounders FC on Aug. 23 … Played in his 43rd consecutive match in all competitions in a 2-0 home loss against Atlanta United FC on Aug. 18 … Made a substitution appearance in a 3-2 home win against Chicago Fire on Aug. 14 … Notched his eighth goal of the season in a 3-1 home win against Vancouver Whitecaps FC on Aug. 10 … Recorded one assist in a 2-1 road loss against Minnesota United FC in the semifinal of the Lamar Hunt U.S. Open Cup on Aug. 7 ... Made his sixth appearance off the bench in league play in a 1-0 road loss to Minnesota United FC on Aug. 4 ... tarted and scored his seventh goal in league play in a 4-0 win against the LA Galaxy on July 27 ... Started and played 75 minutes in a 2-1 away win against Seattle Sounders FC on July 21 ... Scored his sixth goal of the season in a 1-1 home draw against Orlando City SC on July 18 ... Recorded 90 minutes of play in a 2-2 home draw against the Colorado Rapids on July 13 ... Scored the game-winning goal in a 1-0 away victory in the quarterfinal of the Lamar Hunt U.S. Open Cup against Los Angeles FC on July 10 ... Made a substitute appearance in a 1-0 away win against New York City FC on July 7 ... Started and played 68 minutes in a 1-0 home win against FC Dallas on June 30 … Made a substitute appearance in a 2-1 road loss at the Montreal Impact on June 26 ... Logged his fifth goal of the season in a 4-0 home win against the Houston Dynamo on June 22 ... Played 90 minutes in a 4-0 home win over the LA Galaxy in the Round of 16 of the Lamar Hunt U.S. Open Cup on June 19 ... Recorded an assist in a 2-1 win over Seattle Sounders FC in the fourth round of the Lamar Hunt U.S. Open Cup on June 12 ... Delivered his first assist of the season in a 3-2 home loss against LAFC on June 1 … Played 60 minutes in a 3-1 away win against the Philadelphia Union on May 25 … Played 77 minutes in a 1-1 draw against the Houston Dynamo on May 15 … Recorded 90 minutes in a 1-0 away loss at Vancouver Whitecaps FC on May 10 … Played 83 minutes in a 2-1 away win against Real Salt Lake on May 4 … Tallied the game-winning goal, his fourth of the season, in a 2-1 away win at Toronto FC on April 27 … Scored his then team-leading third goal of the season in a 3-1 win at Columbus Crew SC on April 20 ... Started and played 90 minutes in a 2-1 loss at FC Dallas on April 13 … Played 66 minutes in a 3-0 loss against the San Jose Earthquakes on April 6 ... Recorded his second goal of the season in a 2-1 loss at LA Galaxy on March 31 ... Made a substitute appearance in a 3-0 loss at FC Cincinnati on March 17 ... Scored the club’s lone goal, his first of the season, in a 4-1 loss to Los Angeles FC on March 10 ... Made his first appearance of the season, playing 87 minutes in a 3-3 draw against the Colorado Rapids on March 2.
2018: Made his MLS Cup debut on Dec. 8, playing 59 minutes in a 2-0 loss against Atlanta United FC … Made his fifth appearance in the 2018 MLS playoffs, playing 90 minutes in a 3-2 win against Sporting Kansas City in the second leg of the Western Conference Championship on Nov. 29 ... Started and logged 81 minutes in a 0-0 draw against Sporting Kansas City on Nov. 25 ... Started, playing 89 minutes in a 4-2 playoff win in penalty kicks against Seattle Sounders FC on Nov. 8 ... Tallied his first career playoff goal in a 2-1 win against Seattle Sounders FC on Nov. 4 ... Recorded one assist in a 2-1 win on the road at FC Dallas on Oct. 31 ... Made a substitute appearance in a 2-1 loss at Vancouver Whitecaps FC on Oct. 28 ... Made his seven straight appearance (Sept. 8-Oct. 21), recording an assist in 85 minutes in a 3-0 win against Real Salt Lake ... Tallied a goal and an assist in 77 minutes against Real Salt Lake on Oct. 6 ... Appeared off the bench in a 3-2 loss at Minnesota United FC on Sept. 22 ... Came off the bench in a 3-2 win over Columbus Crew SC on Sept. 19 ... Earned his second straight start in the Timbers’ 4-1 loss at the Houston Dynamo on Sept. 15 ... Made his first start of the MLS campaign, scoring his first goal of 2018 in a 2-0 win over the Colorado Rapids on Sept. 8 ... Made his 18th appearance for T2 in a 3-2 loss to Orange County SC on Aug. 22 ... Scored a goal for T2 in a 2-0 win over Swope Park Rangers on Aug. 11 ... Recorded a goal and an assist for T2 in a 4-3 win over LA Galaxy II on July 28 ... Played 90 minutes for T2 in a 4-2 loss against Fresno FC on July 8 ... Scored the game-winning goal in a 2-0 win over San Jose in the U.S. Open Cup on June 6 ... Scored his second goal of the season for T2 in a 3-2 win over Rio Grande Valley FC Toros on April 18 ... Scored his first goal of the season for T2 on March 31 ... Recorded 90 minutes for a second straight game for T2 in a 1-0 win against Colorado on March 24 ... Played 90 minutes for T2 in the team’s season-opener against Seattle Sounders FC 2 on March 16.
2017: Made 14 appearances (two starts), tallying one goal and three assists in his rookie season ... Recorded his third MLS assist in the team’s 4-0 win against D.C. United on Oct. 15 ... Logged a seventh straight MLS appearance in a 3-0 win against Orlando City on Sept. 24 ... Made his second start of the season in a 2-0 win against New York on Aug. 18 ... Notched his second MLS assist in a 4-1 loss against Toronto on Aug. 12 ... Recorded his first career MLS goal and assist in his first start with the Timbers in a 2-1 win against Vancouver on July 23 ... Made his second first-team appearance in the team’s 2-1 loss against Colorado on June 17 ... Played 71 minutes and took two shots in the team’s fourth-round U.S. Open Cup match against Seattle on June 13 ... Named to the U-20 U.S. Men’s National Team roster for the 2017 FIFA U-20 World Cup ... Made his MLS debut, appearing as a substitute in the team’s 3-0 loss against San Jose on May 6 ... Started and played 90 minutes for T2 against Whitecaps FC 2 on April 16 ... Made his season debut with T2, starting and playing 90 minutes against Seattle Sounders 2 on April 2.
INTERNATIONAL: Played 45 minutes off the bench for the U.S. U-23 Men’s National Team against Egypt on March 22, before starting and playing 90 minutes in a scoreless draw against the Netherlands on March 24 ... Made his debut for the U.S. Men’s National Team, starting and playing 66 minutes in 3-0 win against Panama on Jan. 27, 2019.
COLLEGE: Played two seasons with Duke University (2014-2015) before signing his MLS contract ... Tallied nine goals and seven assists in 38 games played (30 starts) in two seasons with Duke.