My boss was the CTO of the company. I came to like him less and less over time. He’s not at all technical. He’s a terrible communicator. He forces me to justify nearly every technical decision I make from every possible angle, which is pretty hilarious, given how little he knows about iOS.
I briefly toyed with the idea of getting myself hired full-time by this company. They have a job listing on their web site for an iOS programmer, and their CEO had stood up in a couple of their video meetings and raved about what a great job I was doing. What ultimately killed it for me was that they’ve got such an insubstantial little boy for a CTO. So I decided to just work until the end of the contract and go on to the next thing. I could see that feature requests were slowing to a trickle, so I was almost done. I figured I had about two more weeks, tops, before I had implemented everything and I could move on to some other job.
All of the CTO’s little passive-aggressive jabs and fragmented, vague communications I could take. It was when he started making a big deal out of me debugging other people’s stupid, buggy apps that we really had a problem.
My task at this company was to write an SDK that other developers could use to display video ads inside their apps. At first, this seemed like the perfect job for me. I am far more careful and thoughtful than most programmers. Writing code for other people to use, where the API matters a lot, is exactly the sort of situation where a fanatic for details such as myself could really shine. And I did. What I didn’t count on was all the idiots I’d have to deal with, as they made their feeble attempts to integrate my code.
I could not believe some of the stupid questions I got. Over and over again, I thought: You’re writing an iOS app. Did it not occur to you that this job was going to involve, you know, programming? The answer, at least from this particular group of guys, was: nope.
The issue really came to a head when we encountered some guy with a memory-smashing bug in his program. He was scribbling all over my SDK code and making it misbehave, but naturally would never own up to this. I told my boss what was happening, but he staunchly failed to believe me. And rather than just saying something straightforward like “I know this is stupid, but how about debugging this for me, just this once,” he’d just send me screen-shots of his fumbling attempts to make it work.
So. I finally snapped at him. I told him that our repeated failures to communicate seemed like a good sign that we shouldn’t be working together, and that I was going to go work on something else.
Well. Based on the story he told to my boss at the contracting company that got me the job, you’d think I’d just threatened to rape his mom.
This is where I started to panic. I couldn’t care less if the boss at the video ad company doesn’t like me. That job was pretty much done anyway. The problem was the possibility that the guy at the contracting company would now consider me a troublemaker, and wouldn’t give me any more work. I found this golden goose that lays eggs full of money, I don’t even have to leave my home office to do the work, and now I’ve killed it. Fuck.
So I started beating the bushes for more work. I still have a few contacts from back when I was trying to scare up contracting jobs by myself. Incredibly, it worked. I emailed a guy in SF I’ve talked to a few times before, and he wrote back: “your timing couldn’t be better.” I have a new iOS contracting job starting tomorrow.
Meanwhile, I mostly managed to fix the situation with the CTO. I sent him an email, apologized for popping off at him, and then explained various things about how I thought our communication had deteriorated to the point where such a thing was likely to happen. Not only did he accept that, he asked me to provide him with some thoughts on how he could improve his communication abilities in the future. So, score? I guess?
I can’t say I exactly feel confident about what I’m doing yet. The guy who used to get me all my contracting jobs hasn’t said one way or another whether he’s decided I am a troublemaker. But the good news is I got myself out of the immediate jam, and lived to fight another day. I don’t have to get a desk job. At least not yet.