If we do a redirect 301, one my expired job to another URL in my site, Google will record this redirection. But what if this original job URL appears again say after 1 year. Will Google remember this redirection even after a year or so?
no, google will not remember redirection. Every time a googlebot does it's run (periodically on known content, or via "add url" suggestion) and sees some URL, it will try to fetch it.
as a result it can get:
- "200" (with a content) and then index that content
- "404" or "410" (not found) in which case it will remove (after some time and more retries to make sure it's not a mistake) page from cache
- "301" (redirect), in which case it will simply fetch new page pointed by redirect URL and repeat whole process.
So, no, it's not a problem. If later you want to reuse/reactivate that page, you simply remove 301 redirect and create content - googlebot will pick it up as soon as it finds the page - via link on some other page, or if page is (unlikely) not linked at all, via manual add url submission on google
Check google own answer (and/or verify yourself on unimportant test page) for reference on feasibility of reversing 301 redirects...