• sp_help_job might be a better option for you.

    I looked into this once before when writing a synchronous version of sp_start_job and I think the trouble you're going to face, whether you go with T-SQL or PowerShell, is going to be figuring out when an executing job, and the step that is currently executing within that job, actually started executing. You can look at dbo.sysjobactivity but it's messy and I could not see where it was exposed in SMO as an object property.

    There are no special teachers of virtue, because virtue is taught by the whole community.
    --Plato