John studied at the Royal Conservatoire of Scotland (RCS) under Kathleen Mckellar Ferguson and is a graduate of the Guildhall School of Music and Drama (Guildhall) Opera Course taught by John Evans, where he was supported by Help Musicians UK and the Worshipful Company of Musicians.

In the 2019/20 season, John is a Harewood Artist with English National Opera where roles include Remendado Carmen and Gamekeeper Rusalka, which also transfers to Luxembourg Opera.  For Glyndebourne Touring Opera, he performs Borsa Rigoletto and in summer 2020 John covers Florestan Fidelio for Glyndebourne Festival Opera.

Last season, operatic performances included: Vaudemont Iolanta (Les Azuriales Opera), Second Jew Salome (Opera North); Monostatos Magic Flute (Opera North); Sergeant Johnny Strong and Writer (cover) Jack the Ripper (ENO); The Witch Hansel and Gretel (ENO/Regents Park) and First Armed Man/First Priest (cover) Magic Flute (Glyndebourne Festival Opera).  

Previous operatic performances include: Alfredo La Traviata (Fife Opera); First Armed Man (cover) Magic Flute (RCS); 2nd Soldier L’incoronazione di Poppea (RCS); Bardolfo Falstaff (RCS); Nemorino L’Elisir d’amore (Brent Opera); Don José Carmen (EPOC); Jean The Cunning Peasant (Guildhall); Shepherd 2 (role)/Apollo (cover) Orfeo (Guildhall/ROH); Lemminkainen (cover) Swanhunter (Opera North); Leandro Le Donne Curiose (Guildhall); Sir Philip Owen Wingrave (BYO); Count Vaudemont Iolanta (Guildhall); Vasilli Mavra (Guildhall); Huon Oberon (Guildhall); Das Lied Von der Erde Valencia Philharmonic; Januarie The Tale of Januarie (Guildhall/ROH).

In the 2017 season John was a Jerwood Young artist at Glyndebourne Festival and Touring Opera (GFO/GTO) where he performed the roles of Player 2 Hamlet; Officer Ariadne auf Naxos and Giuseppe (cover) La Traviata and in the 2018 season at Glyndebourne John performed the Major Domo to Faninal (cover) Der Rosenkavalier.