For years I’ve known that I sometimes don’t work well with others; this wouldn’t be much of a probably if it was every now and again, but for me it is something I have to work on all the time. I was thinking about this the other day and figured out when this started happening. It was my senior year in college when I had an internship and had to work with a QA person. This QA person had no clue about consumer software and if it didn’t work right for him, it wouldn’t pass. The problem with this is that he was testing from a lab where he had to dial a 9 to get an outside line where our product was targeted at the home user that just had to dial a number (the product setup a dial up networking account). So we kept having to write code to get QA to pass it. This annoyed me to no end because this person just didn’t seem competent to me and actually hindered the product (he wasn’t the only person that hindered it; whoever setup the deal did some poor negotiating). This wasn’t my last time having to write code to get QA to get off my back.
I was OK for awhile as I dealt with people that I thought were competent, but whenever I ran into someone that I didn’t think was competent, things got messy. I won’t say that I’m a genius (OK, maybe I am :-)), but I’m able to think through problems very quickly and when people can’t keep up or don’t come to a conclusion as quickly as I do, I get frustrated and it makes me look like I’m not a team player. In addition, I have a very good memory (knock on wood), so I recall conversations, email messages, web sites I visited, etc. So if someone asks me a question that I know has been answered already and they received a copy of the answer, I’m very quick to jump on him. If I don’t recall the answer or don’t know the answer, I know how to quickly find the answer; something that whoever asked the question should be able to do, in most cases. The Internet is a very powerful tool if you know how to use it.
To make matters worse, I believe that every engineering project should make money (I basically learned this in college; no sense investing resources in something that is dead from the start). This point got me into trouble as well as I can’t recall the number of projects I’ve been on where from the get go, management knew the project wouldn’t make money, but continued to invest time and money into it for years.
This problem has delayed a promotion for me and many times made me want to get up and leave what I’m doing. It’s a good thing I work for myself now, otherwise, I’m sure my boss would have fired me a long time ago! While I don’t think I’ll ever overcome this issue, I’m always working on it. I like working with the best of the best and unfortunately I don’t always have that option.
The nice thing about writing my own software is that I only have one person to blame and that’s me. I try to be as courteous as possible to my customers, but frankly, some people are just too clueless to use my software even if my current products are easy enough for my parents to use (my parents aren’t dumb, but sometimes aren’t the most computer savvy). Some customers really try my patience and in the end, sometimes they are right, but in many cases I feel like a broken record.