Karjalainen doorliep de jeugdreeksen van Oulun Luistinseura en promoveerde in 2014 naar het eerste elftal. Na tussenstops bij SJK Akatemia en AC Oulu, uitkomend in lagere reeksen, belandde Karjalainen in 2017 bij PS Kemi, uitkomend op het hoogste Finse niveau. Op 8 april 2017 maakte hij zijn debuut tegen HIFK Helsinki. Hij mocht de wedstrijd starten en werd twintig minuten voor tijd vervangen door Edwin Salazar.[2] Ruim een maand later scoorde hij zijn eerste doelpunt in de met 1-3 gewonnen wedstrijd tegen FC Inter Turku. Het daaropvolgende seizoen maakte Karjalainen de overstap naar reeksgenoot KuPS en maakte daar zijn Europees debuut. Op 12 juli 2018 startte hij aan de kwalificatiewedstrijd van de Europa League tegen FC Kopenhagen. De thuiswedstrijd werd met 0-1 verloren.[3] In de terugwedstrijd, die op 1-1 eindigde, scoorde Karjalainen zijn eerste Europese doelpunt.
Karjalainen doorliep enkele nationale jeugdploegen. Op 5 juni 2018 maakte hij zijn debuut bij de nationale ploeg. Door bondscoach Markku Kanerva mocht hij een klein half uur voor het einde van de wedstrijd tegen RoemeniëBerat Sadik komen vervangen. De wedstrijd werd uiteindelijk met 2-0 verloren.[4] Zijn eerste doelpunt maakte hij op 11 januari 2019 in de met 1-2 verloren wedstrijd tegen Estland.[5]