It's hard to find a company bigger than 30 people that doesn't have its HR Department - even if it consists of just 1 person. And the name itself is of secondary meaning: some call it Human Resources, some prefer People Operations, Human Capital, etc. Regardless of name I think that the bigger the company, the less existence of such a Dept makes sense.
The work usually associated to such units is of a wide variety: Performance Mgmt, Talent Mgmt, Recruitment, Compensation & Benefits, Employee Relations, Growth and Organization Development, Employer Branding, .... But nearly all of those areas are so highly contextual that the more diverse the organization in general (in terms of specialties, roles, functions of all employees) the more different the needs of its parts.
Putting purely administrative duties apart (e.g. technical aspects of payroll or contract processing), I do believe it makes most sense to have particular units of organisation deal with their own specifics internally. What does it mean?
E.g. if Software Engineering is a separate unit (whether it makes sense I'll cover next week ...), they should have their own "HR" roles that fit their needs & have 100% understanding of their own specifics. This way setting up policies regarding performance management, career path, recruitment, etc. should be completely internal - each unit (thanks to internal HR-like roles) decides about everything related to its work, ofc within agreed budgets & in sync with company-wide values and principles.
This "locality" IMHO makes perfect sense, because e.g. salesmen are very different from engineers - their effectiveness ("seniority") grows differently (& is constrained differently), you recruit them completely differently, reward them according to different factors, they frequently follow totally different motivations, etc. Pretending that everyone can be treated with the same measures won't distort the reality and make it so.
Centralizing HR to save costs & focus efforts looks to me like no optimization but rather a complete misunderstanding. Executives still tend to think that it's a waste to utilize the time of highly-paid specialists (like software engineers) e.g. to recruit, so they utilize cheaper workforce - and then they wonder why ...
- recruitment takes so much time
- culture deteriorates
- teams take 6 months to gel
- attrition rates skyrocket
- employee loyalty is near to zero ...
We're all HR (sort of)
To be precise, my point here is NOT to hire additional few "HR-ish" people per every specialized unit in your organization (aka break the silo into several, distributed silos). It'd be barely any optimization & it would not fix the fundamental problem - which is: we tend to narrow down the specialized roles to focus on the core of their specialty only. Salesmen should be selling, engineers should be engineering, designers should be designing, etc. All the "soft aspects" (growth, performance mgmt, rewarding, talent acquisition, etc.) of their roles are preferably transferred to HR, which is CRAZY!
These should be key everyday topics for every senior role in the organization as they are crucial in leveraging the impact of a leader on others: who (better than the leaders) know how to motivate, reward, assess or recruit new people of their specialty? I'm not saying that the support of highly skilled HR specialists (behavioral psychologists, sociologists, culture experts, human researchers) is not needed - these should work arm to arm (the Agile way) with the bespoken leaders to support them on daily basis in their never-ending quest of cultivating top-notch org culture & work environment.
What if the leaders don't want this and prefer someone else to carry on this duty? That says much about their maturity & understanding of what leadership is, doesn't it?