Monday, December 27, 2010

Marketing is everything - Well almost

When I was doing my Intermediate, I used to watch a singing talent program in a local TV channel. That was a very nice program but these local channels never marketed them beyond a certain extent and they have found some very talented guys through this program. Then came American Idol program (Fox network in USA). This is a huge hit in all the countries. The name of the program itself is soo striking, and even today it continues. These local channels never projected them beyond a certain boundary. Now the national channels had taken a clue from American channels and they started marketing their programs in a similar fashion and you can see the result (Indian Idol). There are many other amazing examples on marketing.

Another interesting fact - When black pearls were first introduced to the market, no one knows what their value was, whether they are worth more than white pearls or less. Most people believed that white pearls were still more valuable. Then these discoverers of black pearls approached a famous jeweler and asked them to market these for them. The jeweler shop guys took these black pearls and placed them next to the more precious gems: rubies, sapphires, etc. The end result - Black pearls are now worth more than white. Imagine if they are placed lower initially, that would have been the rate and we would have got them for 100 or 200 rupees a set.

So how much ever work you do - it's equally important to market, project and place yourself in a nice manner, whatever you did and whatever you accomplished. If you are a lead or a Manager, it is most important for you (and of course your job) to market and elevate your teams and the right persons. There are many people who are extremely talented, give them anything and they will produce wonderful results. Some of them never talk about their results and some talks a bit more. If the person who doesn't market himself goes under a team where the lead doesn't know how to project the team, you will remain there forever waiting to increase your years of experience to get promoted instead of through recognition.

In the testing world, you only hear 10 to 15 names a lot. These guys are extremely talented, no doubt about that but the way they market is also amazing and the way they created a chain to market themselves is much more amazing. They are surely others who are much more talented. I have been to testing conferences where I met amazing testers from different companies. They are not so active in internet world but they are truly amazing and extremely talented but they were heard very less in the internet world than others who are very active in their blogs and tweets.

Thursday, November 11, 2010

Missing my testing days

I absolutely loved testing and truly hated when someone is ahead of me in logging bugs or finds a bug that i missed. I used to enjoy every bit of testing and always try to be ahead of everyone and most part of my career I did succeed in this. Even now, I want to concentrate at least some part of my day in testing but then someone comes and talks about some creatures (Camel, ANT) or talks about some nouns and verbs (SOAP, REST) and i have to go back to Google and try to understand them. When
I think that I know a bit, they say that these are obsolete and will no longer be applicable and a new animal or verb was discovered/invented. I still don't know who made this quote but I love this one - Life was simple when Apple and Black Berry were just fruits and Windows is something that you open for fresh air and Cloud is something that you eagerly look at to see if it gives some rain.

Since we are talking of quotes, there is a Japanese quote which i like and which is related - "Wabi-sabi which means Nothing lasts, nothing is finished and nothing is perfect".

Tuesday, October 5, 2010

Peer pressure

Last month was Ganesh festival and our Apartment committee had charged 1000 rupees this year for the celebration. I was surprised to see that almost everyone contributed the amount. During discussions, most of them thought that the amount was pretty high. I was discussing with one of my friend in the apartment and he immediately said one word - "Peer Pressure". This was the only reason why everyone contributed. They don't want to be left out from the crowd. This is really true, happens everywhere and every time.

Now what kind of Peer pressures do we face in office? There can be many, some can be positive and some negative. I think there are always few things that we do in office because of Peer pressure. I will list some of them and try not to categorize them as Positive or Negative.

1. Staying extra time, working on weekends - There will be few who genuinely stay and work, some stay late because other team members are still there, some because Manager is still there.
2. Trying to log not so useful bugs to catch up with your colleagues.
3. Drink or Smoke because your colleagues or Boss does the same. Please don't do this :).
4. Trying to complete tasks faster to catch up with others without caring about the quality.
5. Logging into Facebook, Twitter, Orkut because everyone exists over there.

An ideal Manager can effectively use Peer pressure technique to get the best out of the team. I have seen some great Managers applying positive peer pressure and you can't escape this trap and you don't realize the trap until you get deep into it.

Monday, September 13, 2010

STeP-IN Conference on Software testing

I have attended STeP-IN conference on Software testing on Sept 3rd in Taj Krishna, Hyderabad (http://www.stepinforum.org/hyderabad_testing_conference/index.html) and it's AMAZING. This is the first time that I have attended a whole day QA seminar and I absolutely loved it. In fact this is the first whole day testing seminar in Hyderabad as far as I know. I have attended Eclipse conference in Hyderabad and Bangalore and I have attended Hysea conferences and I can definitely say that this is a step above from all of them. Here are the details on the sessions.


I reached Taj Krishna by 9.15 AM and when I entered the room, the room was fully packed. It's amazing to see more than 500+ testing engineers at one place.


The inaugural address is by Dr. S.K Chaudhuri, a Scientist and Associate Director from Imarat. It's nice to see him talk about Missiles and Rockets and how they develop and test them. He passionately shared all his experiences showing all the pics of missiles and explaining each part.


Next is the keynote address from Sanjay Karla, CEO of Tech Mahindra. It's a WOW. The way he took examples of rural India and the way he criticized white papers, the way he provoked everyone by mentioning how QA was a few years back is truly true. It makes you laugh and think at the same time. One example – A employee comes and says that he wants to move to development from QA. When asked why, the answer was “I am getting married”. A humorous one but really true a few years back. Things did change a lot from now to then. He talked on distributed applications, SaaS, Cloud and how Indians implemented all of these since centuries.

This was followed by vote of thanks and a tea break. After hearing Sanjay Karla, my expectations about the conference peaked out. It's all very professionally organized and the speakers are all CEO's, Founders and VP's of some of the big companies and I didn't yet find a flaw (as a QA person, it's very easy to find one).


Next session is from Amit Chatterjee who talked on "Testing in an Agile World". He started with the success and failure rate of Projects and how Software is controlling everything and how we are moving to Agile now. I think his main intention of this session was to showcase Visual Studio 2010, this topic was chosen very carefully to achieve this. He talked less on Agile and more on demoing Visual Studio and explaining how VS can help in moving to Agile. At this point, I was just praying that this should not continue for the rest of the day. Well Microsoft is the main sponsor for this Event, so I guess this is expected. A little let down but the session was OK.


Next one is from Sashi Reddy, Founder and Chairman of AppLabs on "Top ten predictions for 2011 and Beyond". He started with Cloud which everyone is talking about now and then on Mobile application testing and some more predictions like Crowd testing, more importance to the testing, TCoE.


The last one before lunch is from Sunil Gupta, VP of Product Quality from Symphony Services on Output based and outcome based testing. It's already 1.30 PM and everyone is hungry by that time and we were sitting there since 4 hours and so the concentration levels were little low.


Lunch was delicious and the helpers there have to ring the bell again and again reminding us that the sessions were starting.


For the next three sessions, there were two parallel tracks. For the first session, Track 1 is by Ashwin Palaparthi on "Automation test case generation for Web services". Since I had attended Ashwin's talks before, I had chosen the other one which is on "Innovative Test Management System" from Sabre Holdings. It’s interesting to see how they have used API’s to integrate all their tools starting from Project management tool (VersionOne) to Bug tracking tools (JIRA), Source control, Automation Tools like QTP, JMeter, Fitness, Selenium, QC etc. They had also talked on Eclipse plug-ins for developers to run the tests. Most of them are similar to what we do in our company except for QC. I wished that we had given this presentation. Finally they had shown the demo on how they created a story in VersionOne and how it’s automatically transferred to other tools. A nice presentation which show cases the amazing things that testing groups has been doing in different companies. Nice to see that there are other companies which does similar things as we are doing.


For the next session, I had chosen Track 1 which is on “Industrial Strength Exploratory testing” by Anutthara, Senior Program Manager from Microsoft. I had read a few Articles on Exploratory testing from James Bach (I think he termed this word) before and I clearly did not see how it’s different from Adhoc testing and this session answered a few questions. In Exploratory testing, we will define the Charters and we will define the time before we start the testing. A Charter is like a scenario (Ex: Validations, Icons & Images, Accessibility i.e. only use keyboard) and the tester will spend a specific amount of time on this charter. The main question everyone had is how do we measure the Exploratory testing. This is the same that I had and the presenter had detailed a few things like recording, using code coverage (Method followed by Microsoft is, look at the code coverage for a particular period and come up with trends to see how we are going and then change the charters based on the trends.) etc but still it’s little unclear, at least to me. A very interesting and lively session. It’s good to see how some engineers thinks of nice name for the different kinds of testing that they do. Ex: Bad neighborhood testing where we will make all other applications consume the CPU and memory and check how our application under test behaves. A simple testing but the name that was given was pretty cool.


Last one before the tea break, this session is on “Cognitive biases in testing” by Srikanth Krishnan, Senior Director from Oracle. He had chosen a very interesting topic and explained on how different parts of brain reacts to different scenarios/questions and how we should not fall for these traps while providing estimates for testing. A very nice real time examples were chosen which made the presentation very attractive. I will just mention one example – You decided to buy a pen which is 600 rupees in a particular shop. You then heard that the same exact pen is sold for 500 rupees in another shop which is a five minute walk from the first shop. What will you do? The majority answered saying that they go to the second shop. Now you are planning to buy a Coat which is 5000 rupees and you heard that another shop which is a five minute walk from the first shop is selling the same coat for 4900 rupees. What will you do? Majority answered saying that they will buy in the first shop and won’t go the second one. It’s the same 100 rupees that we are saving, just the baseline changed which is changing our decisions. So never let some number influence your decision. There are many other amazing examples like this.


During the tea break, Microsoft had played videos of how future is going to be and how software does everything.


The last session of the day is from Kripanand, Founder and Director of See beyond technologies on “Testing in testing times”. His talk was focused on how the industry changed its track during the down time and how we adopted Agile and Exploratory testing methods. He talked very passionately about testing by taking nice examples. He proudly mentioned that he was a developer at the beginning and then moved to testing and is very proud to be in testing.


The conference ended with a Panel discussion on “Emerging trends in Software testing”. This was chaired by Ramesh Loganathan, VP and Product Head of Progress Software and the panelists are from Google, Imaginea and Deloitte. Before starting the discussion, Ramesh talked on how QA was focusing more and more on automation and what areas we can look at. He took a nice example of automating the process of analyzing code coverage results and linking them to the failed tests and narrowing down to the problematic code. A very interesting scenario to try it out. By this time, we crossed the time and so the hotel guys started dismantling the partitions and in the process making lot of sound (seems they want us to get out and so deliberately making loud noises).


Finally a very informative and professional conference. It's interesting to see that everyone is talking about Agile, about Code Coverage and about Center of Excellence groups which we are actively into. I wanted to write a lot more, detail on all examples but it’s hard to put it all here.

Tuesday, September 7, 2010

Joining the pieces

How many testers can do this? I didn't see a lot of them in my career.

To take an example, there are few favorite questions that i always ask while interviewing for QA position (for SE-2 levels and above). One of them goes this way...

Two QA Engineers have installed the same Java based application from the same place on a Windows XP OS. For one of them, the application crashes during start, for the other it works perfectly. How would you go about debugging this problem step by step.

Most people stop after mentioning that they will check the logs or reboot the machine. Even after giving a few minutes time, they couldn't come up with different options to eliminate possibilities. I am not even expecting composite answers but simple ones like:

1. Check the location of install, is it in the same drive or different drive?
2. Are there spaces in the install location?
3. Are the two machines on same service packs level?
4. Are there changes in the OS settings, like firewall options?
5. Is the application picking the right JRE? Check the classpath to make sure no other JRE is affecting this.
6. Check all the processes that are running. Are there any issues with CPU or memory?

There can be numerous other things that we can check depending on our application, just the simple ones, nothing complex. When the application is same and the difference is only with the machines, isn't it simple to correlate and think of machine to machine differences and join the pieces. I think this is one of the major difference between a good testing engineer and others. Every day you will see bugs like this. Debugging and providing the right information will earn you the respect and not the bug count of this type saying "Application crashes".

Monday, August 9, 2010

Exposing your thoughts to external world

Until few months back, every time I search Google for something, I some how used to feel bad about myself. There are lot of people contributing lots of good stuff every minute and all this material helps me in some form or the other every day. I never contributed anything useful in blogs, technical websites or knowledge base until few months back. The excuse I used to give myself is, I am not so expressive especially when I have to write my thoughts and I am too busy. These are true to some extent but not blockers (excuse me for my testing language - I am used to this) to contribute.

Coming to another story... few months back, I want to check how many entries will be listed in Google when I search for my name (Srinivas Kantipudi) . To my surprise, there are quiet a few entries (both in web tab and images tab), some because of the presentation that I did in Eclipse Summit and some because of my contribution in Progress communities. My next thought was, how can I increase this count. I just have to contribute whatever little I know in various places. So I started with a blog (I have been postponing this idea since years) and then searched for some active testing sites and started contributing wherever I can. In few months, I see at least two pages when i type my name in Google. Surprisingly my blog had already started showing up in first page, a very nice feeling when i saw this.

Now I don't have to feel guilty when i Google for information and at the same time I am marketing myself by contributing whatever little I know :).

Monday, July 26, 2010

UI Automation does't mean...

Every time i meet someone who had mostly worked on back end, I had a hard time explaining them about UI Automation tools. All they think of UI Automation tools is that they are just a record and playback tools which checks the fields from UI and nothing else. This is same for a person who had only manual testing experience and never looked at UI Automation tools. Mostly they think these are some fancy tools for marketing purpose within the company. This is really not the case. If that's your experience or opinion, I think you did not actually use the tool properly or never worked on automation. Here are some misconceptions on UI Automation/tools.

UI Automation doesn't mean:

  • Checking Button's and field's status
  • A Record and playback tool
  • Breaks for every simple change in UI
  • Doesn't touch actual functionality
  • Back end still needs Robust tests
  • Starts only after the release or after everything is frozen
  • Involves lot of maintenance
  • Needs a lot of manual intervention
  • There will be inconsistencies in runs

If any of your automation matches any of the above, then it's a pure misuse of the tool. Maybe you are not using the right tool or doesn't have the right plan. It all depends on us and not the tool, tools just does what we ask.

Sunday, June 13, 2010

My Reflections - My Managers

In these 12 years of Journey in Software, I got a chance to work with some really great Managers. Every manager is wonderful... the way I am today is the way my Managers are with me. I am just a reflection of all my Managers (in work), everyone is so wonderful, I did learn a lot from everyone. There are few wonderful words/gestures which I remember every day, which I learned from my Managers from different companies and which I try to implement every day. Here are few of them.

1. One day I was very mad (didn't remember why) and went to my Manager. My Manager was very cool and told me, whatever you do, whether right or wrong, I will support you always. I believe in you, so go ahead and do what you think is right. That's like magic words which i remember every day. It gave me lot of confidence to fight for things that I think are right. If I don't have this kind of support, I would never had been a good tester. Of course the first thing you need to do is to earn this trust and it takes lot of effort to earn one's trust.
2. Support the team when they are in trouble - This was not explicitly told to me but learned it as my Managers implemented this. Be ready to take the beating yourself but don't let anyone touch or point your team if you really believe in the team/person.
3. Think of the question before you act - This is one of the wonderful things that I learned. Always think of question and see how you can beat the other person to death if they ask this question. If you don't have the answer, don't do the task until you find an answer or do it in an alternate way so that you won't get this question.
4. There is a right way to do things and there is also a way that everyone wants to see. I really don't want to explain this. You have to talk to me in person if you want details on this and you shouldn't be my Manager or Manager's Manager to know the answer.
5. Always be a role model to your team, especially if you are a lead or above. Your team tries to learn from you and will follow you in many occasions. Show the team why you are in this position. Work is the first main thing, gain the respect of the team by being on top of the work. Apart from work, there are million other things. Your dedication, punctuality, commitment and so on and so forth, everything counts and matters.
6. Never hire an average guy - One of my Manager always used to say this. Never hire an average guy. It's good to hire great performers. It's OK to hire a poor performer, we can fire them when they don't perform. Never ever hire average performer's, they will kill the company. You can't really fire them because they do their work. They really can't go beyond a specific limit and all the main load goes to the top performers and you over kill the top performers. This way the whole company will sink. So I am OK if you hire a poor performer but never hire an average performer.

Finally I will end with a quote that one of our boss in my current company always says - It has taken a lot of great people to make me look this good.

Monday, May 31, 2010

Journey of a QA Engineer

I have interacted with many QA engineers during my career and I still remember all of the QA groups that I worked with (5 in total) and our discussions on bugs, quality, certifications and QA during the initial days and there after. Here are some differences in the mind set of QA engineer (including mine) during the initial phase of the career and few years after.

Initial stages
Few years after
Passionate about every bug and fights for every bug and wants every
bug to be fixed in the current release
Learns when to fight and thinks of release priorities
Automation is of no use, only helps while switching jobs
Automation does help when done properly, we need automation
QA Certification's will help in career
Certifications only teaches definitions, doesn't help
Process related things are boring, testing is only important for me
Process helps
Test plans are a waste, I can test everything without a test plan in an hour
Test plans are important, helps us in not missing out scenarios
It's cool to be a developer, I want to move to development
Testing is Cool, I will continue in testing
Everything is in my brain, why should i write a document
Documents are important and helps in maintaining the process


So next time, when you hear any of this from your colleagues, it's because they are in a specific phase in their career and it's common in that phase .

Thursday, May 27, 2010

Can we replace Human Brains?

Last year i went to a Hysea conference and in one of the talks there was a mention of how there will not be any testing groups in two years or five years from now on. It was an interesting topic, atleast in the lecture or on the papers.

My mind did not agree to that statement at that time and I thought that might be because of the fact that I love manual testing. Even now, after one year, it's still the same. One year or ten years, I think products can't survive without manual testing. Can we really replace Human brain? Lets take an example... we need to test a login screen with valid user name and password. Can we say that there is no problem if we try with all valid inputs? There can still be hundreds of problems there. You can be extra smart and automate every possible case there and build a super computer to run all your billion tests. Can we still say that there will not be any other problem? Login might work but it might be taking 10 seconds instead of one second or the screen might be flickering a lot while logging in. How many of these can we automate? How many every tests you build, I still think that human brain can not be replaced. There is lot of judgement involved while testing. We question a lot of things. A smart brain can even narrow down future problems while testing. Machines just say Pass or Fail, good brains tries to see if there are other problems irrespective of Pass or Fail.How can we replace a brain with a tool or a machine?

Tuesday, March 2, 2010

Why do people honk on roads?

I travel around 40 kms a day and daily I start my car saying that I shouldn't honk at all but at the least I do it like 4 to 5 times in a day. I then started noticing the situations where my hands starts itching to honk. I mainly do it when the vehicle before me starts moving left or right without noticing who is behind. I then started noticing these vehicles and mostly this happens with vehicles that doesn't use rear view mirrors. So the persons inside these vehicles have no clue on what's going on behind them, they have no clue if they are blocking some one by going in the middle. When they want to shift lanes, they just start moving slowly towards right or left until some one honks and then they stop if they hear the honk. They have no complete control on the road, all they know is what's in front of them.
Now coming to work, are you the one who doesn't use rear view mirrors and so don't know what's going on around. Do you just do your work and doesn't look at anything else? If so aren't you working blindly, same as driving blindly. You don't know how other team members are performing or how you can outperform them. All you do is look straight and follow someone, doing everything in an orthodox manner.
Always be in control of your work. Look at your team mates, look at other groups, look at other companies and see how you can outperform all of them. Apart from your work and from all your research and innovation, also look around and explore new things, see how others are doing and try to beat them in their own court. If someone is highly regarded as good in testing, look at his/her bugs and see how they are doing and try to beat them in their strong fields.

Monday, February 22, 2010

Google or Doctor, who is the greatest?

During my childhood days, we used to get up from our chairs when we see a doctor. Doctors are next to god who knows everything. Some even bend and give the way to anyone who wears a white coat with a stethoscope in their neck. Every Doctor used to have a big name plate with many degrees (MD, DM, FRCS (USA), FICA (London)) next to the name. I used to wonder how a person can do all this in a life time.
Coming to present, few weeks back i had continuous chest pain for few days. Since the heart is involved and since I have only one heart unlike lungs or kidneys, i decided to go to hospital and the best one that is near to me is Yashoda. With my previous google knowledge i know that we have to ask for a Cardiologist if we want the heart to be checked up. So i went to Yashoda and picked the doctor who has highest degrees next to his name (i noted down all his so called degrees next to him). The Doctor asked me to go for 5 different tests and i again felt the chest pain after i saw the bill. I collected all the reports and went to the doctor and he scanned through the reports and said everything is normal and talked about the possibility of chest infection and then wrote some tablets. I took the tablets, went home and then started my google first with the so called degrees.
My first revelation... FICA or FRCS are not qualifications, they are just memberships in some society abroad which are open to anyone, even for a farmer if they pay the nominal fee. A serious thought came to my mind at that point... I should take membership in Country club and Secunderabad club and my name plate will then read "Srinivas Kantipidu B.Tech, CCM, SCM". No one will know that CCM and SCM means Country club member and Secunderabad club member.
I then googled on the fancy tablet name (didn't remember the name) and what i was given was paracetomol with just a fancy name. I had spent 60 rupees for these tablets, its not an unbearable pain, i told the Doctor that i came to him because it involved heart area and the pain is not severe. Why was i prescribed paracetemol for this? There is no other ingredient in the tablet.
Cutting the story there, why did i have it here? Use google wisely, it has every information in the world. Type anything that you think of and you will get at least 1000 results. See how others think of your ideas and try to correlate them. When i am struck, my colleagues are not my first choice for help. Google is my first choice. This way no one knows that i solved this through Google, everyone thinks that i am a genious and did this on my own . A simple example... you are doing your testing and noticed an exception in the log and that doesn't look like it's from your code. What do you do... run to the developer or log a bug ? The first thing that i do is, copy and paste that exception in Google. 99% of the times i get very useful information explaining why this can happen. I make sure that i add it to the bug and of course i don't write it in the bug that i found this in Google. Sounds simple but this will gain you the respect. People know or at least think that you know what you are doing. This way they generally don't argue with you on bugs and even if they argue you have enough Google information with you to attack.
Note: I do respect Doctors and whatever i had written here is just one of my experiences. There are Doctors who are amazing and if they are not there, i won't even think of eating all the junkies and ofcourse that Alcohol.

Thursday, February 11, 2010

Testing is Boring

I hear some people saying that testing is boring, is it really? I think you need to look at the way you do your testing if you are bored after few rounds of testing. You need to be really creative during testing, I think manual testing is more of an Art rather than Science. Art is all about creativity, how can creative tasks be boring? Does this mean that some crowd are really not creative and just follow the document that they wrote or that was given to them and so feel the boredom?
I think I became more creative because of all the testing that I did for all these years. When I test a product, there are hundred of thoughts and ideas that comes into the mind for every screen that I look at. I always loved the Adhoc part of testing (Now more famous as Exploratory testing but I still like to call this as Adhoc testing where we explore a lot of things/ideas). It's so much of fun and never in the last 12 years i felt bored of testing.

Get set go...

I have created this Blog some one month back and was waiting for a perfect topic to start my blog. Finally i gave up, there is nothing like perfect, so I will start with something.

Since three years I have this thought of blogging about my experiences in testing and that always remained secondary till today. After working for twelve years in the field of testing, there were soo many ideas that comes into my mind, some i share with my colleagues and some remains with me. This is one attempt to write them all at one place.