At the age of 16, Peanut expressed his desire to become a professional
League of Legends player to his aunt before discussing it with his parents. Despite excelling in academics, he faced disapproval from his mother when she discovered his frequent visits to
PC bangs. This led to the first confrontation with his parents, as his mother emphasized the importance of academic success. Following a heated argument, Peanut's determination to pursue a career in professional gaming persuaded his father, who supported him with the condition not to blame them if things did not go as planned. Despite initial hesitation, Peanut's parents bought him a new computer, and he began practicing extensively at home.
Najin e-mFire Peanut entered the competitive League of Legends scene when he signed with
Najin e-mFire for the
2015 LCK season. Throughout the season, his split time with the team's starting jungler, Jae-geol "Watch" Cho. In the spring split, Najin concluded with a 5–9 record, narrowly avoiding the need to compete in the
promotion tournament. The team fared better in the summer split, ending with 11 wins and 7 losses. Although Najin advanced to the LCK Summer Split Playoffs, they were eliminated in the first round by
KOO Tigers. In his rookie year, Peanut participated in a total of 17 games, securing seven wins and 10 losses.
ROX Tigers Following the 2015 season, Peanut signed with
ROX Tigers (formerly KOO Tigers). In the 2016 LCK Spring Split, the Tigers secured the top spot in the regular season standings, earning a bye directly into the playoff finals where they faced SKT. However, they lost the match, 1–3, finishing in second place. The subsequent summer split saw them once again claiming the top spot in the regular season standings, leading to a playoff finals match against
KT Rolster. Peanut clinched his first domestic title as the Tigers emerged victorious in the finals with a 3–2 score. By winning the Summer Split Finals, the Tigers secured a spot in the
2016 League of Legends World Championship as the LCK's top seed. The semifinals match was tied after four games, bring the match to a decisive game five. Peanut played as the champion Elise, a champion whom he had a
KDA ratio of 23 heading into the match. Despite securing first blood by eliminating
Bae "Bengi" Sung-woong, Peanut was soon after himself killed Bengi and
Lee "Faker" Sang-hyeok. Although the teams remained evenly matched for the first 20 minutes, SKT gained control around the 40-minute mark, ultimately winning the match 3–2. At the end of the year Peanut won the 2016
KeSPA Cup, as ROX Tigers defeated Kongdoo Monster in the final.
SK Telecom T1 Peanut's contract with the Tigers expired on November 30, 2016. On the same day, he signed with
SK Telecom T1. SKT finished atop the regular season standings, receiving a bye directly into the playoff finals, where they faced
KT Rolster. In game two of the finals, Peanut had six kills, one death, and eight assists, including a triple kill at the 28-minute mark that contributed to the team's victory. In game three, he finished with 11 kills, one death, and nine assists, which included another triple kill at the 17-minute mark. SKT clinched the series with a 3–0 win, securing Peanut back-to-back LCK titles. Peanut was named the MVP of the finals. With the LCK Summer championship title, SKT qualified for the
2017 Mid-Season Invitational (MSI). In a match against
GIGABYTE Marines, he set a record for the most kills within the first 15 minutes of a professional game, finishing with 15 kills, 14 of which were secured in the initial 12 minutes. SKT secured a victory in game one, but in game two, Peanut played as Ivern, a champion with which he had limited familiarity, due to head coach
Kim "kkOma" Jeong-gyun's draft choices. G2 had a strong early game, with
Kim "Trick" Gang-yun securing first blood on Peanut, as SKT went on to lose the game. However, Peanut rebounded in game three, securing first blood as Lee Sin and ultimately winning the match. In game four, with Lee Sin banned, Peanut played as Olaf, a champion he was comfortable with, securing first blood once again. His well-timed intervention in the bottom lane, just before G2's bot lane hit level six, provided an early lead for SKT, which they maintained. Peanut ended the game with nine kills, no deaths, and six assists, securing his first-ever international title with the MSI victory. SKT finished the 2017 LCK Summer Split regular season in fourth place with a 13–5 record. During the season, Peanut shared playing time with Kang "Blank" Sun-gu, plating in 24 games and accumulating 41 kills, 53 deaths, and 107 assists. Entering the LCK Summer playoffs in the first round, SKT advanced to the finals to face
Longzhu Gaming. This marked Peanut's fourth consecutive LCK final appearance, becoming the first player in LCK history to do so. In the finals, Peanut started as the team's jungler over Blank. However, after a challenging game one where Peanut faced difficulties capitalizing on Longzhu rookie Moon "Cuzz" Woo-chan and primarily focused on mid lane kills rather than seizing other opportunities on the map, he was substituted out for Blank. SKT went on to two of the next three games, ultimately losing the match, 1–3, and finishing in second place. SKT qualified for the
2017 World Championship as the LCK's second seed. In the Worlds final against
Samsing Galaxy, Peanut started the match, but after SKT lost games one and two, he was taken out in favor of Blank. SKT went on to lose the third match as well, finishing in second at the World Championship. Following their World Championship loss, SKT announced that they would not be renewing Peanut's contract. His first tournament with the team was the 2017 KeSPA Cup, which began on December 1, 2017. Longzhu advanced to the finals of the event, defeating Peanut's former team SK Telecom T1 in the semifinals along the way. However, they lost to their finals opponent,
KT Rolster. Just before the start of the 2018 LCK Spring Split, Longzhu Gaming rebranded to Kingzone DragonX. He played 32 games in the regular season, finishing with a KDA ratio of 8.9. The team finished atop the regular season standings with a 16–2 record, advancing them directly to the 2018 LCK Spring Split finals. In his fifth consecutive LCK Finals appearance, he picked up his third LCK title after Kingzone defeated
Afreeca Freecs, 3–1, in the finals. In the
2018 Mid-Season Invitational, Kingzone advanced past the group stage and defeated Flash Wolves in the playoff finals to face
Royal Never Give Up in the finals. However, Kingzone lost the match, 1–3, finishing in second place. Kingzone finished the 2018 LCK Summer split in third place with a 13–5 record. Despite a strong regular season, they lost in the playoffs to Afreeca Freecs. The team moved on to the 2018 LCK regional qualifier for the chance to qualify for the
2018 World Championship but lost in the finals to
Gen.G, ending their season.
Gen.G Following the 2017 World Championship, Peanut became a free agent and received lucrative offers from various teams outside the LCK. Despite multiple million-dollar proposals, he opted to remain in the LCK.
Gen.G extended an offer that would make him the highest-paid jungler in the league, and on November 23, 2017, Peanut officially signed with Gen.G. Peanut struggled throughout the 2019 LCK season, and Gen.G barely avoided
relegation in the Spring Split. While his performance improved slightly in the Summer Split, Gen.G finished in sixth place during the regular season, and Peanut failed to reach the World Championship for the second year in a row. On November 18, 2019, Gen.G parted ways with Peanut.
LGD Gaming On November 22, 2019, Peanut left the LCK to sign with
League of Legends Pro League (LPL) team
LGD Gaming. The team struggled throughout the 2020 LPL Spring Split, finishing in 15th place with a 5–16 record. However, in the Summer Split, the LDG qualified for the playoffs and finished in fourth place. Throughout the 2020 LPL season, Peanut ranked among the top five LPL junglers for first blood percentage and gold difference. After defeating
Invictus Gaming in the final of the LPL regional qualifier, LGD Gaming's earned them a spot in the
2020 World Championship as the LPL's final seed. Despite Peanut's generally strong showing in the LPL regular season, he faced challenges adapting to the meta at the 2020 World Championship, and LGD failed to make it to past the group stage. Following their Worlds exit, LGD parted ways with Peanut.
Nongshim RedForce On November 30, 2020, Peanut made a return to the LCK by signing with
Team Dynamics, which later rebranded to Nongshim RedForce in December 2020. This marked his seventh team in as many years. In the 2021 LCK Spring Split, Nongshim had middling results, finishing sixth place in the regular season, but secured a spot in the playoffs. However, they lost in the playoffs to
Hanwha Life Esports, 2–3, with Peanut having little impact in the match. Peanut's performance notably improved in the 2021 LCK Summer Split. On June 24, 2021, he recorded his 1,000th kill in the LCK in a victory over T1. Additionally, he reached 2,500 assists in the LCK on August 1, 2021, during a win against Hanwha Life Esports, reaching the 11th most in LCK history. This win also secured Nongshim a spot in the summer playoffs. Peanut concluded the regular season with the second-best KDA average at 4.8 and the second-lowest average deaths per game at 1.8 among all junglers in the LCK. He was named the MVP of the 2021 LCK Summer Split and earned a spot on the LCK's First All-Pro team. Despite their regular-season success, Nongshim lost to
DWG KIA in the second round of the playoffs. Nongshim then competed in the LCK regional qualifier. They faced Hanwha Life Esports on the second day of the qualifier, with the winner advancing to the
2021 World Championship, but they lost the match, 0–3, ending their season.
Return to Gen.G On November 23, 2021, Peanut returned to Gen.G after Nongshim traded him in exchange for
Gwak "Bdd" Bo-seong. The team finished the 2022 LCK Spring Split in second place, advancing to the semifinals of the playoffs. Gen.G advanced to the LCK Spring Split Finals, marking Peanut's first finals appearance in three years. However, they were defeated, 1–3, finishing in second place. During the 2022 LCK Summer Split, Gen.G performed well with a 17–1 record. Gen.G became the third team in LCK history to win 17 or more matches in a single split, with an 87.5% game record — the highest percentage in LCK history. Peanut finished the summer regular season with the best KDA and least average deaths among all junglers in the LCK and was named to the LCK First All-Pro Team for the second time in his career. Gen.G secured a spot in the 2022 LCK Summer Finals, where they faced T1 on August 28. The team went on to win the series 3–0, giving Peanut his fourth LCK title and securing Gen.G the top LCK seed in the
2022 World Championship. Peanut was named the finals MVP. In the World Championship, Gen.G progressed beyond the group stage and secured a 3–2 victory over DWG KIA in the knockout quarterfinals. They faced DRX in the semifinals, a team they had not lost to all year. However, DRX won the match, 3–1, ending Gen.G's Worlds run. Heading into the 2023, Gen.G extended Peanut's contract. In the 2023 LCK Spring Split, Gen.G secured a second-place finish in the standings, trailing behind T1. During the playoffs, they defeated Hanwha with a 3–1 victory, earning a spot in the LCK Finals against T1. The best-of-five match took place on April 9, 2023, and Gen.G won by a 3–1 score, securing Peanut his fifth LCK title. As the Spring Split champions, Gen.G qualified for the
2023 Mid-Season Invitational (MSI), marking Peanut's third appearance at MSI. Gen.G started the in event's bracket stage, a
double-elimination tournament. In their first match, they defeated
G2 Esports. Following, they lost to T1, sending Gen.G to the lower bracket. After taking down
Cloud9 in their next match, they lost to
Bilibili Gaming, ending their MSI run. In the 2023 Summer Split, Peanut clinched his third consecutive LCK title, and sixth overall, as Gen.G defeated T1 in the finals. This placed him second among active players with the most LCK titles, behind Faker. In the
Swiss stage of the
2023 World Championship, Gen.G posted a 3–0 record, advancing them to the knockout stage, where they faced Bilibili in the quarterfinals. However, the team was defeated, 0–3, ending their Worlds run. On November 20, 2023, Peanut's contract with Gen.G ended, and he entered free agency.
Hanwha Life Esports Peanut signed with
Hanwha Life Esports ahead of the 2024 LCK season. The team performed well during the 2024 LCK Spring Split, finishing in 3rd place with a 15–3 record, losing only to
Gen.G and
T1 with head-to-head scores of 0–2 and 1–1 respectively. Peanut himself earned 800 Player Of the Game (POG) points, earning him 6th in the overall POG standings. He was also the 3rd All-Pro team's jungler pick. During the 2024 LCK Spring Playoffs, Hanwha Life Esports beat
Kwangdong Freecs 3–0 in the first round and T1 3–0 in the second round, too. They then went on the face Gen.G in the round 3 upper finals, whom they lost to 1–3. This knocked them down into the lower finals, where they faced T1 once more. However, Hanwha Life Esports couldn't repeat their previous win, ultimately losing to T1 1–3 as well, meaning they placed 3rd overall. As only the 1st and 2nd place got a chance to represent LCK at the
2024 Mid-Season Invitational, this marked the end of Hanwha Life Esports' spring split. The 2024 LCK Summer Split saw
Hanwha Life Esports placing 2nd with a 14–4 score, below only the dominant
Gen.G. Overall, the matchups between the top 5 teams – save for Gen.G – were much closer, with Hanwha Life Esports seeing 1–1 head-to-head scores with both
Dplus KIA, the third place team, as well as
KT Rolster, the 5th place team. Namely, Hanwha Life Esports managed to beat the slumping
T1 in 4th place both times they met. Peanut's performances earned him 800 POG points, placing him 4th in the overall standings. He was also picked as the 2nd All-Pro team's jungler, alongside all of his teammates. Finishing 2nd during the summer regular season meant Hanwha Life Esports got a bye into the 2nd round of the 2024 LCK Summer Playoffs, where they faced T1. Hanwha Life Esports managed to put up dominant performances in games 1 and 3, ultimately winning the series 3–0. Advancing into the upper finals, the team faced off against
Gen.G in a series they eventually lost 1–3, knocking them into the lower finals once again. Just like during spring, Hanwha Life Esports met T1 for a rematch. In a role-reversal from spring though, they managed to beat T1 3–1, earning themselves an appearance in the grand finals, where they would rematch Gen.G. In a long, 5-game series between the two teams, Hanwha Life Esports ultimately emerged victorious, breaking Gen.G's long streak of 4 title wins, and earning themselves both the title of Summer Champions, as well as LCK's first seed spot into the
2024 League of Legends World Championship. Namely, Peanut was named MVP four times during the playoffs – the most out of everyone. Heading into the
2025 season with a new top laner, the team qualified for the
2025 First Stand Tournament after winning the LCK Cup. There, Peanut won his first international title in over 8 years, after defeating
Karmine Corp 3–1 in the First Stand 2025 final. Despite not making
that year's Mid-Season Invitational after losing to
T1 in the qualifying match, the team maintained strong form to make it to the LCK Season Finals. After Peanut announced his retirement from professional play before the conclusion of the 2025 season due to
mandatory military service in South Korea, Hanwha Life Esports were unable to defend their title in the season finals after losing to
Gen.G 3–1. Despite the loss, Hanwha Life Esports still qualified for
Worlds 2025 as the LCK's second seed. The team ultimately lost to Gen.G in the quarterfinals. Subsequently, Peanut retired from professional
League of Legends to complete the mandatory military service. == National team career ==