So What Makes a Good Business Analyst?

I have read many posts and blogs attempting to answer this question and while many have offered great insights and opinions, they have decidedly omitted describing what I think are key characteristics of a great BA.
When hiring a BA the first thing to ponder is why am I hiring this BA? What BA related role will they play in the organization? However, the top characteristics that I look for are:

1. Customer service skills
I believe that exemplary customer service skills are the most important trait that a candidate can possess. Incorporated into this skill set are the ability to communicate effectively at any level of an organization all the while ensuring that needs are being met. Providing good customer service means that the customer (client) feels that their needs are being met at every step of the process. That includes having their issues and problems understood and well defined prior to the design of the solution. Human nature dictates that we feel the most comfortable when we are certain that we are being heard and understood.
I look for individuals that have successfully held previous positions in the Hospitality Industry. Specifically in a fast food restaurant or food service capacity. The reason? Customers (Clients) can be the most demanding and assertive when they are hungry. Also, the volume of customers is also usually high, therefore the establishments usually has very well defined processes and procedures for the employees to follow. If the candidate was able to successfully ensure that the customer left happy repeatedly, then they usually will also be able to ensure that clients will repeatedly be satisfied. People that are drawn to these types of jobs are people that naturally enjoy satisfying other people's needs.

2. Ability to think strategically
The candidate must be able to think strategically. That is to say, they must be able to envision how the future could  look.  They also must be able to envision the path to be taken to get there. I liken this ability to a good croquet player. The croquet player thinks two three, even four shots in advance. So must the BA, they must think 3 or 4 tasks ahead of where they currently are and how that will affect the outcome of the process. The Senior level BA should be able to provide strategic thinking / planning at the enterprise level, while the Junior BA should be able to plan for a small Service offering (usually a single function / process), provided by a Program Area.

3. Breadth, not necessarily quantity of experience
Finally, I like candidates that have a broad range of experience. This applies to all levels of BA's, including Junior through to Senior. Obviously, a junior may not have any experience at all, but at least they may be able to demonstrate a range of experience through their first jobs (restaurant - retail). I look for BAs that have completed several different projects that have served a varied and diverse client base. I believe that it is better to have some knowledge of several lines of business than to be an expert in only one business area. That is not to say that you cannot be considered an expert in one area and still contain a broad range of experience.

I was once asked by a senior manager type who I thought made a better BA - A Technological Expert or a Business Domain expert? I surprised them with my answer: "I don't think either is any better than the other. It really depends on type of person they are and if the possess exemplary customer services skills. Technology and Business Domain knowledge can be taught, where the desire to satisfy another person's needs is more of an inherent characteristic".
Overall, I consider Customer Service Skills to be the number one attribute I look for, followed by Strategic Thinking and Breadth of Experience. Notice that I do not mention technological skills or knowledge. While I come from a systems development and software design background, I don't think that it is imperative skill set for a BA to possess.
What are your thoughts? let me know.....