Showing posts with label learning. Show all posts
Showing posts with label learning. Show all posts

Saturday, December 31, 2022

A Year In Review - 2022

 

It's the time of the year to look back and reflect on what happened during the year 2022. It's not just about reflecting back on growth and success but also to look back at the challenges and various different decisions that helped me to grow throughout this year. The common theme for me this year has been - "Getting out of comfort zone".  I have been doing so many things that were absolutely out of my comfort zone throughout this year and it has definitely helped me to grow in many ways and to learn about my ownself.

  • The year started with settling in at thoughtworks and the project that I was working on. It was a complete new experience to work on such a huge product with 12+ cross functional teams. Initially I was totally lost to get to know so many teams and to understand where I need to focus on. Slowly I got into the flow and focused more on my team and the area of the product that our team owned. I was the only tester on the team, I took this as an opportunity to coach, mentor and influence my team all about quality and testing. The goal was to enable the team so I don't become the bottleneck and be the only person to test the stories/features. It was slow and challenging process of months but it was worth it. I was focusing so much more on the whole holistic testing and all types of testing that was required. Running workshops, organising knowledge sharing sessions, pairing with all different roles and creating a community space for observability are just few of the highlights to mention. So much more that I was able to do and deliver on this team.
  • I wanted to have all my focus on the work I was doing on the team so I had to say no to few conference speaking opportunities which was not easy to say no to but had to. I got an opportunity to speak at XConf Europe in July which was a thoughworks organised conference. This was my first in person conferece since the last one being in 2019. Absolutely new experience of presenting the same talk at 3 different locations in 3 days with Day 1 at Stuttgart, Germany, Day 2 - Manchester, London, Day 3 - Madrid. Here's the link to all the recordings - link and a link to my talk - A Peek into observability from tester's lens.

  •  One of the absosolute hightlight of the year was being invited for a keynote, a dream, a goal that was on my list.

  •  While preparing and working on my keynote since I came to know I'll be delivering a keynote in November , I also started working on a new project which was completely backend and api focused. It was yet again absolutely different experience to work on such project. It was hard to leave the previous team and project that I was working on but I guess that's how a consultants life is going to be like. I was sad to leave my old team but at the same time I was happy and excited to work on the new project with all new challenges. 
  • Finally the time came to deliver my first ever keynote AgileTD Potsdam in November, a very very special one in many ways. A huge thank you to José Díaz who believed in me and entire AgileTD team. I talked about influencing skills, how they can help us build the quality within the teams and  how to develop those skills. Infact more than what I mentioned here, a story of my own experiences. Here's the sneak peek of my keynote on these sketchnotes
    • Sketchnote by Lisi Hocke - Link
    • Sketchnote by Eveline Moolenaars - Link
  • Special thanks and mention to Tristan Lombard and Helen Scott who have helped me throughout this journey of keynote. They have constantly supported and motivated me by continuous feedback from the idea generation phase to dry runs. I am forever thankful to both  💖. A huge thanks to Lisa Crispin for helping me through dry runs and feedbacks. Thank you to Lisi Hocke, Samuel Nitsche and Vera Baum for helping me with your valuable feedback and dry runs that helped me in delivering my keynote. Apart from being a keynote speaker, it was so great to meet Toyer, Marie Drake, Emna Aydi and many more for the first time in person. 
  • I also mentored and met so many people through mentoring platforms like  Mentoring Club and ADPList
  • I got an apportunity to be an AWS Community Builder and was also invited by Manoj Kumar to be a LambdaTest Spartan which I'm so looking forward to contribute and learn from this community. I was also invited to be on a panel by Lambda Test which was a great chance to meet few Spartan's - Link to the panel recording
  • Towards the end of year I started giving more importance to my own health by making sure I do some kind of workout atleast twice a week and eat healthy which I'm going to take this forward for the next year too. 

Few things for 2023 

  • I'm hoping to present the same keynote or even a new keynote talk at any other conference this year. 
  • I want to try my hands with running a workshop as my next goal.
  • I also want to write and share consistently which I have not been doing since last 2 years and I really want to get back on this If I can. 
  • I want to work on being more technically confident tester(If there's anyone who would like to pair with me on this or someone who is looking for an accountability partner please reach me out as I would love to have someone). 
  • I want to focus on improving my existing skills and want to learn new skills.

I'm excited for the next year and thanks for reading this post. Wishing you all a very happy new year 2023!

Monday, January 4, 2021

Reflecting on Year 2020

⚠️ Content warning: This blog contains mention of death 

 The year 2020 - A year filled with a lot of uncertainties, learned whole new definition of being adaptable to the changes, surprises which were both good and bad, a year of learning about all new fears. Year 2020 to me has meant all about empathy and humanity. It's been a mixed year which has entirely changed the way I look at life and the impact has been real.

This year had been a real toll in terms of mental health and adapting to the new way of living with a lot of unexpected situations to face. I almost decided not to write anything about reflecting on this year. But I decided to do it. This is my first blog post in the last 6 months. 

The year started with a lot of excitement and goals that I wanted to achieve. A lot of planning and passion went in for what I wanted to achieve and learn while I was on my Testing Tour. Setting out on Testing Tour was not just about learning topics and sharing but it was more of getting out of my comfort zone. I am so glad I took the courage to do it and it proved to be worth it. I met known and new people from across the world which was an amazing experience. 

I got introduced to the whole new topic of Observability or O11y where Abby Bangser and Shelby Spees has helped me in a way that got me hands-on with so much better understanding and clarity about this topic. Shared my learnings from Testing Tour and Observability at multiple conferences

 I lived in fear since I came to know about Covid-19, fear for my family who live with me and who lived back home in India. I have seen Covid effect really closely. Three of my loved ones caught it one after the other. First my Mom, then my Dad and then my brother. In this battle, I lost my Dad who was my inspiration and role model. This hit me so hard that I'm still trying to recover to come out of that loss and pain 😢 which is never going to heal. These were one of the toughest days I have ever faced.

I still wanted to look back and reflect on the good things that happened to me. 

  • Went on Testing Tour and had 15 different sessions on 15 different topics and blogged about each of those sessions. 
  • I learned about a lot more new topics and tried my hands-on with new tools. I learned about Observability, Performance testing using Jmeter, Microsoft Azure and lot more. 
  • I got an opportunity to be part of Observability for testers series organized by Anne-Marie Charrett along with Lisa Crispin and  Abby Bangser which was a great opportunity to learn and explore more about observability.

  • I gained 1076 followers crossing 1000k followers on  Twitter which for me is a huge number. 
  • I learned to listen to my mental health and say no to few of the opportunities. I had to prioritise myself over other things which I struggled initially but gradually learned that it's absolutely ok to stop and take a break to take care of yourself. 
  • When the entire world went remote, initially I was happy that I will get to work from home but gradually it became challenging to work from home with two kids around as they had their virtual school sessions. Throughout this process, I learnt not to feel guilty for not being able to give full attention to both my kids while they are on their virtual school sessions. Learnt to be patient and adapt to each day as it comes. 
  • Our testing community is not just to learn and share about all things testing but it proved to be supportive during my difficult times which I'm so thankful for. 

Reflecting on all these gave me so much happiness, confidence and pleasure 💫😇. It's always good to look back and see what you have been doing or learning on the way. Looking forward for year 2021 with an attitude of being grateful for what I have. Thanks for your time for stopping by and reading my post 🙂

 

Thursday, June 25, 2020

Observability for Testers : #Session 2

Exciting to be starting the second session of learning "Observability for Testers" 😎. We all were super excited as we had our instances on AWS ready from our previous session. Now that we have our instance it was ready for setting up the DIMA app on it which was one of the main goals for this session. 

The DIMA app is a web app which is built on a microservices architecture. This app allows to upload, display, manipulate and delete the images. This stack also includes the monitoring and observability tool like Kibana, Grafana, Prometheus and Honeycomb. Now that we know a little bit about the app let's start to understand what a microservices architecture is before we get deep dive into the DIMA app architecture. 

Microservices:

I had to give a short introduction about the microservices architecture to everyone. I picked up an easier analogy as an example to give an introduction to microservices architecture. This blogpost seemed to be very helpful that explains very well about introducing this term to someone completely new to this terminology. When I started to learn about microservices I read a lot of blogs by Martin Fowler. 

"Microservices architecture is an architectural style that structures an application as a collection of services. That are highly maintainable, testable, independently deployable and loosely coupled."
                                                                                                                                     
The above definition is from microservices.io. Let's consider an example of a university portal where they have different sections for undergraduate study, postgraduate study, International students, Jobs and courses which serves its own purposes. We can consider these different sections as a simple microservice that serves the business logic and functionality. When we think of building a new feature related to courses or jobs or even maybe for International students, it becomes easier to think of each service and build the functionality for the specific service. Of course, this definitely introduces complexity when we look for testing this as a single service and testing the integration of all these services. Because it doesn't matter whether its a monolith or a microservice or any other type of architecture, for the users it's a single application which they want to use it with ease. 
Few of the examples who use microservices are Netflix, Amazon and eBay. 


Image from https://martinfowler.com/articles/microservices.html
Image from https://martinfowler.com/articles/microservices.htmlAdd caption

Now that we went through a basic understanding of microservices, here's how the structure of DIMA app looks like. Here are the images of architecture and infrastructure took from Abby's GitHub repo.

 Architecture


We can see here there are different services including the GUI and the database : 

  • GUI
  • MongoDB
  • Image Orchestrator
  • Image Holder
  • Image Thumbnail
  • Image flip
  • Image Grayscale
  • Image Size
  • Image Rotator



With all these different services, we need to find out where the problem is so we can figure out what the problem is. So having monitoring and observability tools in place will help anyone to debug the issue. 

After having a little exposure to the architecture and stack we followed the instructions to set up the DIMA  app stack on our instances so we can then trigger requests by adding/deleting/manipulating images and then exploring the logs and traces. 

It was really very helpful to have an understanding of the architecture of the app as it will be helpful while we are looking at the traces or logs and we could see the requests from different services. 
Super looking for the next session as we will get to explore more about logging, tracing and metrics.

Monday, June 8, 2020

Observability for Testers : #Session 1

We all joined this session from different time zones and we were 10 people. The main objective of this session was to build an AWS instance that could be used to build the observability stack created by Abby & Co.  This had a DIMA app which has the capability for uploading, deleting or altering the images. This app is built on microservices architecture which also includes other tools which provided logging, tracing and monitoring. Those tools are Kibana, Grafana, Prometheus, Zipkin and Honeycomb. 

Steps we followed : 


  • The next step was to create IAM user. Identity and Access Management(IAM) enables you to manage access to AWS services and resources securely. Using IAM, we can create and manage AWS users and use permissions to allow and deny their access to AWS resources. An IAM user with admin permissions is not the same thing as the AWS account root user. We need to follow 4 steps to create this user. 
Step 1
Step 1

Step 2

Step 3

Step 3 is optional, we could add the tags and use that as an identifier. It helps keep track of how the resources are being used. It also helps to organize, track or even control the access fo the user. And step 4 is to review the information added and then create the user. 

  • Install docker-machine. Docker machines allow us to create Docker hosts on cloud providers like Azure or AWS. I'm using windows so I used the following command by going to Git Bash. If you using Mac then follow this link for the right command -  https://docs.docker.com/machine/install-machine/


Learning as a group was a very collaborative and fun way to learn, share and tackle the challenges along. After having this session I'm already looking forward to the next session to go through the next steps.