Last year we started working on a new add-on for Atlassian JIRA. After months of work we decided to drop everything and start over on a relatively new platform, JIRA Cloud. This was a radical decision that definitely kept us up at night. This short story is about this decision.
How it started
In 2015 we started developing a new add-on for Atlassian JIRA. The idea for the add-on came from one of our teams that wanted to manage customer data in JIRA. The team was already managing a lot of their sales process in JIRA, but really missed a customer entity that would give them an overview of a single customer.
After some research we realised that more people were looking for this functionality and decided to make a product out of it that we could publish on the Marketplace. We’ve done this before, you might know us from popular add-ons such as: Numbered Headings or Git for Confluence.
We put a lot of thought in the architecture and the User Experience of the add-on and once we had a solid plan, we started building our product called “Relations for JIRA CRM”.
Early access program
Once we had a first version of the add-on, we installed it in JIRA and presented it to the team as a beta. It was very beta and we were ashamed about some of the functionality, but our goal was to learn from real usage early on.
To get more early feedback, we decided to start an early access program outside of our company and demoed the add-on to other Atlassian Experts on Atlascamp. The idea for the add-on caught a lot of interest and we got a handful of people who were willing to participate in the program.
The feedback we got from our team and from the early access program was incredibly useful for us and the add-on was growing. But then we learned something that changed everything.
We built the add-on for JIRA Server, mainly because we use JIRA Server and we want to use it ourselves. But when we were at Atlascamp, we learned something that questioned us whether this was the right direction for us.
Atlassian had spent a lot of time and effort to improve JIRA Cloud, which was something we always kept an eye on. But there were some serious issues in the past. These issues were now resolved, however, and JIRA Cloud had become a very serious product.
Atlassian announced that JIRA Cloud’s popularity was rising fast. They predicted that it would surpass JIRA Server in no-time and would grow much further.
With this information in mind, we decided to change our whole plan and build our add-on for JIRA Cloud. Here is why:
Reason 1: Target audience
Relations for JIRA is mostly targeting small- to medium-sized companies. So the first question we asked ourselves is: Where will our target audience be?
When a company has to choose between Server or Cloud, there are two big differences that will influence their decision: Costs and data.
JIRA Server has the advantage that your data is hosted on your own terms. Within your own infrastructure and firewall. This is important as you don’t want your company data “lingering around on the streets”. But the costs to set-up and maintain JIRA Server are high.
JIRA Cloud has the advantage that costs are relatively low. It’s much easier to set-up and Atlassian takes care of hosting and updating. The downside is that your company data is in the cloud.
Our assumption is that big companies can afford to pay the extra costs for JIRA Server and prefer to have their data in their own hands. Small- to medium-sized companies, on the other hand, may not have enough resources and will more likely choose for Cloud.
Since Relations for JIRA target small- to medium-sized companies, it would make sense for us to target JIRA Cloud.
Reason 2: Compatibility
Ideally, the add-on would be available for both JIRA Cloud and JIRA Server. But we have limited resources and chose to focus on one platform for now. We wouldn’t get much done otherwise..
When we compare JIRA Cloud to JIRA Server in terms of add-ons, they’re both from a different world. Add-ons on JIRA Cloud are handled very differently, which has many advantages but might also limit you in some ways.
We were used to be able to integrate into just about anything on the Server platform. But there are other rules to play by on Cloud. I don’t know many of the details about this, as I’m just a designer, but I do know what the implications were for us.
An example we ran into: The JIRA Server version of our add-on displayed a company and contact dropdown on the Issue Creation screen. Users would select the company and/or contact the issue belonged to while they were creating it. On JIRA Cloud, however, this is not possible. You can’t integrate with the Issue Creation screen and add your own elements.
The limitations for integrations on JIRA Cloud force you to find other ways to implement your ideas. So if you are planning to build an add-on for JIRA Server and for JIRA Cloud, you might want to start with the Cloud version. If you don’t, you will run into these limitations and both versions of the add-on will be different, which is a disaster for your User Experience.
Reason 3: Atlassian
Atlassian was focussing on JIRA Cloud, so we figured that this could benefit add-ons that were released for this platform. If Atlassian is going to do marketing for the platform, it might benefit us.
We noticed our assumption was right when Atlassian’s yearly Codegeist Hackathon offered prices especially for cloud add-ons. At Atlassian Summit, there was a lot of attention for cloud as well and we got mentioned in one of the talks.
Reason 4: Knowledge
Although switching to JIRA Cloud would delay our efforts a lot and we would lose our beta users from the Early Access Program, not everything was lost. There were many things that we could re-use, mainly knowledge. We had validated our concept with a minimum viable product that is still being used by our team today. We had learned from our Early Access Program and the feedback we gathered. And all the hours in front of the whiteboard were not wasted as the concept is mostly the same.
Looking back on our decision
Looking back, we are very happy that we decided to start over and chose for Cloud. The platform is very healthy and mature and has a lot of users. Atlassian was right when it said that Cloud was getting popular and we don’t think this will change anytime soon.
Our add-on got attention from the community almost immediately after it was released and we have a very steady amount of new users each week. This surprised us as most of our Server add-ons would take a while to get any traction.
We got some attention from Atlassian and other Atlassian Experts because of our choice to go to Cloud. We were mentioned in one of the presentations on JIRA during Atlassian Summit and we were mentioned in a blogpost of Stiltsoft: 5 Most Useful Add-ons of Atlassian Codegeist 2015.
So even though we threw away some of our work by starting over, we think that it was a great choice.