How to message or invite a group without joining it?
As answered in Get notification message in groups, you use Message Subscribe based on your criteria. 

You expose the Message Notify for users, but only difference is here you use a custom module to conditionally display that notification form. If the user has already issued a notification, don't display the form. You should be able to search back through the message log to check if the user has previously notified about this message. Be careful you are not clearing out your message log too often in this case.

If you need to clear out your message log, then you may need to use Flag module to flag that the user has already notified about this job post. i.e. - mark the message / job post as flagged whenever a notification has been sent. Only display the Message Notify form for non flagged entities.