You should have your programmers do it in-house. This way you could tailor it the way you want it. Plus it would be robust enough to include other aspects of HR that you might want to automate

We use an in-house system, so I really couldn't help you here.