Skip to main content

A smoooooth operation....

 Backward compatibility...

 

A word that I used to hear when I started my career. You design your APIs with backward compatibility in mind, don't break anything when you are upgrading, think about this, think about that etc.

Well, those teachings from my previous mentors didn't go in vain, as I made a fundamental change in how we report problems @ Gelato

 

You see recently @ Gelato, the CS (Customer Support) team moved from A ticketing management system to B ticketing management system, which is a monumental task for all the people involved in the CS team. Even though the fundamental concept remains the same the places, the attributes the concepts, and the naming of different attributes all change if you have this transition. And thus it was a big change for the whole company. 

 

After the decision was taken, the first step was to create a well-written transition document, which the good folks at the CS team tackled. Special thanks to BartoszKyle and Anastasiia for this feat.

Next, it was time for the engineering team at CS to implement the same. 

 

The major challenge was to have minimal impact on the front-end side. We made maximum effort to keep the request and response body the same, as I mentioned earlier the business use cases and the concepts remain the same. Put simply, you have a title, content and attachments along with the category and sub-category of your problem and once you submit the request you should be able to see the ticket number along with the submission details that you need if there are any. But as for anything in tech, it is not a walk in the park, as there are some custom rules/logic we have setup that depends on ticketing management system A. This was an eye-opener and enabled us to implement it in such a way as to no longer tie your business logic with third-party tools that we use.

 

I was able to redefine this custom logic implementation with the help of my wonderful colleague Bartosz. Instead of hard coding the logic with custom fields, this time around we solved it by using flags, which does the same logic but now we don't need to keep track of the custom field IDs, which can change based on the environment workspace we use. 


We also took advantage of this transition to make things better for our agents, internal users and any future developers who come this way. Previously there was no development workspace and it was hard to test some features that needed, you know, testing. With the current ticketing tool, we were able to separate the fields that need separation based on environments, which helped the development team to test things freely without any hassle.

 

Thanks to my wonderful teammates @ GelatoKaran and Nilesh, it was a joy working this transition rather than having a mild panic attack every time I refactor the codes, wondering where it breaks.

 

Well, let me come back to the title of this blog now. So what were the after-effects? 

Well, front front-end team didn't even need to make any changes to their wonderful front-end logic anymore. The mobile team @ Gelato did not need to rebuild the app and up a version, they simply, you know, use the same app to convey their concern to the CS team, which we can take care of on our new ticketing management system. So indeed it was as written by Sade, a smoooooooth operatorion

 

Life was all good.

Comments

Popular posts from this blog

My experience with the Golden signals

In June 2022, I embarked on a quest for a new job opportunity. Fortunately, this endeavor began just before the global job market experienced a significant downturn. I must admit, I faced my fair share of rejections during this period, but I also had an epiphany. It became evident that there was so much more to learn and understand in the world of technology. Coming from a small service-based company, I had encountered limitations in terms of how much I could learn on the job. However, during interviews and conversations with senior developers, I gained valuable insights into the architectural and technical decisions made by teams in various companies. One such company that left a lasting impression on me was Delivery Hero. Their technical blog posts provided a wealth of information, especially for someone like me, transitioning from a smaller company where projects had minimal daily active users compared to the scale of Delivery Hero. One particular blog post that caught my attention ...

A bit laziness can make you productive

 So recently there was this requirement from the operations team at my current company to keep up an excel sheet for the tasks that we do every day. Now my company's work culture is pretty good actually. They never sneak up on you to check whether you are doing your tasks or not. They are cool and most importantly they trust you with your tasks.  This was more like a record for safekeeping, for both parties. All was good except we should maintain this at least weekly. So at the end of the week if the operations team need to cross-check your task time with your leaves all the sheet should be updated.  Now see there are many tools out there that can do this pretty easy for you but trust me you don't want to spend a monthly/yearly fee for such a tool that does so little as keeping up the tasks hour and the project associated with that task. So many times a problem arises for me since I forget things pretty easily. At the end of the week, I need to fill up the entire task rec...