We implement Fortra's JAMS for our clients, utilizing their existing scripts, batch jobs, and stored procedures. We define all batch jobs within JAMS, providing our clients with a single console to monitor and track the status of their running jobs.
Fortra's JAMS (BYOL)
FortraExternal reviews
External reviews are not included in the AWS star rating for the product.
Eliminates the need for multiple monitoring tools, uses a central management console, and is easy to integrate
What is our primary use case?
How has it helped my organization?
Integrating JAMS into our existing IT infrastructure is a straightforward process. JAMS provides templates for common execution methods like command jobs, SQL jobs, and SSH jobs. We need to define the location of the jobs on the agent server and update their schedules based on our existing workflows.
Our clients have many departments, each with specialists for different tasks. Some manage SQL queries, others handle batch jobs, and others deal with ongoing jobs. This requires them to access various servers simply to check if jobs are running successfully. JAMS provides a single point of access, allowing them to monitor the status of all jobs from one location. This fosters shared knowledge among different departments. Previously, individuals might not know how to check the status of specific jobs, like SQL queries, leaving them in the dark about their success. JAMS empowers all IT personnel to view the status of any job, enabling them to track progress, identify errors, rerun jobs, and resolve critical issues.
We receive immediate notification of errors and can view them on the monitor. However, while the JAMS log reflects errors within the job itself, it often lacks the information needed to resolve them directly. As a result, we still rely on programmers or developers to interpret the logs and assist with troubleshooting. Nevertheless, the notification system provided by JAMS is a valuable tool.
JAMS helps us schedule jobs efficiently by notifying us of long-running jobs and allowing us to set jobs to run in sequence.
The JAMS central management console provides a convenient single point of access for monitoring all running jobs. This allows for clear visibility into job statuses, enabling clients to promptly address both successful jobs and those encountering errors.
JAMS helps eliminate data slack across our applications. We can react to errors so the data doesn't get stuck on the server.
JAMS helps cut troubleshooting time for stalled jobs by 50 percent. Logs stored on JAMS are based on the project's allocated budget. For troubleshooting, we can access the JAMS server. However, previously, resolving issues required accessing the server hosting the specific job and finding someone familiar with it. JAMS's primary strength lies in notifying users and pinpointing the error location within the job, streamlining the troubleshooting process.
JAMS helped eliminate the need for multiple monitoring tools. Since our clients no longer use task schedulers, there's less confusion; some people found the Windows scheduler difficult to understand. JAMS provides a user-friendly way to view job schedules. We provide an initial transfer to familiarize clients with the monitor's components. Now, with JAMS as a common tool, teams can easily understand each other's jobs, regardless of whether they're front-end or Windows scheduler-based. This is a significant improvement.
By using JAMS, IT personnel can focus on other tasks without needing to actively monitor their servers. When an error occurs, JAMS automatically notifies them via email or through the JAMS website, allowing them to address the issue promptly. This not only reduces the time IT personnel spend on monitoring, but also provides them with peace of mind knowing they'll be notified of any problems.
JAMS handles job dependencies and error recovery in our environment well.
What is most valuable?
While I appreciate the other features, the agent stands out for its ease of installation and configuration for JAMS monitoring. We can define thresholds to detect jobs running longer than usual and receive notifications when that occurs. Job monitoring is also a valuable feature for our clients.
What needs improvement?
While JAMS's cross-platform capabilities are good, my only concern is the need to download an ODBC driver to connect to specific databases. It would be highly beneficial if JAMS natively supported these connections, eliminating the need for separate driver downloads for each database.
With no programming experience, I find JAMS code-driven automation challenging due to the required PowerShell scripting. While JAMS offers helpful guides, the technical barrier remains significant.
For how long have I used the solution?
I have been using Fortra's JAMS for three years.
What do I think about the stability of the solution?
JAMS has been stable with no bugs or major disruptions. I would rate the stability of JAMS nine out of ten.
What do I think about the scalability of the solution?
Scaling JAMS is easy and user-friendly to do. Minimal configuration is required.
How are customer service and support?
The technical support is good and quick to respond.
How would you rate customer service and support?
Positive
How was the initial setup?
The initial deployment is straightforward, requiring only a few clicks and some data entry. It took two weeks and involved two IT personnel.
What was our ROI?
Our clients have experienced a return on investment by using JAMS, thanks to the improvements it has brought to their processes.
What's my experience with pricing, setup cost, and licensing?
JAMS is priced competitively compared to similar solutions and offers flexible licensing options to cater to user needs.
What other advice do I have?
I would rate Fortra's JAMS eight out of ten.
We have three JAMS users in our organization and over 50 in our client's organizations.
I particularly recommend JAMS to our clients in the financial industry. It offers valuable features for monitoring job execution, receiving error notifications, and integrating seamlessly with other applications.
Which deployment model are you using for this solution?
We can centralize the management of all our platforms, create a series of chained jobs, and automate tasks
What is our primary use case?
We use Fortra's JAMS for scheduled tasks. We have over 100 virtual servers, and JAMS allows us to manage scheduled tasks from a single location. This means that we can create jobs and run them on any of those 100 servers. For example, we can create one job to reboot a specific server at a specific time, or we can create a job to reboot multiple servers at the same time. Once the reboot is complete, we can create chain jobs to kick off other steps, such as running a script or sending an email notification.
How has it helped my organization?
We have not had many problems with Fortra's JAMS. I think most of the issues have been due to trial and error. A lot of it depends on us, the users, to make sure our code is correct when we create commands. We need to make sure that all of the information is accurate. We have to double- and triple-check our code to ensure there are no issues that will prevent jobs from running.
Fortra's JAMS helps make our lives easier by allowing us to automate tasks.
Fortra's JAMS helps us centralize the management of all our platforms and applications. This is important because it allows us to manage all of our systems from a single location. Previously, we had over 100 virtual servers, each with its own set of scheduled tasks. This meant that we had to log in to each server individually to view and manage the tasks. With JAMS, we can simply open the client and view all of our jobs in one place. This saves us a lot of time and effort.
JAMS' code-driven automation is highly effective in handling more complex scheduling environments.
JAMS saves us an hour of time when troubleshooting stalled jobs.
JAMS helps to free up our IT staff's time.
What is most valuable?
Being able to create a series of chained jobs, which are basically linked jobs is valuable. This means that we can schedule a server restart at 2 a.m. Once the restart is complete, we can have the job trigger another job that will send us an email notification. Then, we can have that job trigger another job that runs some SQL statements or Power BI queries. We can continue to chain jobs together in this way.
What needs improvement?
As an admin, I would like to have a web-based GUI instead of a client application that we have to install on our PCs. Many applications are moving to web-based GUIs, so it would be convenient if we could use JAMS without having to install a client on our machines. We could simply go to our local servers or website and manage everything from there.
For how long have I used the solution?
I have been using Fortra's JAMS for almost three years.
What do I think about the stability of the solution?
We have not had any problems with JAMS. It has never crashed for us. If we have any issues, it is because of some of our PowerShell code or another error.
What do I think about the scalability of the solution?
JAMS is highly scalable and could be used for a lot more than what we are currently using it for. We just haven't had the time to invest in it to actually use it properly.
How are customer service and support?
The technical support has been excellent. They have always responded promptly and in a timely manner. We have never had to wait for answers.
How would you rate customer service and support?
Positive
Which solution did I use previously and why did I switch?
We previously used the built-in Windows task scheduler before migrating the jobs into JAMS.
How was the initial setup?
The initial setup was really straightforward and easy. I didn't run into any problems from a setup point of view.
One person was required for the deployment.
What about the implementation team?
We completed the implementation ourselves in-house with some clarification about some settings from JAMS.
What was our ROI?
We have seen a return on investment with Fortra's JAMS.
What's my experience with pricing, setup cost, and licensing?
The pricing of JAMS has not been an issue for us, as it has allowed us to save time. This makes it a cost-effective product.
What other advice do I have?
I would rate Fortra's JAMS nine out of ten.
Five people are using JAMS in our organization.
Fortra's JAMS is a great cost-effective solution for automating daily tasks, such as rebooting a server, running PowerShell commands, executing SQL queries, and generating SQL statements. It can do virtually anything.
Which deployment model are you using for this solution?
Affordable, easy-to-use, and has a knowledgeable and professional support team
What is our primary use case?
We run application software for auto finance companies, banks, and the auto company's financial departments. We use JAMS to schedule all the nightly and repetitive batch processing. We run around 10,000 jobs per day.
How has it helped my organization?
We've had batch schedulers before. We’ve had CA7 on the mainframe. Our on-premise data center had another product. They were a little more cryptic and not as intuitive to look at. We couldn’t figure out what to do. In JAMS, we can figure out whatever we need to do pretty easily. It has a really good user interface and straightforward scheduling functionality.
What is most valuable?
JAMS is easy to use. We came up with various scenarios for scheduling. With a little bit of thought, we figured it out and implemented it pretty simply. Calendars, building new jobs, and crisscrossing dependencies are easy to update. If something fails, we can rerun it or skip it with just a couple of mouse clicks. The information displayed on the monitor is very informative. I have a team of 24/7 operators. The team members watch it run and make sure everything's on time. If anything fails, they address it. The product is pretty good for them. It’s pretty easy. I like the solution overall.
What needs improvement?
The product does not allow the users to cut and paste the job names from the screen.
For how long have I used the solution?
I have been using the solution for three to four years.
What do I think about the stability of the solution?
I haven’t experienced any stability issues in the solution.
What do I think about the scalability of the solution?
We're running ten thousand jobs and haven't had any capacity issues. We don’t have it on the busiest server. I'm sure we could run it on a larger server, and it would get even faster. However, it seems to be doing well, and we keep adding to it every day. The operations staff are the users.
How are customer service and support?
I had an amazing experience with the technical support team. The team members respond right away. They answer the phone usually without going into a queue. Their support is amazing. That is one of the key reasons why we selected JAMS.
How would you rate customer service and support?
Positive
Which solution did I use previously and why did I switch?
We were using AutoSys on-premise. We didn't really do a full POC. Once we had the demos and compared the features, we decided to go with JAMS. Since it was the first thing we were doing in the cloud, the testing was like a POC. The whole environment was brand new.
The migration wasn’t difficult. We have documentation on all our jobs. It was just a matter of building them out. Once we finish a few jobs, we can clone what we've done and make minor tweaks for the next one. It's pretty easy.
It took us a little less than three months to choose the product and start using it. There was a lot of discussion about how to build the firewalls between servers and get access to the servers that we would put the agents on. All of that was new to us. It took us a little bit longer than someone who already has that established and is just swapping one tool for the other.
How was the initial setup?
Everything is in the Azure cloud. We have three instances. One instance is for DR, one for prod, and one for non-prod. Lewis Diaz helped us get going when we first went live, did training, and helped us talk about how we had it built. From there on out, we've been self-sufficient.
We had all our clients in an on-premise data center in Atlanta, and we started with our first client in the Azure cloud. We built them out, and they went live in April 2020. Little by little, we kept bringing clients from on-premise to the cloud. We were ready to go in less than three months. It probably could have been done sooner, but the migration and coordination with our clients took a lot of time.
What about the implementation team?
One of the support persons from JAMS had come to our organization. He gave us a three-day training and reviewed what we had built. He gave us suggestions on how to do things better. We have one main person who is an administrator. Another person and I are a backup to the administrator. I am a manager. It doesn’t take a lot of people to maintain the product.
What was our ROI?
The product is giving us a lot of value for the money we're paying.
What's my experience with pricing, setup cost, and licensing?
For what it does, the product is priced very well.
Which other solutions did I evaluate?
We evaluated AutoSys, but we weren't thrilled with it. However, we included it in the comparison to consider the pros and cons. Security was a key concern.
What other advice do I have?
JAMS servers run our main software, and agents are installed on separate servers where our code runs. The license came with five agents out of the box when we bought the license. It was plenty. We're balancing our load across three servers right now. We had another office in Buffalo with just a handful of jobs we set up. It will run there until we can get those into the cloud, too. We're not even using all five.
It's pretty easy to set up a new agent. Most of the workaround is related to firewalls, getting access, and security. Once it's up, we can run things in that environment. We watch for capacity on the servers that we have the agents on. We're running a ton of stuff currently, but we haven't had any real issues where servers hit high CPU or memory. Performance has been good. We use JAMS only for traditional batch-type operations.
We have alerts for long-running jobs and jobs that could not even start. It's error handling. It has different levels of errors, like informational errors and critical errors. We can mix and match and set up emails to be sent to our team according to the alerts. The tool's alerting capability is pretty good.
The solution has an alerting feature to let us know about exceptions. We've even been able to set up what actions it has to take in different scenarios. It's great.
We're using the product to centralize the management of jobs on all our platforms and applications. We're about ninety percent there. It is important to our organization, especially from an employee standpoint. We need one tool that everybody can be trained on and know about. Having multiple tools across different platforms and having people learn more than one thing is troublesome.
In some of the really difficult situations regarding scheduling and everything, we were able to put something in and get it to work with just a little thought. We did not have to spend too much time on it. It was pretty easy. I like the integration with PowerShell. We use PowerShell a lot. If we're supposed to get ten transactions a day, and we only got five, we run a PowerShell job that checks that count once an hour. If the hourly count is under five, then we fail the job. We use it a lot for monitoring our applications.
We have tons of file transmissions, but we use a different product. JAMS has a really good file watch feature that we utilize all the time. The job runs as soon as the file arrives and does whatever it needs to do with the data. Then, it's available for the business to do what it needs to do.
JAMS helps save time when troubleshooting stalled jobs. The job log is easy to access. We can get that to our programmers if needed. There are many screens showing the job name, but we can't cut and paste it. I'd love to be able to cut and paste the job name from anywhere it shows. It will help us send it to our developers without going elsewhere to find or type it out.
We upgrade every two years to the current version. It's a lot of effort for us to upgrade our products or tools. That's why we're on a two-year rotation unless a major security update would come out. Then, we'd have to upgrade right away.
The product hasn't eliminated the monitoring tools but has augmented them. We only use Azure Monitor. We don't spend a lot of money on monitoring tools. Azure Monitor is included with our Microsoft Azure license. Most of our stuff is set up around that. Our jobs are set up in JAMS. It scans the Azure logs for certain buzzwords. It's all mandated. It's never going to make it go away.
Everything we run in prod, we run in non-prod ten times more because we have ten test environments. We've always had that with whatever product we had. It does help. The developers don't have to manually run a thousand test jobs in a release. However, we always had that configured no matter what product we had.
People looking to buy the solution must get somebody to come out and do the demo. Everybody is very knowledgeable and very professional. They know their product. They're definitely great ambassadors. They put on a good show, and then they stick to it. They back it up with reality.
Overall, I rate the tool a ten out of ten.
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
Enables us to identify and address common issues that may impede the execution of our jobs
What is our primary use case?
We utilize Fortra's JAMS to automate tasks within our banking organization.
We utilize a range of jobs for different tasks. Specifically, I possess 1,500 jobs that handle file movements. Additionally, we have approximately 600 SQL jobs, consisting of SQL commands, SSI jobs, and various other types of jobs. Our jobs run on Linux and Oracle, and perform functions such as encryption, decryption, zipping, unzipping, and uploading or downloading through SFTP or FTPS. Furthermore, we employ some visual basic jobs.
How has it helped my organization?
Fortra's JAMS enables us to identify and address common issues that may impede the execution of our jobs. This is of great significance to our organization.
The interactive agents are critical components since we cannot use a JAMS server for SQL jobs due to permission issues. Therefore, we delegate this task to another server. However, this causes the job to be offloaded from JAMS' scheduler, hence the need to distribute the process to another server.
We centralize all of the tasks in our bank, which include Microsoft Windows tasks, scheduled tasks, batch jobs, and scripts. This is a replacement for the SQL job that we previously scheduled across approximately one hundred servers. By centralizing and scheduling these tasks together, the entire process is visible to everyone in the bank. This is critical because if the system goes down, it would affect all banking processes, including ACS payments, ATM, reporting, and other functions. This software is essential for the bank's operations, and without it, we cannot function properly.
Fortra's JAMS helped us centralize job management across our platforms and applications. This is critical because we schedule tasks across multiple applications and operating systems, using triggers and start dates to coordinate their execution. Managing permissions has always been an issue, but we've now centralized permissions for all jobs based on department.
Code-driven automation assists us in managing complex scheduling needs. The system includes a built-in template form. Fortra's JAMS provides the ability to improve the form within the code. This feature is beneficial because we can create our own custom scripts and add them to the system. However, it would be even better if we could add additional forms to the system.
Fortra's JAMS helps to eliminate data inconsistencies across our applications. Essentially, all of our activities occur at the system level, primarily through batch processing. We are not end-users and they do not directly access our system. Instead, we upload reports to SharePoint or similar systems, from where end-users can access them. However, end-users access our reports indirectly and not directly through the JAMS server. We typically share our reports with customers via email, by sending attachments, or by uploading them to SharePoint, OneDrive, or a shared folder. End-users do not directly access our system.
Fortra's JAMS saves us time when troubleshooting. Using the sequence log I have 14,000 jobs running every day.
Fortra's JAMS streamlines our monitoring processes by centralizing scheduling and management, eliminating the need for multiple tools.
Fortra's JAMS freed up the time of our IT staff. Previously, we had 20 servers, each running a different type of application. However, we have now consolidated all of these applications into one system.
Fortra's JAMS saved us the costs of a few full-time employees.
What is most valuable?
All the features are valuable and we utilize all critical features of the solution, such as scheduling, automation, and notifications.
What needs improvement?
It is important to receive notifications if a charged job fails and SQL is halted. JAMS does not provide halted notifications by default, which is a critical feature that needs to be added.
Fortra's JAMS has an encryption code, but they are not compliant with the open-source GPG program, which is a requirement. They are planning to add the GPG program by customizing and bundling it with JAMS, which would be great. Currently, we are using open-source software, and it begs the question of why we are using JAMS. JAMS has an encryption code, but it lacks a PGP engine in the server or an extra connection. They have added it, but version 7.3 is not functional. However, version 7.5 offers more job features, increased connections to the store, and enhancements to the cloud base, such as Azure, which makes it easier to access the cloud.
For how long have I used the solution?
I have been using Fortra's JAMS for nine years.
What do I think about the stability of the solution?
Fortra's JAMS stability is great.
What do I think about the scalability of the solution?
Our requirements are met by Fortra's JAMS, and we have not experienced any scalability issues.
How are customer service and support?
The technical support is great. They respond quickly even after hours and are knowledgeable.
How would you rate customer service and support?
Positive
Which solution did I use previously and why did I switch?
Before we switched to Fortra's JAMS, we utilized a MOVEit SQL Server. However, we found that JAMS is a superior solution.
How was the initial setup?
The initial setup is straightforward. A single server can be set up within a few hours while deploying multiple servers may take a few days to complete.
What about the implementation team?
The implementation was completed in-house.
What was our ROI?
We have seen a great return on investment with Fortra's JAMS.
What's my experience with pricing, setup cost, and licensing?
There are no additional costs other than the license for Fortra's JAMS which is affordable.
Which other solutions did I evaluate?
I reviewed several solutions online before going with Fortra's JAMS because of the features and price.
What other advice do I have?
I give Fortra's JAMS a nine out of ten.
There are 50 users in our system, but only my team has administrative privileges. This means that while all users can access the JAMS client and run, release, or cancel their jobs, they cannot delete or modify anything. The remaining 46 users are simply managing their own jobs, whereas my team of four has the ability to modify settings.
I used Fortra's JAMS successfully across a variety of jobs and it is highly recommended. The solution saved me a significant amount of money, time, and effort through effective monitoring and other features. Overall, I believe Fortra's JAMS is a great product that can benefit many people.
I have come to understand the importance of centralizing management within our organization for the benefit of both the company and its employees. This facilitates prompt troubleshooting and efficient communication of notifications.
Which deployment model are you using for this solution?
We can scale up our organization's scheduling and automation without having to add staff to the department
What is our primary use case?
Our primary use case is for file automation: detecting the presence of files, moving files from one system to another, doing FTP uploads, FTP downloads, and a large number of custom execution methods. Custom execution methods are a way to create your own code that extends the JAMS toolset.
For example, in one of our systems, it has a tool that needs to be run in order to import a file into that system, which is very proprietary. However, those file import definitions are dynamic inside of the system; you could have 100 different file formats. We created a custom file import/export method for our system. The JAMS job calls the other system's API. The JAMS job definition tells it the path of the file to load and what parameters to use. It then reads and displays the remote system's API return results. Custom execution methods are the meat and potatoes of what we use JAMS for.
We have a single production JAMS server that serves as the primary JAMS node where most of our work is done. We have an agent server where the primary node issues some job commands to run on that agent. Then, we have a test JAMS server which we use when we are testing execution methods and other things. We have plans to stand up a failover server, but have not done so. The back-end database for our JAMS production system is Microsoft SQL Standard Edition and all our servers are on Windows.
How has it helped my organization?
Automation is subject to a volatile environment. That's reality. You have a client that provides you a file with the wrong naming convention or in the wrong format, or they are supposed to give you a file at 8:00 AM every morning, then one day they simply don't give you that file. Those are the sort of nuisances that create headaches for your production staff as they are trying to work through and detect them. Sometimes, they will fly under the radar, especially if you have a less sophisticated job scheduler running batch jobs, like Windows Task Scheduler. They run at a certain time and are expected to just work. However, maybe two days later, someone finds out that the file, which we normally get every Monday, was not presented to us. Those are the tricky little devils that will get you.
What we do when we develop a JAMS file workflow is we have certain checkpoints that we put into it. If we have a job that wants to run it at a certain time and expects a certain file to exist, we will have the job specifically check for that. If the file doesn't exist, it will create a very specific, actionable alert. We design that to go out to our file processing operators who can respond accordingly by contacting the client. When we are doing an export, if we want to run a file out of our systems, the job that runs the export could detect there were no records that day. It might report that back, then we can act on it. Or, perhaps after the export job run, you could have a follow-up job that checks to see that exactly one and only one file is available in that export destination.
You can't necessarily prevent environmental issues from happening. You can't expect every client to always do what they are supposed to do and give you what they are supposed to give you every day. However, when they don't, at least you can know about it as soon as possible and take action on it rather than finding out about it by accident sometime down the road.
It has drastically improved our capabilities to scale our automation. Before JAMS, there were a lot of manual processes. We had a couple of operators who spent all day doing that. A lot of the time, with human intervention and manual processes, it is as good as the person following a procedure. Human error is a big problem.
Shortly after we adopted JAMS, our file volume started ramping up. The number of files, reports, and other processes that we have had to automate has grown exponentially. We have been able to keep up with that load. JAMS has been able to scale up our organization's scheduling and automation without adding staff. The people who previously did these manual processes are now trained on monitoring the automation and scheduling of those processes. They only step in and respond to issues, rather than running manual procedures all day.
There are many platforms that an organization might use. We have Microsoft SQL server, Artiva, QlikView, and Qlik Sense. All those different platforms have built-in schedulers: SQL scheduler, QlikView scheduler, Artiva scheduler, and Windows scheduler. Without an enterprise scheduler, all those independent schedulers can only be coordinated by time of day. If you want to export a file at 8:00 AM, then set up a scheduled job that runs at 8:30 that loads that file into your BI tool, in theory that should work. However, that sort of time-based, unintelligent scheduling and coordination between systems falls apart when anything goes wrong. Let's say your 8:00 job should be done in five minutes and you have your 8:30 running on your BI scheduler. If that 8:00 job runs long, doesn't produce a file, or if it throws an error, then your BI scheduler doesn't know and just does what it always does. It runs its 8:30 job because there is no coordination. Now, users are wondering why they have a BI report with yesterday's data in it. With JAMS we have chain jobs together in a sequence. The first job throws an error so the second job never runs because there was a problem. An operator can resolve it and resume the sequence.
We have tried our best to consolidate our scheduling and not to use the Microsoft SQL job scheduler, BI tools, and built-in schedulers, but rather to use JAMS and create custom execution methods to schedule everything in one place.
What is most valuable?
The extensibility feature, i.e., the custom execution method ability, is the most valuable feature. We can write a C# interface using the JAMS libraries. We copy the DLLs for the client interface over to our remote desktop and JAMS servers. Then, any of our JAMS users can open up a job definition and see the control developed by our developers. When the job command is issued, it executes our developers' code.
I am happy with the exception handling, for the most part. When an exception occurs on one job inside of a series of jobs, it can make that series of jobs stop running, sending an email to someone to let them respond. There is also a monitor view where you can see everything that is currently running and any of the jobs that are currently in an error state. You can find them and try to rerun the job, or cancel it if the job doesn't actually need to be run.
JAMS will attach the console logs from anything that has an error on the email that goes to the operators. Also, inside of the job monitor, you can go to the logs and dig down into the details to see what went wrong.
It has the ability to use PowerShell to schedule jobs, enable, or disable triggers. The fact that they have JAMS PowerShell cmdlets is useful. This is not central to our use of JAMS, but I appreciate it. While they have extended PowerShell and created cmdlets, I tend to use that when I have to do things like kill all the jobs currently in the schedule, if something catastrophic has occurred. I use them on my test server more than production. On my test server, if I am running a bunch of tests and jobs, but I just want to wipe out the whole scheduler, then I can use a PowerShell command to do that.
From time to time, a job is executed and gets stuck in a loop. It gets hung. Maybe the remote system freezes up. Something abnormal happens. It is pretty easy to deal with those. You can see them inside the JAMS monitor because JAMS will automatically calculate the average time that it takes for a given job to execute as long as it has had a few successful runs. The JAMS Scheduler can predict what should take five minutes to run. If it is running for 30 minutes, there is a percentage that shows inside the scheduler that the job is now at 600% of the normal run time. So, you will see this big number, 600% and climbing inside the monitor. You can research that. You can go find the hung process on the source system and respond accordingly. You can set up jobs such that they send alerts or have runaway job limitations. I personally don't tend to use the runaway feature. Our operators notice and respond accordingly to long-running jobs.
What needs improvement?
The biggest area with room for improvement is the area that my organization benefits the most from using JAMS, and that is in custom execution methods. I happen to have a very good C# developer. Ever since we got JAMS, he has spent a lot of time talking to JAMS developers, researching the JAMS libraries, and creating custom execution methods. He's gotten very good at it. He is now able to create them and maintain them very easily, but that was hard-won knowledge. If I ever lose this developer, I would be hard-pressed to find anyone who could create JAMS custom execution methods as well as he can since there really isn't all that much help, such as documentation or information, available on how to create custom execution methods.
I really think that they could benefit greatly by being much more transparent about C# development, maybe by making a JAMS cookbook or a developer portal where they could throw ideas at each other.
One of my complaints with the marketing around JAMS is that it says things like, "It integrates with Teams". They talk about integrating with a lot of things, but marketing doesn't tell you that they are talking about JAMS running PowerShell jobs. Since PowerShell can automate things like SharePoint and Teams, that is how marketing gets away with saying it has so many integrations. JAMS doesn't have as many built-in integrations as they advertise. I think they should build more of them, and improve on the ones they have built.
For how long have I used the solution?
We purchased JAMS six years ago. I have been using it the whole time. I was involved in shopping for potential enterprise job scheduler solutions and selecting JAMS.
What do I think about the stability of the solution?
I would be hard-pressed to think of any occurrence that we have had over the last five years where JAMS has crashed, had any sort of catastrophic failures, or instability. It is a pretty rock-solid system. I am happy with it.
What do I think about the scalability of the solution?
Scalability is great. It has the ability to add agents. We are a Windows shop, and at some point, I am sure we will expand and add more Windows agents. If we were running other platforms, IBM or Unix, then there are agents for that. A company a mix of systems would do well with JAMS because of that flexibility. The ability to have multiple servers and failover servers is a great benefit. Because we are a fairly small power user, we haven't had to really take advantage of that scalability very much, but we are glad to know that it is there.
It is used extensively across the organization in all our business intelligence reporting data refreshes, data warehouse SSIS packages, file importing and exporting, and file movement. We use it for sending automated ticket creation emails to our ticketing system.
The place where I have targeted for us to extend the solution's usage is in the Artiva systems, where not all jobs are scheduled inside of JAMS. There are still some legacy jobs that are scheduled inside of the Artiva's internal job scheduler. I plan on moving jobs into JAMS and making them JAMS jobs.
How are customer service and support?
When I find room for improvement, I log a ticket with JAMS. So, I have logged plenty of tickets.
I would rate support as an eight out of 10, mainly for lack of documentation and support for the custom execution method development.
How would you rate customer service and support?
Positive
Which solution did I use previously and why did I switch?
It has eliminated monitoring tools like the job schedulers, e.g., the SQL Server scheduler and Qlik Scheduler. You need to have special skills to go and investigate a job that might be running on those schedulers. We didn't have an enterprise scheduler before JAMS. So, I can't say that it eliminated a different enterprise scheduler, but it does prevent us from having train our operators on all the various systems' schedulers. That is one of the benefits of consolidating your scheduling down to a single enterprise job scheduler; you only have to train on one tool. Once a person knows how to look at the job run history, job logs, and job definitions inside of JAMS, they don't need to know how to do that on SQL Server. They don't need to know how to research a Windows scheduled task running a batch job and know where that batch job logs its results. All of that goes away because you can just look at that in one place.
My experience at a former employer was with Tivoli and Tidal job schedulers. Tivoli and Tidal were larger, more complex, less intuitive, and less user-friendly. We also didn't have the ability to do the C# custom execution methods that we do in JAMS. Also, the price was in a completely different ballpark. Tivoli and Tidal were much more expensive.
How was the initial setup?
It was pretty straightforward. When we started with JAMS, we didn't even have SQL Server. It natively installs SQL Express for you, so you don't need to buy an SQL Server if you don't want to. You don't need to buy agents if you don't want to. You can have all the jobs running locally on the JAMS server. That is what we did for a while before we got the separate agent license. The amount of time to learn how to use the tool was not very challenging. It was pretty easy to learn.
The biggest challenge was when we saw and heard what we could do with custom execution methods. We knew we wanted to do it, but it took a long time for our developer to figure out exactly how to do it right.
What about the implementation team?
The JAMS developer and I are the administrators of the system. We do the upgrades, the custom execution method development, create a lot of the job definitions, and help train people.
There are two people that I would classify as operators. They monitor jobs. They respond to errors. They rerun failed jobs and move files. Also, if the client gave us a file named incorrectly, it would be their job to rename it, fix it, and tell the client that they did something wrong, then rerun the failed job.
There are about four other power users who create job definitions.
There are a large number of people in the company who might receive an email when a report is finished or be notified if there is a problem with a job that was created for their benefit. However, I wouldn't consider those people as users so much as they are people who benefit from the product. There might be 30 of them.
What was our ROI?
We have easily seen ROI. This is based on the fact that the number of jobs that we are running, the number of processes we have automated, and the number of new clients and processes that we've added since taking on JAMS without having to add staff has paid for itself in dividends.
What's my experience with pricing, setup cost, and licensing?
Take advantage of its scalability. You can start small. The initial cost is very reasonable. Once you have started picking up the tool and adopting it, then you can scale up from there and buy more agents.
There are annual licensing and maintenance costs. If you add agents or servers, every one you add has an additional annual cost. Then there is the basic cost of any software, which is the server hardware and operating system.
Which other solutions did I evaluate?
Yes, I evaluated Tivoli, Tidal, and several other enterprise job schedulers. It has been five years so it's hard to remember specifically which others I looked at.
What other advice do I have?
I have three examples of working very closely with enterprise job schedulers. If a company doesn't have an enterprise job scheduler, then JAMS is an easy choice. Really adopting the idea of using an enterprise job scheduler into your company culture is important. You need to move jobs out of all your other job schedulers and centralize them in JAMS.
Don't just use it to schedule jobs on one system. Don't just use it as a Windows Task Scheduler replacement. Don't just use it for batch files. Anywhere that you see a scheduler, you can replace that scheduler with JAMS. Get a good C# developer and start making your own custom execution methods.
Contact JAMS support and get your developers talking to their developers. That will help you get up to speed a lot faster.
For anyone coming off of another job scheduler, like Tivoli or Tidal, I would tell them that they have made a good choice. This solution is just as powerful and much more cost-effective.
Lean into it. Really use it. Don't just use it for this and that. Don't have your other systems and job schedulers doing their own things like exporting files and then relying on JAMS a file trigger to detect the presence of that file. Have the JAMS scheduler kick off the job that creates the file. Don't do it half-heartedly.
I would rate it as 10 out of 10. Anytime that I am geeking out with other IT guys about their systems and processes, I always end up talking about JAMS.