HR Information System

The bane of many IT folk's existence is interacting with HR and hiring managers for onboarding, offboarding, and employee changes. I, like many, started with some forms. I setup some InfoPath (rest in peace, sweet prince) forms on an internal SharePoint server that would email our IT department distribution list and create a ticket for us to work on. The department policy was to only add users to distribution lists that were requested and the all.company list which resulted in constant friction between hiring managers and IT because of differing expectations of what a fully setup new hire entailed. I thought we could do better and being an IT department of 3 people for 250 users I thought that we should focus on automating this process as much as possible. My solution at the time was having InfoPath output to a SharePoint list and using task scheduler to download results daily into a csv, creating user accounts, then deleting the previous entries on the list. There are a lot of problems with what I came up with but it worked and saved us a significant amount of time. Seven years have now passed and I have made improvements to my process by way of many... many mistakes. I have created this guide to let you take advantage of my mistakes and trial and error. This is by no means a replacement for a full paid HRIS suite, rather, I think this is more meant to augment what you do have (if you have one) as I find that most services I have looked at are lacking in IT needs. If something is better handled by your HRIS ignore that part of the guide and just pick and pull what you need.

Prerequisites

  • A good relationship with your HR department. No, really, I would not do this if you are not able to share the burden of training the hiring managers and enforcing the use of the system with your HR department. Buy them donuts/bagels/whatever tire shaped food item they want, and have an hour long meeting to discuss what both of your departments want to get out of this and what you need from them to make this successful.
  • A Microsoft 365 Subscription with SharePoint
  • An on-prem Active Directory environment
  • A Windows server running Azure AD Connect (friendly reminder that this should not be your domain controller)
  • Some scripting knowledge