So after playing around with it and asking Solspace the solution seems to be as follows: you create a field in Freeform for the ID of the entry (in this case the job posting) that the person is responding to. You fill in this field by making it hidden to the user and automatically assigning the entry_id of the channel entry to the hidden field. Then you use the
{exp:freeform:entries form_name="my_form" author_id="{embed:member_id}" search:entry_id="{entry_id}"}
This will give you all items in the form that have the author_id (the person submitting the form) for a specific form. If it comes back as no results, you can display the form to the user. If it comes back with a result, you simply tell the user they have already responded to this posting.
As for the embed for author_id, there seems to be an issue using:
{logged_in_member_id}
inside of:
{exp:freeform:entries}
tag, so you create an embed which you call with something like:
{exp:channel:entries}
<h3>{title}</h3>
<p>{body}</p>
{embed="path_to/template_with_freeform_entries" member_id="{logged_in_member_id}"}
{/exp:channel:entries}
If anyone sees any issues with this, please let me know...or if there are better ways to do this (without writing an extension which I've never done before).
Hope this helps someone.
Derek, any thoughts or comments on this approach? And again, thank you for your responses.