PAYBACK Turns Automation into Innovation using ScriptRunner
With over 31 million active users, PAYBACK is Germany's leading customer loyalty and multichannel marketing platform. To support the worldwide growth, the company leverages a large on-premise Atlassian stack, which includes Jira, Confluence, Bitbucket, Crucible, Fisheye, Crowd, and Jira Service Management.
PAYBACK's success stems from giving its teams the flexibility and freedom to innovate. As their use of Atlassian tools scales, they need to ensure teams can stay nimble and innovate flexibly.
Industry: Tech / Data Driven Marketing / Multipartner Marketing Platform / Loyalty Services
Atlassian instances: Jira, Confluence, Bitbucket, Crucible, Fisheye, Crowd, and Jira Service Management
Atlassian stack users: 2000+
"When a user asks me ‘can we do this?’ I no longer say ‘let me see if I can find an app on the Marketplace’. The answer is always ‘Yes’! If you know Groovy, there are literally no limits to what you can do."
Achieving complex problem solving with a small team
PAYBACK’s Atlassian tools are managed by their Collaboration Management team consisting of 3 members, of which 2 working part-time. PAYBACK’s rapid growth and the highly-regulated environment in which it operates started to create a continuous flow of requirements which needed to be managed. Having limited capacity to manage this process was starting to cause a delivery bottleneck.
In order to balance between flexibility and control, the team decided to move away from a strict central management of projects and spaces and delegate ownership to business stakeholders - called ‘context owners’ within PAYBACK. The context owner of each team or project gathers the needs of their colleagues, and presents them to the Collaboration Management team, who prioritizes and takes action considering the wider needs for coordination within the business.
To implement the wide variety of customisations, automations, and integrations required by context owners, the team had to rely on a large number of apps from the Atlassian Marketplace. And, where apps were not available for a particular use case, they would have to create and maintain their own apps using Atlassian’s Java APIs.
Since PAYBACK operates in a tightly-regulated, heavily audited environment, adding new apps requires a lengthy and complex approval process which makes it difficult to implement these solutions in production.
The team’s ability to address these larger challenges was further hindered by daily maintenance and admin work across Jira, Confluence and Bitbucket, which is tedious and repetitive but absolutely necessary for system health. The team needed to prioritise the maintenance of existing systems over implementation of new features, limiting its ability to address its core issues.
Consolidating automation and customisation
The team started looking for solutions that would allow them to cater to all their user’s needs in a timely manner.
They found the ScriptRunner app family from Adaptavist, and first adopted ScriptRunner for Jira, then in quick succession ScriptRunner for Bitbucket and ScriptRunner for Confluence.
The ScriptRunner apps easily cover the functionality of many other apps in the Atlassian Marketplace. They also allow the team to create an unlimited number of custom automations, customisations or integrations without the hassle of writing their own apps. Additionally, using a single app to address a multitude of different issues dramatically simplified the implementation and approval processes.
"We decided to replace every process we could using ScriptRunner, as it enables us to have one layer where we can perform all changes. It's a more cost-effective solution and we're able to depend on a trustworthy company - quality and stability matter a lot to PAYBACK."
- ProblemThe product team needed a quick way to look at a ticket and see all upper hierarchy level issues connected to it in Portfolio for Jira, so they would easily know where to log time.
- SolutionThis was easily achieved with a ScriptRunner custom field, saving not only all developers efforts of manually checking the upper issue hierarchies.
- ProblemWhen PAYBACK shifted from their old helpdesk solution to Jira Service Management, they were faced with some special requirements and wishes in regards to the change process.
- SolutionScriptRunner was used to build a complex change workflow that conditionally asks for approvals of either technology owners or pre-defined user groups, enables users to change different issue properties on different states of an issue and, dependent on different risk-scores automatically requires certain approvals for changes.
- ProblemUsers were frustrated with the standard-notifications settings in Jira.
Using ScriptRunner’s Script Listeners, a system that triggers emails or in-chat messages to certain teams depending on project/issue stage was created.
- ProblemPAYBACK needed to standardise the way in which internal news and announcements were done, to ensure that nobody missed important news.
- SolutionThe team used WebexTeam’s REST endpoint function together with a small Groovy script triggering the external webhook to execute a message function. Every time an announcement blog post is posted on the Confluence intranet, a notification is posted in the team announcement channel.
- ProblemAs an extra security precaution, Bitbucket users asked for a way to make certain approvers mandatory on some paths in the code.
- SolutionBy combining a custom event listener with a custom merge check in ScriptRunner, dev team leads are now able to add single users as approvers on paths they scope using regex.
"We don’t repeat manual tasks anymore. We didn’t understand this was possible until ScriptRunner. Now, we look at a task in our Atlassian stack, and if it can be automated it will be. It saves my colleagues time, and the company wins big time."
Beyond the endless flexibility offered by ScriptRunner, the biggest win for PAYBACK is the time saved across the entire organisation. The Collaboration Management team started by automating most of their day-to-day maintenance work before automating the most manual and repetitive tasks to free up the team’s time to work on other higher-value projects.
The time freed up from maintenance drudgery is now used by Lennart and his team to strategize about how to use the Atlassian toolstack in a more efficient way for their business. Users come to Lennart’s team with a business case, and they can create the automation or customisation that solves it. Each use case becomes an opportunity to build something that solves not only one, but several related problems in one hit.
"Once processes are fast and easy for the daily business, people learn to love them, and actually really live them." says Lennart.