Companies ask about greatest weaknesses during job interviews because they want to know what challenges applicants have faced and how they overcame those challenges. A company wants to see how resilient a job candidate is and wants to assess his awareness of mistakes he has made.
In some cases, the greatest weakness question is an attempt to trip up a job candidate. However, because the question is so common, interviewees should anticipate it, and plan their answers. They can tailor their answers to showcase particular aspects of their character or aspects that best fit the job. They need to come across as confident and not arrogant.
The greatest weakness answer should never be about character. For example, an interviewee must avoid answers that indicate her greatest weakness is a bad temper or laziness. Better answers talk about areas that do not directly affect the job or the skills needed to do it, and explain how the candidate overcame a previous weakness. Answers about being a perfectionist or working too hard are overdone; job candidates need to focus on true, measurable challenges they have conquered. A personality quiz is a good starting point to show a job candidate some areas of potential weakness she can address.