The Manager as Player-Coach © 2024 by Mark McWiggins

Mark McWiggins
6 min readApr 28, 2024

I resisted management for decades, but I recently dawned on me that after decades of being an individual contributor, I’m finally ready.

I had one brief experiment as a manager back in my 30’s but I wasn’t ready for it and I lapsed back into a (mostly) satisifying and (mostly) very lucrative career.

I worked up to three jobs simultaneousely and made nearly $375K total compensation.

But starting in late 2023, my financial life started to take on more of a challenging tone.

For one thing, I was down to just one of my three jobs (making around 200K, though, and still way plenty to live on).

But first on 13 December 2013, due to a series of unfortunate events (first I lost my wallet (it was found later and returned intact). But since I was pretty sure I’d never see it again it was no surprise that I wound up at the driver’s license office at the end of the day.

When I finally got out to the parking lot, I found that (a) some idiot had parked one micrometer from the car I was driving, a Kia EV6. And then (b) I found that I couldn’t shift the car out of park.

If you want to see the details of my experience with Kia, see:

It took me two weeks to finally get out of Kia who had towed the car and where the heck it was. I finally just a couple of days before Christmas got the word that I owed the tow company $2380 or something like that. The Tow Guy said he had to be so careful getting my car out that that’s what it cost. I don’t ever argue with anybody who has my car and won’t give it back, so I paid him.

The next supremely annoying thing was that in late January, I lost the one job I had.

I have been unemployed for 3 months this time … I had been thinking that there was an ongoing labor shortage, but the shortage was repealed for 2 months or so about then.

I have been trying for far more than the 3 jobs per week I’m required to get Washington State Unemployment. So far: nothing.

For one thing, I got a little too cavalier about putting my age on the Internet, and I stopped dying my hair too. This certainly (especially the hair) could have something to do with it.

I mentioned “mostly” enjoyed my individual contributor status; here are a few parts I didn’t enjoy.

I worked for a large retailer with one very good manager; for this story I’ll call him Paul (not his real name) … but there was also a code reviewer who I’ll call Bill, who somehow got the idea that code reviews were for the convenience of the reviewer, not for the joint agreement for coding standards to be followed. I ground my teeth on this subject for at least a couple of weeks until I finally realized the guy thinks he has to look at every line of code because they didn’t have much testing at all, and no automated testing whatsover.

So rather than complain about this, I first created an automated test package using Git hooks:

But! Large Bureaucratic Organization that it was, I couldn’t get permission to use the real production git hook; I got it to work with a personal hook, but I couldn’t get the management to agree to give me access to the hooks.

I get great ideas in the middle of the night often, and I this is one of those:

I was applying for jobs last week and I got all the way through one looking for “Python” and “Remote” and didn’t notice that it was for a management gig until I was done and had sent my resume.

I started to shrug and had my usual thought “I don’t want to do that” … but then I realized I was perfectly positioned for this sort of job (IMHO) …

I have decades of computing experience, with everything from Mainframes to C/C++, Java, Clojure, Ruby, Perl … and finally Python, which I’ve been using every chance I got since 2006.

Also, there is recently a new superset of Python called Mojo that I came across in a recent issue of CACM that’s get this: 35000x(!) faster than Mojo.

Now this won’t quite compete with all C++ (some runs a million times faster), but it could certainly replace a lot of it, especially the bug-prone hard/expensive to maintain kind.

Second, here’s my management philosophy: player-coach and strictly Theory Y.

For those not familiar, Theory X is the “my way or the highway” manager. We’ve all been around these, I presume.

In Theory Y managment tries to give the workers the tools they need to get their work done, then leave them alone (don’t micromanage and don’t nitpick) and support them any way you can to help them do it.

Another thing: I have been using ChatGPT myself for the past year or so, and it’s revolutionary. I have used it myself to help figure out that Google Cloud API calls (which are clunky with a ton of parameters) after I found some (I think) bugs in the Google Cloud UI that this worked around.

Second, even though I have decades as a programmer, ChaGPT is better than I am. I even used it on one job interview!

So I intend to not only allow but encourage programmers working on my team to use this. Some people apparently think this is “cheating”, but no longer being in academia and having us all being on the same team, why the heck not! For those who aren’t familiar with it, ChatGPT produces working but (a) not necessarily highly performant and (b) almost certainly won’t fit your coding standards, assuming you have any. So talented programmers are still in demand and won’t be replaced by this generation of ChatGPT, anyway

Speaking of coding exercises for interviews, they often have no bearing whatsoever on a programmers’ actual work that they’re doing:

Better than this by far is the interview where the guy or gal has you code while watching you … I was asked to code the solution so showing the first N prime numbers. Fortunately I knew the classical solution, the Sieve of Erasthosenes … I was hacking away on it for about 15 minutes and the guy said “that’s enough”, giving me the impression that he was satisfied with my ability. (Though maybe not; I haven’t heard from them again. It’s impossible to really know for most jobs.)

Even better is the take-home exercise. This can separate the wheat from the chaff, it’s much cheaper to execute than the typical “all day interview where you meet the entire team” (assuming you’re not doing that as well after the initial take-home test).

Companies that do this often say they are looking for “cultural fit”

My response to this “hogwash!” Diversity is strength, folks, and those who don’t believe this are going to lose in the marketplace to those of us who do believe it.

This first large bureacratic organization I discussed earlier hired me without an interview. I could hardly believe it.

But after I thought about it, I realized: It’s cheaper or at least not much more expensive than just to hire somebody by audition … if 1 out of 10 fails the audition, that’s still much better than most interviews.

So if given the opportunity (depending on MY management), I would like to try this method of hiring.

Finally, automate everything automatable. Why do the same operation over and over when one could just write a Python (or Mojo) program to automate the problem into submission.

This can be for testing, especially regression testing to automatically figure out who broke the build.

On breaking the build: I have had at least 1 build geek come over fuming at me for breaking his build.

I haven’t found that fuming at anybody over anything is a good way to get them to cooperate. I plan to try some graphic of a colorful funny-looking unicorn (which I can get going with one of the AI tools like Stable Diffusion — a graphic artist I am not) that blows a Kazoo sound at the “offender”.

Well, that’s it. It’s currently 3:43 am (we had a couple of unfortunate eariler this evening too.)

If you like this description of my management ideas and want to hire me … thanks! My number is 425–369–8286.

--

--