Many JAMS users started out with a homegrown batch scheduling solution. Over the past 25 years we’ve seen hundreds of examples, from reverse engineered versions of Windows Task Scheduler to hand-coded command line applications. Sometimes these tools get the job done since their creators tend to be experienced IT pros. In a few instances, where an organization has extremely unique use cases, it’s difficult to beat a homegrown solution. There are, however, a number of conditions that we’ve seen push homegrown schedulers over their limit.
Condition #1 – Losing the Lead Developer
The most common reason a homegrown scheduler fails is the loss of its developer. It’s the equivalent of a plant losing its water source. While it may survive for a while, it eventually becomes stagnant and dies over time. Most homegrown utilities are not properly documented so the remaining staff often struggles with day-to-day operation and maintenance. Losing a member of an IT team is always a challenge, but, when that person takes with him or her the institutional knowledge of how your batch processes run, it can be devastating. Custom scheduling applications end up consuming more hours of staff time than they save. In instances where an organization leans heavily on a scheduler for core transactions, highly skilled (and highly paid) IT workers may be stuck submitting and monitoring jobs and processes rather than working on more valuable projects and initiatives.
Condition #2 – Security Holes
Another shortcoming in homegrown schedulers is the lack of security. In-house development projects tend to focus on accomplishing one or two key needs. Since the development team serves only one customer (the employer) it’s rare that they incorporate broad measures to secure the application. Scheduling applications actually deserve one of the highest security considerations since they often use administrative credentials to execute critical processes.
Condition #3 – Lack of a Support System
IT pros can be a resourceful bunch, but sometimes, the most efficient way to resolve an issue with batch processing is to call or email support. With homegrown systems, support tends to be informal, at best. Even in cases where an organization does support its homegrown scheduler, handling each case tends to involve trade-offs with every other project. Developers are lucky to spend an hour per week observing the intricacies of centralized batch processing. Once new projects take priority, it becomes easier to live with workarounds than to re-engineer or code enhancements to the homegrown scheduler.
The “Build vs. Buy” decision is pervasive in IT departments, especially as budgets remain tight and developer tools get easier to use. To make the right decision, organizations who leverage a homegrown scheduler should be mindful of the conditions above and their potential impact on the business.