When looking for a customer, what do you need to know about them? Understanding who your customer is is an important exercise for a startup that should be drilled into your skull.
But the same thing applies to everyone, not just startups. Whether you’re trying to sell a product, land a client, or even find a job, apply the same principals. Finding the right customers not only increases your chance of selling, but also can lead to happier, more fulfilling work.
Start with your target market. Who is buying what you’re selling? Narrow it down, and choose the niche of that market you want to serve. Identify the qualities you want in a customer, and determine the risks and pains you’re willing to deal with.
For me, I develop testing software, but I also do test consulting, and I’ve also been (and will likely be again) an employee.
Let’s treat the potential employers as potential customers. What do you look like in a customer/employer?
My customer is obviously software development organizations. Without code, there’s nothing to test.
Note, that it doesn’t have to be a company that sells software [e.g. Microsoft]. It could be a company that sells hardware (and writes software to use it) [e.g. Apple]. It could be a company that modifies existing software for clients [e.g. Salesforce]. It could be a company that has nothing to do with software on the surface but has internal software they depend on for daily use [e.g. Ford]. That isn’t doing a good job of narrowing it down though.
It doesn’t matter the company (though it doesn’t hurt to focus on companies who specialize in developing software) because companies don’t hire people. People do. And so I can narrow it down even further — people who make decisions about testing within software development organization.
Where do I find these people? They’re managers. I’ll mostly be working with engineers, but the engineers won’t be writing checks and making hiring decisions. They may be attending conferences, they may be posting on job boards, they may have their own discussion groups — but this post isn’t about finding customers, it’s about identifying them. So I will recognize them when I see them.
So back to who is my customer.
Software organizations. Who do testing. Who want automation. Who use open source tools. Who like agile practices. Who are willing to have distributed teams.
I’m going to make some arbitrary decisions. I don’t have to stick with them, but they’re the sort of “all other things being equal, I’d prefer…” decisions. They’re also stereotyping clues “If he does this, he probably also does…” They help me to narrow my focus, highlight desirable (and undesirable) traits.
I want to work for a small organization. But not too small. And growing quickly. Has to have stability, but not stagnation. About 50 employees seems about right to me. But on track to have 100.
I tried to narrow down the platform choices but didn’t have too much success. I’d prefer Linux, over Windows, but I like C#. I don’t want to get stuck using CodedUI or TFS or Microsoft Test Manager though. I also don’t want a hardcore Java Spring/Hibernate/JSF/whatever shop either. I don’t really want to test PHP/Wordpress/Magento/etc. plugins. I don’t especially to be boxed into the Ruby on Rails corner either. I don’t want to just write Selenium tests, or Cucumber tests. I want to learn and explore.
I don’t want to be stuck just testing the UI. I believe testing should be pushed lower as much as possible. I want to test APIs. I want to write mocks. I want to work on mobile apps and REST services. I want to work in the cloud.
I’m ambivalent about B2C or B2B. I think the trickier stuff is business oriented, but the funner stuff is consumer oriented.