Total Pageviews

Thursday, May 16, 2013

Software Testing: Easy to take up, hard to master

This week I started to interview new testers for the company I work for and wonder about what makes a great tester. I have thought this before but now more than ever I realized that very big part of our job is quite easy, any person who has little logical thinking can do much of our tasks. I mean it doesnt take much to try different inputs and etc. Testers often like to think that they are very important but the reality is that testers are often seen as the easiest person to replace. So it got me thinking is it really that easy ? Well who has even little experience in testing should know that it is not so, there are great testers, even amazing testers out there who think of things that very few people can think of. Often it result of talent, hard work and motivation but does that mean there is no clear path to master this proffession for any person ? Well the answer is no, I mean to master any proffession you dont need most the right kind of experience but most of all you need the right kind of personality. The personaliti is what defines us, it defines how we react to different problems and tasks. A smart person can do reasonably well most of the jobs there are out there, but to be amazing in something needs talent and talent is nothing more than the right combination of personality traits. Ofcourse it is important to think how you groom(teach) the right person to be great tester, but in my opinion it is even more important to find the right base(person) for the potential greatness first. We can never teach anyone to be great tester because you need to love the thing you do and to love something it needs to match your personality. Further on even in the same proffession different projects need different kind of personality. I think it is a important realisation to have, we look too much the experience and etc at the moment, ofcourse it is important but a person with a little less experience but with a lot more motivation and talent could run circles around person who is not motivated. So I dont think there is one right path for being a great tester, like there is not for most proffessions. My opinion is we should look more the person and less the CV, both are important but right now the balance is too much to the CV.

Friday, October 28, 2011

In search of motivation

Motivation is a fire from within. If someone else tries to light that fire under you, chances are it will burn very briefly. - Stephen R. Covey
Motivation is the one thing that I have trouble with all the time. It is hard to be efficient and tuned to your task all the time even in normal development circumstances, but right now I am working in 2 projects and both in them the rest of the team works in other town. So my work social life is quite poor and highlight of my day are the morning scrum meetings. But even when you have your team close motivation can be a real issue. 


Human brain works like a rechargeable battery and motivation is like a charge booster. With motivation you can work longer, rest quicker and get better results. The need to achieve your goals will give you the energy that you wont get any other way. Truly motivated people can change the world because it is impossible to keep them from their goals and break their will. In our field it is hard to see how we change the world but every big achievement is only possible because of those smaller contributions. To be able to be motivated you need to love your job because love makes us care, desire and believe, all are the requirements for motivation. To test this think if there have been times when you feel "butterflies in your stomach" when you have just thought of a new way to test something or found a new bug. You don`t have to feel it every day or even every week, but if you feel it from time to time than it means you are able to love it and need to help yourself find ways how you can feel it more often. 


There are some techniques that I have come up with to improve my motivation level. First thing you need to do is find out how your work matters or makes a difference somehow, for example right now my projects are related to big bank systems and that means a lot of bussiness rules and byrocracy. Ofcourse you may think that well your work will improve economy or something like that but that really doesnt work for me, I want to help make world a better place for people who are really in need of it. So I started to researh the bank that I am working with and found out that it is doing a lot of charity work, like donating money to childrens hospital, conducting projects for youths to help them find work and etc. I discovered that this bank had significantly more charitable side than most of its kind and I like to be part of something like that, because me giving them an application that will help them make their work easier and faster means that they can help others faster. Ofcourse all the glory goes to them but, it may sound like a cliche but real heros dont do it for the glory, they do it because they can help. Ofcourse different things work for different people, you just need to find what works for you in your project. I believe every project has something that can motivate.


Second thing is not to waste time on pointless things, luckily in my firm I can say when something I am doing is just wasting my time and their money. Doing something that you know wont matter in any way is a real motivation killer. So when you are doing something first think why you are doing it, you may be doing it just from a habit and there is no real benefit from it. 


Third thing is not to be afraid of challenges, it is easy to let yourself get caught in a routine and do things the way you are used to and not the way that is most effective. Challenges keep us alert. You cant achieve something great without taking risks, doing ordinary things means being ordinary but we all want to be special so keep finding those unique solutions.


And finally don`t be afraid of slacking. I have heard many people worry about not being able to work efficiently all the time but that is totally normal. Youtube, facebook etc are our work tools like any other. We need to de-focus sometimes from out work and let our mind digest everything we have done and when we come back to our work we may see the solution we are looking for or problems we didn't see before. Just make sure if you are working than your mind is focused to your work and when it is break time than really take a break. This kind of system will make you more effective and your work gives you more pleasure.

Tuesday, October 11, 2011

Religion Of James Bach - From Teacher To Priest

One day when I was having a discussion with another tester I noticed that he is trying to test something stubbornly in a quite specific way(using log filtering if that matters) and I asked him why is he trying to use that and doesn`t consider something else. He told me that Bach recommended it. It was a person who has been to Bach class and is very familiar with his teachings and because of that it was very surprising. The whole point of Bach teachings is that you should test something in a way that is most suitable for it and not be constricted by certain ideas and customs.

So I got a threory. Maybe Bach has become so famous that the fame is becoming an obstacle which makes hard to take a message to people in a way that he has meant it. Previously Bach was just another colleague with great ideas and it was easy to be critical to his words. Fame is a wonderful tool - if you have specific points that you want to spread, but Bach is trying to help people to think for themselves and show that professional testing is about creativity. One specific sample about the Bach religion is about the constant ISTQB battering he does that has resulted to many people having a stand that ISQTB is pointless. In reality I have yet not seen any teachings that dont have any good points in them. Important thing is to be open-minded and tolerant to other ideas. Best thing to do is to read, listen and think through all the different ideas you can find. But you should analyze them critically, think through every thought and take out the ideas that you think are worth taking and combine them with other ideas you get and by that you can even create new ideas of your own.

I think people in risk of becoming "followers" rather than independent testers are unexperienced or uncertain testers. By uncertain I mean people who don't believe that they are good testers even if they have great experience. People like that are afraid that their ideas are not good enough and rather walk the path that others have set. They are not bad testers, they have great potential because the fear comes from the need to be good and useful. These people just need guidance and reassurance. Ofcourse there are just people who don't want to be good and just get through, those people usually just have chosen wrong career, but are afraid to change their lives. Unexperienced testers have usually many fears, for example not sure if they have chosen right career, fear of speaking their mind because they feel insecure and generally fear of being wrong. So as you might see, fear is attribute in many cases. You might think "so let's lose the fear", firstly I don't think that is possible and secondly without it we can't be great. Being a good tester means that you constantly have the need to develop your mind and techniques. Fear of letting down our team, employers etc keep us improving ourselves (ofcourse there are also other attributes that drive us, like ambition, ego etc). The trick is to let the fear guide you but not control you. It means that for example when you feel fear of presenting your product to client than maybe it is trying to tell you that you should be more familiar with some functions and you should look into that. Not letting it control you means that you think the problem through and if you don`t see any logical reason for the fear anymore than you let it go. The letting go part needs the most practice.

Best advice that has worked for me is a quote from Steve Jobs: "Remembering that you are going to die is the best way that I know to avoid the trap of thinking you have something to lose. You are already naked, there is no reason not to follow your heart." Dont waste the time you are given living someone elses life, create and let others see YOU with all your ideas and thoughts. Being wrong only helps us be right the next time.

I really hope Bach teachings escape becoming a religion and can be science that helps people develop a mind of an effective professional tester. 


Followers - testers who follow specific techinques, traditions and directions without adding their own ideas into them.

Monday, September 12, 2011

Why I chose testing

When I started looking for work I had 3 options: analyst, programmer and tester. The first year in university I was certain that I would become a programmer or analyst. I like that programmers can solve puzzles, create amazing piece of software using nothing but an idea and keyboard. I like that analysts need to have a view of everything when there is nothing and need to write it down with words in a way that it can be put into code. But with testing I didn`t think much of it, it seemed the easiest of them all, the "click that and see if it works" kind of job.

As I needed to choose a field finally I thought that programmers job might be too complex for me (self-esteem issues i guess) but at the same time when I would be analyst I would miss the coding. Finally I chose testing, hoping, that it represents some kind of middle ground between those two. For my surprise I didn`t find a middle ground, I found a new totally different and exciting field with totally new mindset. For many testing is a start to rise to some other field but I say they never have been a tester, they have been "checkers". By checkers I mean people who just check things, they don`t test, they just take a rule, use common sense to take a check out of it and write it down. Testing is seeing what is not written down and bringing it to the equation. The idea that checking and testing should be seen as separate operations I have taken from James Bach, who can be seen as a very controversial person but he sees what testing really is: a field of challenges, creativity and possibilities.

The best part of testing is that it is so new. Testing is a infant in a field of IT with programming as a father and...(what might be the mother?). Infant is like sponge that absorbs its surroundings and can be taught to be a bully who just is a annoyance to everyone, a sissy who does what it is told and is afraid to evolve and develop its own ideas or into a someone who deserves the respect of everyone.

Astonishingly testing has become a wonder child who is growing up fast and finding its own path while making just its first baby-steps. It is going out on its own to become a field of its own that isn`t considered as part of programming..Yes they are related very closely, like father and son, but as father and son they both have their own future. We testers have amazing opportunity to make sure that our field grows into something beautiful, independent, brave and original. There are no old rules or ties to hold us down, we can create the principles that can be followed all over the world. Yes we can stumble, but so what, as Albert Einstein has said: "Anyone who has never made a mistake has never tried anything new." So lets go out there, be stupid(and try new things), be brave and make sure that our infant grows into something we can be all proud of.

To those who are trying to find a field that suits them I can say that no matter if you choose programming, analysis or testing, you need to know them all, but master only one. They are all fantastic fields, I promise you that, you can do great things in all of them as long you are not afraid to share your ideas and talents.