To run a SQL-Job on the same Server use …
EXECUTE msdb.dbo.sp_start_job 'JobName'
To run a SQL-Job on another Server use …
EXECUTE [ServerName].msdb.dbo.sp_start_job 'JobName'
(assuming LinkedServers etc are already set-up)
** Update ** I had an issue where the remote job-name could not be found. The cause (I saw in sys.servers) was that I had used the wrong version of SSMS to create the link. The fix was to amend a working scripted-out link.