Me, I'm a software test engineer - or, rather, a "support engineer." I am the only support engineer in my entire department. Why? Simple: I am not qualified to be a bona fide engineer because I do not have an engineering degree. I have a degree from the University of California in English and German literature - a double major. It's a Bachelor of Arts, not Science, which means that my job title can only ever be Support Engineer, which means in turn that I am hourly staff, not salaried. This also means that my salary can never go above a certain dollar amount set by the State of California - pay me more than that, and I am automatically a salaried employee, not hourly, which means I would then have to be an engineer, which I can't be because of my university degree. Ultimately, this means that my prospects are limited within this company - no matter how good a job I do here, I will never get a promotion (other job titles are verboten due to my lack of proper academic credentials) or a really good raise (because there's a hard ceiling on my wages).
Last week, I interviewed a candidate for a position as an engineer in this department. Here are a few fun facts:
1. They were originally hired into the company as a secretary about a decade ago.
2. Their original hiring manager is now my manager's manager.
3. In the first line of their résumé (in the Skills section), they wrote "Detail and goal oriented." Three lines later, they wrote "Attention to detail."
4. They did not properly capitalize the name of the main product this part of the company works on. (That is, instead of writing GSM, they wrote Gsm (for example).) It's a niggling detail, but I think it's appropriate to require detail oriented candidates whose skills include attention to detail to pay attention to the correct way to write the name of our main product.
5. Their university degree, which was granted recently, is listed as being a "Bachelors [sic] of Science" on their résumé.
6. According to the Web site of the university that granted the degree, the degree program given on the résumé does not exist: there are two similarly named degrees, one of them a master's degree and the other is a business degree with a specialization in that area.
7. During the interview, I asked what I thought were rudimentary questions any software test engineer could answer - for example, I asked them to troubleshoot a Web page that won't load. They were completely unable to answer any technical questions. Now, I know I'm intimidating, but I've never had a candidate stumble so badly.
8. Similarly, they were unable to even speculate as to how (again, for example) a wireless phone system can distinguish between different handsets running on its network. I then asked if they knew how computers can do it on (for example) the office network. Again, no idea. And how does a computer get a network address? No idea. No idea about anything at all.
Today, we had a group meeting to discuss this hire. Long story short, most everyone else thought they'd make a great hire. No, they didn't know anything technical, but they were obviously willing to learn, so why not? Besides, recent graduates couldn't be expected to know anything about the field, could they? And who said anyone with a BS degree learned anything other than C programming? Surely I was wrong to suggest they should know anything about networking? (I checked their online university's Web site, and Network and Telecommunications Concepts is a required course for all of their BS degrees in this field, yes, I think they really should know a thing or two about networking.)
I've been working in test engineering for 14 years this October. I know what a DHCP server is. I know who Cem Kaner is. I have heard of black box testing. I know what an edge case is. I even know what an ESN is. I can spell the name of my degree from UC Berkeley correctly - it's a Bachelor of Arts, not a Bachelors of Arts. I can even spell the name of the product I work on. I know how to pay attention to detail, so much so that I don't list it twice on my résumé. Finally, I have actual job experience in the field. You can find my name (still!) in the Firefox credits. I have business cards with sometimes fancy, sometimes silly job titles on them from AOL, Apple, Claris, FileMaker, Microsoft, and Netscape. If you define me by what I have done and by what I currently do for a living, I am an engineer.
However, if you can't give me a job title that accurately reflects what I do thanks to company policy, please don't ask me to interview someone whose job title will be "engineer" and then expect me to give them a pass just because they're "eager to learn" and have a misspelled degree from an online university in a degree program that doesn't technically appear to exist. Please, just don't. You wouldn't like me when I'm angry. Especially if I have to explain what I mean when I ask them to please describe the UI for placing a phone call on a mobile phone.
A few hours after the meeting, a coworker came by my office and explained that I should never, ever criticize, question, or even comment on any management decision. To keep my job here, it's best to smile and say that everything is "fine!" He suggested that whenever tempted to open my mouth, it's best to try to cross my toes to remind myself not to say anything. It's how he's managed to work here for ten years: never take risks, never criticize, keep your mouth shut, and don't question - ever! - any management decision.
Most of us test engineers become test engineers because we are curious. We like to break things. We know enough about software to recognize when it could work better. We are not satisfied with the status quo. It seems especially outrageous (in this context) that management is behaving this way, but I suppose the problem is ultimately mine. How am I supposed to function in this environment? How do you make a living as a critic for a company that really, really doesn't want to hear any criticism, ever?
I need another job, but I don't feel like looking for another one until next February. This is going to be a very, very frustrating year.