Frequently Asked Questions about Tejas Software Consulting

Here are some some questions that I've received a number of times, along with my answers.

Contents


Q: What's the best way to contact you?

A: Usually the best way is to send e-mail to faught@tejasconsulting.com. I don't always have easy access to my e-mail when I'm at a client site, so it may take 24 hours or more for me to get back to you. If you need an answer more quickly than that, please call me at +1 817 294 3998. When I am not at my main office, I usually forward this number to my cell phone (the voice mail message will refer to my "mobile office").

If you don't get an answer to your e-mail within a few days, it wouldn't hurt to e-mail a reminder or call me. Unfortunately, I sometimes get behind in the large volume of e-mail that I receive.

Please don't send me a Bcc (blind carbon copy). My mail filter removes most e-mail that doesn't include my mail address in the header.


Q: Do you write software?

A: I do know how to program in several different languages, and I did once have a job as a developer. In a QA role, I often write software to automate various parts of the testing and QA process. This infrastructure software usually does not become a part of the product that ships to customers.

In practice, people in a quality assurance role rarely modify or contribute directly to the source code for a software product. For a non-trivial product, there are enough quality assurance tasks to keep one or more QA people occupied full time. As a tester, I did once write a utility program (the sysinfo utility for SPP-UX) that I needed in the test environment which was also adopted as a supported part of the production system.

To borrow a slogan from BASF - I don't make the software you use, I help make the software you use better. When I find software bugs, I rely on the software developers who are already familiar with the code to fix them. I do advocate, however, that testers do a fair amount of investigation when they find a symptom of a bug, which requires debugging skills similar to those that developers use, and is probably half of the overall effort required to fix a bug.


Q: Do you help deploy and/or customize software packages?

A: This is similar to the previous question, but from more of an Information Technology point of view. I do work with test tools and other tools that assist with the quality assurance process. I can conduct a tool evaluation and help deploy such tools.

In general, I don't directly handle software deployment for the broad range of software the businesses generally use as part of their infrastructure, but I can help you manage the quality of such software and the customizations that you apply to it.


Q: Okay, so what do you do?

A: I work with two related concepts - Quality Assurance and Quality Control. These concepts have been at work in other fields such as manufacturing for many years. They have been adopted for use in the software engineering process.

Quality Control is usually referred to simply as "testing". Once you've started a project to develop or deploy a software system, you need to find out whether it meets the requirements that it is intended to fulfill. One important way to do this is to develop a plan for taking the system through its paces the way the customer would, and execute that plan, looking for bugs in the software. Other testing activities occur before the system is completely finished - the sooner you find a problem, the easier it is to fix. A small part of the testing process is just common sense, but leveraging decades of experience accumulated in shelves full of books about testing, testers can be far more effective and efficient. This can have a dramatic impact on a product's success.

Quality Assurance (QA) is what you get when someone asks "Why did we write that bug into the system in the first place?" Quality Assurance focuses on the overall software development process, looking for ways to prevent defects and find them earlier and more cheaply. An effective Quality Assurance effort can reduce the need for Quality Control, or at least make it more effective. Note that in the software industry, the term Quality Assurance is often used as an umbrella term that includes Quality Control, and in the rest of this document, I'll use QA as a shortcut to refer to both.

Read further down for more details on how I structure projects.


Q: What type of clients do you work with?

A: I work with software development organizations, and also organizations who deal with outsourced software development. "Software development" means creating the software from scratch and maintaining the software for upgrade or bug fix releases. For example, the operating system on your computer, your word processor, the e-commerce web site that you use, and the software in your company's back office were all the result of a software development project.

This is often an organization that sells the software either by itself or as part of a product that includes software. I can also work with IT organizations that are developing and deploying software for internal use within a company.


Q: What type of software do you work with?

A: I don't limit myself to any particular type of software, though I have more experience with some kinds of software than others. Some of the software I've worked with includes land title software, restaurant automation, pharmaceutical devices, operating systems, embedded software, e-commerce web applications, embedded Internet applications, telecommunications software, military software, word processing software, scripting language interpreters, and insurance software.

You need three types of expertise on a test team - expertise with your application domain, general testing knowledge, and technical skills. Ideally, you'll have a whole team of people who are experts in all of these. But often it doesn't work out that way. I can apply testing expertise to any application domain, and if it's a type of software that I'm not intimately familiar with, I can put your team's domain knowledge to work in customizing a process for you. I can also help you recruit a team that has the right mix of skills.


Q: What type of projects do you take on?

A: I can categorize my consulting engagements into three main categories (though some of my most interesting projects defy any kind of categorization :-)
  1. Training. I create and teach courses for software professionals, typically 1 to 3 days long. I do private courses at or near a client's site, and I occasionally conduct public courses where enrollment is open to anyone. See http://tejasconsulting.com/courses/ for more details.
  2. Consulting. I arrange short-term engagements to deal with specific issues related to software quality. I will travel for these engagements as needed.
  3. Contracting. I try to keep one part-time project running where I have a long-term commitment, and where I can see the results of my actions over the course of a project. This helps me to have a better understanding of the things that I recommend during training and consulting engagements. These projects are either local to the Dallas/Fort Worth metroplex or the majority of the work is conducted from my office in Fort Worth, Texas.
I can participate as an individual contributor, team lead, or technical lead as needed, as well serving as a consultant, coach, and trainer.

Q: How many people work for your consulting practice?

A: I (Danny Faught) am the sole employee, and I don't currently have any plans to expand. I do, however, keep in contact with a number of other consultants whom I recommend to clients when additional resources are needed.

If you do consulting, I invite you to submit an entry to the Testing Contractors and Consultants list that I maintain at http://testingfaqs.org/contract.htm. Consider joining my newsletter mailing list using the form at http://tejasconsulting.com/newsletter. Please give me your feedback on the newsletter and my other writings, and share any of your writing with me. For other networking tips, see my article Developing Your Professional Network.

Please do not send me your resume. I rarely have the opportunity to help a client with recruiting, so I don't maintain a resume database.


Q: Will you send business to my test lab?

A: Make sure you're listed on the Testing Contractors and Consultants list mentioned above, so I'll know how to find you if any of my clients should need your services.

Q: Will you evaluate my test tool?

A: If you are a test tool vendor, I can do a competitive analysis and make recommendations for how to position your tool in the marketplace. Or, give me a call and I'd be glad to spend a few minutes discussing your tool with you at no charge.

First, make sure your tool is listed in the Test Tools List - http://testingfaqs.org/.


Q: May I subscribe to your mailing list?

A: You'll have to help me understand which one you're talking about. I maintain the swtest-discuss mailing list, which is for general discussions about software testing, and the metro-sqa list, for networking for software QA folks in the Fort Worth/Dallas area. I also have three announce-only lists, the Tejas Software Consulting Newsletter, a bimonthly publication, Testing FAQ News, for occasional updates on recent changes to testingfaqs.org., and Open Testware Announcements, for people who are trying to decide whether they want to buy a subscription to Open Testware Reviews. All of these are open to the public.

Q: Will you connect with me on LinkedIn?

A: I am eager to connect with people I know on LinkedIn. I don't accept connection invitations from people I don't know well. If you are trying to expand your network, I invite you to contact me at faught@tejasconsulting.com to discuss whether we have any shared interests.

See my article Linking Up on LinkedIn for more information about LinkedIn, and also see Developing Your Professional Network.


Q: Can you give me some pointers on how to become a consultant?

A: See my notes on Being a consultant.
   Courses      About Tejas Software Consulting     My resume     Back to the home page