Tras progresar en las categorías inferiores del Aberdeen F. C., debutó como suplente de última hora contra el Dundee United F. C. en marzo de 2021, a las órdenes del director técnico Paul Sheerin, y llegó a disputar otros cinco partidos en su primera temporada con el equipo mayor.
[3] Debutó en Europa con el club contra el BK Häcken sueco en julio de 2021 en un partido de clasificación de la Liga Europa Conferencia de la UEFA, siendo titular en el lateral derecho en la victoria por 5-1 y dando una asistencia en el primer gol del partido.
Ganó el premio Jugador joven del año de la SFWA para la 2021-22, su única temporada completa con el Aberdeen.
[5] En su primera campaña en Liverpool solo pudo jugar dos partidos antes de sufrir una lesión en febrero que le hizo perderse toda la temporada.
De cara a la siguiente fue cedido al Preston North End F. C.[6] En este equipo tuvo pocas oportunidades por culpa de lesiones, por lo que en enero fue cancelado el préstamo y se incorporó al Bolton Wanderers F. C.[7] En junio acumuló otra cesión, esta vez en el Wigan Athletic F. C.[8] Allí disputó doce encuentros y en enero regresó a Liverpool[9] para, días después, ser prestado al Kilmarnock F. C.[10] El 16 de noviembre de 2022 debutó con la selección de Escocia en un amistoso que perdieron contra Turquía.