What We Learned From Building Our Own Ticketing Platform

What We Learned From Building Our Own Ticketing Platform 9

Since Design Pickle’s founding, we’ve managed all of our 250,000+ design requests using a ticketing platform designed for customer support requests. 


And for four years, it worked really well for us.


Until it didn’t. 


You see, customer support requests just aren’t the same as design requests. Design requests aren’t simple questions that can usually be answered in a few back and forth messages. Fulfilling design requests involves a whole team that needs to be aware of client preferences, brands, document delivery, reporting, the order in a client’s queue, and skills required to fulfill the request. 


More and more, we began to compromise our workflows based on what our ticketing platform was and wasn’t capable of. Instead of innovating processes, we found ourselves coming up with workarounds that would fit in with the software.


When improvements were suggested, we’d respond with “Unfortunately, we can’t do that because the ticketing software won’t let us,” or “That’s not possible because the API doesn’t support that.”


It was frustrating as a product team to keep saying no over and over again to things that if we were able to build them, would have improved the business. 


Oh, and the 200+ users on a per-seat pricing model was adding up quickly


For a couple of years, we kept throwing around the idea of replacing our ticketing software with our own solution. But the task always seemed daunting and was typically pushed back on the roadmap to “some other time.”


But soon enough, we realized that there was no way that the ticketing platform could scale to accommodate the company’s vision. It was simply bursting at the seams as we grew. It was time to tackle the project — time to create our own ticketing platform.


So we charged onwards to replace our off-the-shelf ticketing software with something we could finally fully access and customize.


And guess what? We did it!


For the past two months, we’ve successfully been running on our own platform.


Looking back, we learned a few lessons that we’d like to pass on to anyone who’s considering tackling a project of similar scope.


Buy, Then Build


What We Learned From Building Our Own Ticketing Platform 10


If we’d built this entire solution from the very beginning, it wouldn’t have worked out as well as it did today. I’m really happy the founding team made the decision to purchase the initial ticketing software.


When you’re first starting up, it can be tempting to build custom everything to get it just the way you want it. But apart from it being expensive and time-consuming, as a startup, your workflow is definitely subject to change. 


You can take a bit of the risk off of your plate by buying an existing system that meets 80% of your needs, and then use custom integrations and automation software (like Zapier) to take care of the remaining 20% of your workflow. 


Even once you’ve survived the first contact with your customers and have careful processes in place, it may still be worth it to keep buying the software. If it ain’t broke, right? You’ll know it’s time for an upgrade when your purchased software starts pigeonholing you into decisions you know aren’t best for the company.


Have a Transition Period if Possible

What We Learned From Building Our Own Ticketing Platform 11

We were lucky that we could continuously roll out features so our design team could test them as we went along.


However, that didn’t always work since the old software was still fully accessible during the transition period. No one was using the new software.


We needed to get people on board to test the new platform so we opted for a transition period where both systems could be used in parallel for a few weeks. 


During this period, we were able to unearth some issues, requirements, and use cases we weren’t aware of upon roll-out.


We then had the choice to either keep using the two systems in parallel at a degraded experience to the customer or do the proverbial “ripping off the band-aid.” 


We opted for the latter. When the band-aid did come off, we were busy with support and feature requests for a few days there, but everyone on the team handled it like champs. Plus, many of the issues had already been solved during the transition. 


You’ll Overlook Small Things Here or There. That’s OK. 

What We Learned From Building Our Own Ticketing Platform 12

Sure, we missed a couple of details here and there that were quickly caught and passed on to us by our excellent customer success team. Everything was quickly remedied in less than a day.


The most important thing was that we got all the big stuff… the stuff that if that didn’t work, chaos would ensue. And that’s the stuff that really, really mattered. 


There’s Always More To Do

What We Learned From Building Our Own Ticketing Platform 13

Even after the initial roll-out, there will always be more improvements to make. The work won’t stop as soon as you push to production. 


There will be bug fixes. There will be feature requests. There will be people still used to the old way of doing things. You just gotta roll with it and come up with a plan to get a little better every day.


Have a Single Place to Gather Feedback

What We Learned From Building Our Own Ticketing Platform 14

We created a single place where all change requests, bug reports, and other concerns could be directed. It made the transitional and initial roll-out processes much more manageable. 


Let Customers Know

What We Learned From Building Our Own Ticketing Platform 15

If you’re making a huge change to something in your system, it can be wise to alert customers of the upcoming change and possible downtime. That way, if something were to happen, they’d know why.


Asking them to report any issues can also be helpful. 


…But Try Not to Affect Their Experience

What We Learned From Building Our Own Ticketing Platform 16

Ideally, your customers shouldn’t even know something changed on the backend. 


If you can, plan your rollout so that downtime and possible issues for customers are minimized. 


There Will Always Be Things You Don’t Know

What We Learned From Building Our Own Ticketing Platform 17

If we were to have gathered 100% of everything that all 280+ employees of Design Pickle do in our system, we would have never completed this project. 


Even with weeks of requirements gathering, things can always change before roll out or lack the context needed to clearly execute the feature.


Stay flexible and roll with the punches. And oh yeah, do a little happy dance once it’s all over!


This was one of the largest software projects Design Pickle has taken on to date. We’re very proud of how it turned out and grateful to the engineers who helped make this a reality.


We’re excited about the future possibilities that are enabled by this change. Get ready for a lot of new and exciting features to come out in the next few months.


Stay up to date with product changes


Stay tuned to the blog for announcements of major feature releases. You can also keep an eye on our changelog or even submit your own feature request

No comment

Leave a Reply

Your email address will not be published. Required fields are marked *

Live Covid-19
United States 43,698,787
Cases: 43,698,787
Deaths: 705,799
Recovered: 33,136,077
Active: 9,856,911
India 33,651,221
Cases: 33,651,221
Deaths: 446,948
Recovered: 32,894,001
Active: 310,272
Brazil 21,327,616
Cases: 21,327,616
Deaths: 593,698
Recovered: 20,326,408
Active: 407,510
United Kingdom 7,631,233
Cases: 7,631,233
Deaths: 136,105
Recovered: 6,159,135
Active: 1,335,993
Russia 7,398,415
Cases: 7,398,415
Deaths: 203,095
Recovered: 6,590,933
Active: 604,387
Turkey 7,013,639
Cases: 7,013,639
Deaths: 62,938
Recovered: 6,472,400
Active: 478,301
France 6,989,613
Cases: 6,989,613
Deaths: 116,449
Recovered: 6,720,032
Active: 153,132
Iran 5,519,728
Cases: 5,519,728
Deaths: 119,082
Recovered: 4,920,978
Active: 479,668
Argentina 5,248,847
Cases: 5,248,847
Deaths: 114,828
Recovered: 5,107,912
Active: 26,107
Colombia 4,948,513
Cases: 4,948,513
Deaths: 126,068
Recovered: 4,788,573
Active: 33,872
Spain 4,946,601
Cases: 4,946,601
Deaths: 86,229
Recovered: 4,708,167
Active: 152,205
Italy 4,657,215
Cases: 4,657,215
Deaths: 130,653
Recovered: 4,423,988
Active: 102,574
Indonesia 4,206,253
Cases: 4,206,253
Deaths: 141,381
Recovered: 4,020,801
Active: 44,071
Germany 4,197,405
Cases: 4,197,405
Deaths: 93,958
Recovered: 3,952,000
Active: 151,447
Mexico 3,619,115
Cases: 3,619,115
Deaths: 274,703
Recovered: 2,971,000
Active: 373,412
Poland 2,902,591
Cases: 2,902,591
Deaths: 75,571
Recovered: 2,660,776
Active: 166,244
South Africa 2,895,976
Cases: 2,895,976
Deaths: 87,001
Recovered: 2,758,274
Active: 50,701
Philippines 2,470,235
Cases: 2,470,235
Deaths: 37,405
Recovered: 2,267,720
Active: 165,110
Ukraine 2,387,750
Cases: 2,387,750
Deaths: 55,557
Recovered: 2,243,209
Active: 88,984
Malaysia 2,185,131
Cases: 2,185,131
Deaths: 25,159
Recovered: 1,968,538
Active: 191,434
Peru 2,171,374
Cases: 2,171,374
Deaths: 199,182
Active: 1,972,192
Netherlands 1,994,901
Cases: 1,994,901
Deaths: 18,149
Recovered: 1,910,871
Active: 65,881
Iraq 1,991,628
Cases: 1,991,628
Deaths: 22,072
Recovered: 1,892,413
Active: 77,143
Japan 1,689,899
Cases: 1,689,899
Deaths: 17,421
Recovered: 1,627,755
Active: 44,723
Czechia 1,688,953
Cases: 1,688,953
Deaths: 30,452
Recovered: 1,652,454
Active: 6,047
Chile 1,650,985
Cases: 1,650,985
Deaths: 37,432
Recovered: 1,606,490
Active: 7,063
Canada 1,600,339
Cases: 1,600,339
Deaths: 27,636
Recovered: 1,527,040
Active: 45,663
Bangladesh 1,550,371
Cases: 1,550,371
Deaths: 27,393
Recovered: 1,510,167
Active: 12,811
Thailand 1,549,285
Cases: 1,549,285
Deaths: 16,143
Recovered: 1,408,602
Active: 124,540
Israel 1,262,868
Cases: 1,262,868
Deaths: 7,641
Recovered: 1,183,394
Active: 71,833
Cookie Notification
This site uses cookies to ensure that we give you the best experience on our website. If you continue to without changing your Cookie Settings, we'll assume that you are happy with it.
See our Cookie Policy
Change Cookie Settings
Ok, I like Cookies!
Cookie Notification
This site uses cookies to ensure that we give you the best experience on our website. If you continue to without changing your Cookie Settings, we'll assume that you are happy with it.
See our Cookie Policy
Change Cookie Settings
Ok, I like Cookies!