 Welcome everyone to the session how an API helped me change my perspective of failing by Jaya. So thank you Jaya for joining in. Thank you for finding time to join us today. Hey Karan, thanks for the introduction and thanks to SeleniumCon for this opportunity. So I just wanted to talk about an experience which I had about couples of years ago and that is what this topic is about, which is how an API helped me change perspective of failing. So a quick introduction about me. I'm Jaya Chakrati and I'm a QASME and I'm a digital transformation consultant right now. I have a total of 15 years experience and 13 years with ThoughtWorks. And I am passionate and enthousiastic about agile and also QA because most of my life I have been a QA. The other important thing is I love music and I am ad-hoc that. And I am a biker both motor and non-motor. I go with trips with my friends on bikes and with motor and without motor also. So that's me. Now, quickly coming to the point, right, like why should I talk about failing, right? So I think that failure is completely underrated. Nobody talks about failing. The fact is everybody fails at some point of time because whenever you try something new, it happens that, you know, like things doesn't go entirely the way you want at the very first time. The other important thing is that to normalize failures and the most important factor about failures is what you learn from them. So not only about normalizing failure, it's also about, you know, like what are the takeaways when you fail. And the other important thing is like when you're trying out something new, there's always a factor of anxiety and depression which goes into it, right? Like for example, even this particular talk which I'm giving, that's like some amount of anxiety which I have, but I need to overcome it and still give the talk. So when you talk about anxiety, people, you know, like try to tend to move away from anxiety and, you know, tend to not fail, think about failures and things like that. So maybe this might be, you know, like a decent trigger for you to overcome them. The other important thing is that when you pass on a failure, you move to the next level, the courage comes next. So I just wanted to, you know, like do that. So failure until that particular incident, right, what was failure to me at that particular point of time was the typical failures which I've had, like failing in exams or failing in tests, failing in gaming. The other thing is like failing in relations, like something breaks up, you know, with your parents or with your mom or wife, husband, spouse, whoever, right? There is something which happens. The other important thing which I want to point out is the failures which happens in your regular day to day work. For example, there might be a performance which has not grown really bad. Or there might be like a small defect which misses your hand and goes to production, right? But still I would consider these failures are your regular day to day failures which probably affects you and your team nearby or your family nearby. It doesn't affect anybody you don't know, right? So now at this particular point of time when the particular incident happened, what was the failure then? The failure then was 400 German users getting affected. So this particular story is about, you know, like what the failure happened, you know, like what we did about it and what was the learnings from it. So that's the entire session about. So the story is very simple, right? I triggered the wrong API in the product. So that is the story. Now this particular project is about a company which deals with automation, deals with exhibitions, there are exhibitions, right? So when you think about exhibitions, the most important thing which you should probably come to mind is the sheer amount of people which come. Be it the people who are exhibiting content, be it the people who are attending to see what is being exhibited. So both the buyers and sellers and everybody involved. The other important thing here is that this is like a mobile app which was being done for, you know, like making this exhibition's work. It was to create context from a buyer to seller. This particular app was to deal with and that the most other important aspect was this is a new rollout which was happening to Germany. So we have been already rolled out to multiple BUs or multiple countries, so to say. This was the first time which we are rolling to, you know, like rolling out to Germany. Now, when the thought comes about Germans, they are usually very strict, they are very on time, you know, this was like a very important rollout for us. And that's like a lot of hella-bella around, you know, like this has to go really well. There shouldn't be a single mistake, nothing should happen and all those things. So the day which happened, tomorrow is the show and we are rolling out, you know, like tonight. Like it was almost around the same time as in India, which is like around, say, 7.30, right? It was almost around the same time. And the important part is that we usually send something called a welcome email and end of show email whenever the show happens. And for this particular view, they don't want it, they want it to do in their own way, which was already happening for all the time. So they just wanted the mobile app for this and not the services around, you know, the welcome and the email. So what happened? The email actually went, right? So what happened? Like I was doing the testing, I was the lead QA of the project, you know, like we had to release at that point of time. And what I did was when we are in a certain system, we tend to forget all those things. Like for example, you, you tend to not lock your door at some point of time because, you know, it has been safe. It has been always working. So what happens is that you tend to not, you know, use your insurances over there. So that's, that's what happened. So I was working in production. I was, you know, like working with the SOG swagger or, you know, the, the place where you trigger APIs to install all those things. And apparently I was trying to test it in the product and I triggered the thing. So that, that is a story. Now what happened? So 400 users were affected, all German users, a possible bad rep even before the usage of the app, right? So app has not been used even now. It's been going to use tomorrow. So a possible bad rep today, right? It's a threat for the adoption because it's like a new BU, you know, they have to adopt a lot of people needs to you, but that's taken bad repetition already. And the other important thing, which is very obvious is angry and sad things. So how was it received by everybody? Like that's like various people involved, right? Which is like definitely myself and definitely there's like a lot of people around me who are involved, right? So I wanted to try, try and travel like 10 seconds before, you know, like go back, you know, like make that change, you know, like not trigger the API. And the important point was that I never have done something like that ever. You have been part of a team where something like this has happened where something has gone really, really bad. And I don't know how to handle it. Like if I would have been in a position where my team member would have done something like this, I don't know how I would have handled it. So this was like my reaction. What was the other reaction? So the PM and PL, they were like, you know, like they wanted to hear what happened. You know, they were like so, you know, empathetic towards the factor that, you know, like something wrong has happened. Let me listen to Jaya, let me understand, you know, what has happened and all those things. The other important thing is like, there are like two important clients in this particular project. The client, one was really angry. He was like really scary at that point of time. He blasted some words and all those things, right? And in my mind, I was like a little bit happy that, you know, he was actually scared also. So that made me a little bit happy at that point of time. The other client was, you know, he was like really calm. He was like thoughtful. He was telling like things like, you know, like things like this will happen, you know, like this is like an important project. But I know you force or stress things like this will happen. Let's see how it will go. And when I went home, like I was like, so, you know, like so sad about what happened. I didn't know what to do. And I had spoken to the client, spoken to my team and everybody and I went when I went home. My wife was like very panicked to see me being panicked, right? But I said what happened? She's like immediately done like things like this will happen. She's like actually indifferent about it. She didn't give any reaction. Like don't worry about it. Nothing's happened. And finally to the operations teams, like for example, people who attend my, who do my reviews, right? So I consider them as operation folks. They actually took it as a success story, like because like something good happened with it. And you know, like we did some mitigations. We ensured that, you know, things like this will never happen. So actually came out as success story. Now, what is the point which I'm trying to make, you know, by seeing all these different behaviors that you say, right? The important point I want to make here is failures are perspective, even though the problem affects everybody in almost the same way, the perspective are like completely different. The other important thing that I want to point out is that you might think it as a big deal, right? Because the problem has occurred to you for the very first time. You don't know how to handle it, but you might think it as a very big deal, but it may not be a big deal. And that's what exactly happened. So when we said to the client, it was also bad after all. We were thinking about the German mentality about, you know, like this being an import rollout and all those things. But when they heard it, they immediately said, okay, things like this will happen. Let's figure out what to do next. So what we started off with doing, right? Like the very next day, we send and sorry, our apology email to all those 400 folks telling them, you know, again, this is not an actual email. Please ignore it. We are working on the system. There are some issues which are happening right now. Like the stall is like everything is fine. Just please ignore this email. The other important thing which was like a little bit scary for me was the client too, who was actually very thoughtful and very empathetical. That person was, you know, on top of me for like two or three weeks after that. And it was like a very difficult situation for me at that point of time. And personally for me, me being a QA for, you know, almost 14 or 15 years, never been done something like this. It was a little bit like, you know, like trashing off my confidence over there. So it took me like two or three more releases to, you know, like get me back to that particular spot where it's like comfortable doing it. The other important thing is that obviously that was some amount of confidence which has gone on me from the clients, but it came back. It took about a month or so. So what would we exactly do about it, right? So the thing is that we created a detailed test strategy and the initial test strategy which we had didn't do a lot with, you know, the apps getting rolled out to multiple views and all those things. So it didn't have a lot of strategy around the post release itself. So we made a lot of changes, a lot of additions from the standpoint we're telling that, you know, like when you have a release, when you're doing a production release, like ensure that you don't almost never do any kind of testing and production at all. The other important thing is that limited access to prod. So the access to prod was almost revoked for like most of us, but still we somehow figured out a way to test it eventually, right? The other important thing was like pairing in prod. So now we ensure that every time we test something in prod, we still avoided a lot interesting in prod, but whenever we did, we ensure that, you know, like we do pairing in prod. The other important thing is that we created a test tenant. So whatever we did, right, this particular project uses like a tenant kind of mechanism for each individual deployments, individual views. So we created a test tenant where we could, you know, like test multiple things. The other important thing is like a lot of documentation around, you know, what is being tested, what are the strategies, what are the various scenarios you will test. It's not a good place to be in creating all those documentation. But still because there's some error at my hand, I had to do it. The other important thing is sticking to all the avoid point. Now, the important aspect, which I want to talk about this, like what was the learnings which I had, which I had, like, you know, like we, as I said, the initial example of what I said, like we are in a place. Just sorry to interrupt five minutes remaining. Yeah, thank you. Okay. Yeah, sure. Thank you. So when when you are in a home, you tend to consider this always a safe place and you know, you might tend to not lock it to some point of time. But eventually, if you know the stars don't align, like something might happen, you have to still give importance on a daily basis. So from that point of view, giving respect to the prod was the most important takeaway for me. Like, you are, you are great, you are awesome. It doesn't matter if you're dealing with the prod, you have to, you know, like respect that. The other important thing is what takeaway was failure is a part of life. Like no escape from that anyone can make mistakes. So if somebody tells you that I haven't made a mistake, probably they're lying. Probably they haven't tried anything new. The other important thing is that this made me understood that, you know, like I, as I said, I didn't know how I would have reacted. So this made me think that, you know, be reassuring to the person, you know, who has made some kind of mistake. And the other thing, which is important, which I did was I immediately said to the client, like, right, like after two minutes after I, you know, like triggered the API. So immediately reporting, I immediately talking about the issue will make a lot of progress. The other important thing is fixing the failure or what's next is much more important than, you know, getting caught up in feeling bad. So you have to feel bad, but you know, like it's also very important about trying to fix. Other point is avoiding of failure in future. The safety nets we build and also all those things is also very important and, you know, getting caught up in feeling bad. And also the other thing is it's also okay to feel bad. It's okay to, you know, like go home and it's also okay to, you know, talk to somebody about it. And the other last important thing is okay to be scared. Everybody feels scared. So that's pretty much what I had and this is what we wanted to share with all of you folks. Thank you. So some of my contacts are here. Yeah. Thank you so much. That's a really insightful session. When you were sharing the learnings, yeah, I could relate to my experience right when we have faced these things. So right now I have, I'm seeing there are no questions from the attendees. Yeah. So what we can do, we can end up the session or if you want to talk more because we have four more minutes left. So we can talk otherwise we'll be having the hangouts table where all the all the attendees can join in. And Jaya as a speaker, he'll be available there so you can talk to talk to him in person virtually though. But yes, maybe you can talk to him. Do I need to stay here or what should I do? Sorry. Do you have anything to... No, no, no. So the... Yeah, I just got one question from the Pali. Thank you the Pali for posting the question. Let me read it out for you. Yeah. So how we have handled this situation with clients one and two who are scary and thoughtful. So the way I put it, so the client one, he was like more worried about what happened like right then. So when he understood that, you know, like the Germans were actually okay, he was actually like a switch turning off. He was like completely back to normal. He didn't even ask about anything actually. So that fixed it. The other person, so the first person was like more like a product person. The other person like more like a technical person, he understood what can go wrong in the future. So from his point of view, he was on top of things for the next two, three weeks. So we had to, or at least like I had to, you know, like tell him like what are the safety nets which I'm doing. So it was like a long process to get him also to understand what we're doing. Sure. Okay. There is another question from Manoj Kumar. Thank you Manoj for posting. The question is, as you said, not many talks about failure. What was the moment that changed in you to share a failure story? So it's interesting. So in ThoughtWorks, we have something called as fail cons and b-shash stories of our failure. And somehow down the line, I always think that, you know, like people don't talk about a lot about failure because it's easier to learn when you learn from somebody else's failure, right? And it actually costs a lot when you do the failure themselves. So that's learning already, but that's a mismatch of, you know, like people not talking about it a lot. So that was the thought process. When I had this and when things went actually well, I thought I should share about this. Sure. Thank you Jaya. I hope that answers your question Manoj. Thank you everyone for joining in again and yes, Jaya will be available in the Hangout Stable. So you can see him there. Thank you so much Jaya and thank you so much everyone for joining in. Thanks.