Johansson startete international erstmals bei den Juniorenweltmeisterschaften 2015 in Warschau. Seine besten Platzierungen dort waren der 19. Platz über 5000 m und der sechste Rang in der Teamverfolgung. Im folgenden Jahr holte er bei den Olympischen Jugend-Winterspielen jeweils die Bronzemedaille im Massenstart und im Mixed-Teamsprint. Zu Beginn der Saison 2016/17 gab er in Heerenveen sein Debüt im Eisschnelllauf-Weltcup und belegte dabei den 16. Platz im Massenstart. Bei den folgenden Juniorenweltmeisterschaften in Helsinki holte er die Bronzemedaille in der Teamverfolgung, die Silbermedaille im Mehrkampf und jeweils die Goldmedaille über 1000 m und 1500 m. In der Saison 2017/18 kam er im Weltcup fünfmal über 1500 m unter die ersten Zehn. Dabei erreichte er in Minsk mit dem dritten Platz seine erste Podestplatzierung im Weltcup und zum Saisonende den fünften Platz im Gesamtweltcup über 1500 m. Beim Saisonhöhepunkt, den Olympischen Winterspielen 2018 in Pyeongchang, nahm er am 1500-m-Lauf teil, den er aber vorzeitig beendete. Bei den nachfolgenden Juniorenweltmeisterschaften in Salt Lake City gewann er jeweils die Silbermedaille über 1000 m und 5000 m und jeweils die Goldmedaille über 1500 m und im Mehrkampf. In der folgenden Saison erreichte er mit sechs Top-Zehn-Platzierungen den sechsten Platz im Gesamtweltcup über 1500 m und lief bei den Einzelstreckenweltmeisterschaften 2019 in Inzell auf den 23. Platz über 1000 m. Bei den Einzelstreckenweltmeisterschaften 2020 in Salt Lake City belegte er den 18. Platz über 1500 m. Nach Platz eins bei den norwegischen Meisterschaften über 1500 m Ende Oktober 2020 und Rang zwei in der Teamverfolgung beim ersten Weltcup der Saison 2020/21, holte er in der Teamverfolgung beim folgenden Weltcup seinen ersten Weltcupsieg. Beim Saisonhöhepunkt, den Einzelstreckenweltmeisterschaften 2021 in Heerenveen, wurde er Achter über 1500 m und Vierter in der Teamverfolgung.