Comment by wvenable
One advantage of building in house is that you're only building for your own company. This is significantly less work than building commercial software for multiple clients (which I have also done). I can't overstate how much less work this is and how much of a better experience it can be for users.
As an example, for calculating annual vacation entitlement, we have some pretty complicated rules. But every company in every country has their own set of rules so most HR software doesn't bother calculating it -- you just figure it out manually and input it every year for every employee. But because we just have one "client" our rules are just code that we can change as needed and can arbitrarily use whatever information we have. This saves HR a ton of manual work all the time. But this only works because it only needs to be one set of hard-coded rules.
> has their own set of rules so most HR software doesn't bother calculating it -- you just figure it out manually and input it every year for every employee
Beg to disagree. This is the complexity that large ERP firms handle and why Oracle, SalesForce, etc are expensive to implement. They figure out the commonality (if any) and build for it. Then they add on features specific to countries they target and then they add the ability to configure for your own situation (to a certain level).
PeopleSoft did this for Payroll and workforce administration which is part of how they cornered the market for HCM.