In the middle of the teaching career I described in my last post I was briefly a software engineer.
I had some misgivings about the way in which my employer ran their business. The main one was that they seemed extremely committed to the “hire from outside” strategy of developing management. And the story of why I left that job was a story which took place after two cycles of hiring an outside manger and placing them in power above all existing internal employees.
Most of the project’s original team had left, and I was the most senior (in terms of time spent working on this project) member of the team despite also being the most junior (in terms of time spent working in this career field) member of the team.
I had a very positive relationship with one of the people who was a part of the first cycle of hiring leadership from outside. He and I were to one another as order and chaos, and the outcome of our collaboration was always something very solid because we debated so fiercely from opposing perspectives that any compromise we reached was “battle-tested”. The other metaphor was that he was the anvil and I was the hammer, and together we produced tempered steel.
But then what happened after the company hired another new manager who was promoted over both of us was that our relationship dynamic produced a negative outcome from which it was never able to recover.
The story was that our new manager who knew nothing about the project’s history or its objectives responded to an instance in which my review of his code included feedback which would have made it more consistent with all existing code in that project but less consistent with his own personal style by advising him to simply “invoke rank” and ignore the advice of a more junior member of his team on the basis that my opinion mattered less than that of a “Senior Software Engineer” for that reason.
The unfortunate truth is that I did regret the way in which I shared this feedback with him - I was at the time friends with an outside consultant who had been hired to restructure the entire organization and who identified me as the most intelligent and capable person within the company and invited me to collaborate on his plans for restructuring. I had received a lot of praise in my very first year in this career and I was becoming too big for my britches, and together we treated my colleague’s code after a pattern seen in a YouTube video.
I was ready to apologize for being rude, and try to reach consensus with my colleague in terms of the linguistic norms of this codebase, but our manager decided the best solution was to prevent us from speaking directly to one another ever again.
It was the kind of decision that would have been impossible to make in a workspace with a water cooler around which to converse. I just wanted to catch his eye and say “I’m sorry I was rude in my code review and I want to either understand your choices I disagree with or persuade you to change them”. But this business was an online-only business and so the solution of “ensure that they never speak again” was actually possible to be implemented.
And what happened after this was that we continued to interact and it was always after a similar fashion. I was kicked off of that team and I remember multiple instances in which I posted on the public Slack channel an announcement about something I was working on and he responded in a hostile or dismissive way. One time he “corrected” a set of instructions by including his own version which would actually cause the installation to fail because of some mistaken assumptions he’d made about the way I had engineered it, and when I reached out to him in a private message asking him to either (1) delete the faulty instructions which were causing other employees to be unable to install my utility or (2) add a message to that thread explaining that his instructions were incorrect, he refused to do it. Which is to say that I think the outcome of the management decision to respond to our conflict which I was ready to apologize for by permanently separating us and acting as though this resolved the conflict left him with lingering feelings of inadequacy resulting from my unnecessarily-harsh criticism which he then sought revenge for by trying to correct my mistakes and prove that he was smarter than me even when they weren’t mistakes at all. Which in fairness may indeed have been what I did to him. I just would have preferred to live in a reality in which my transgressions towards him ended with an apology and a growth in understanding rather than ending with a forced separation coupled with petty revenge.
And it was around this time that the powers that be decided to hire a new outside group of people to work at this company and for them to join my team.
I had at this time become extremely disillusioned with this job. The work I was doing which my former colleague kept responding to in unproductive ways was about improving the overall quality of the experience of engineers at the company. And yet as time wore on I came to conclude that this company was not being managed in a way which would facilitate what I would consider a good-quality experience, and that my job constituted “putting lipstick on a pig”.
I felt deeply uninspired, and yet when this new manager came on, he told me that my job was to identify and execute on tasks without any direction from him and his job was to offer feedback on the outcomes of my efforts. And I told him “I am a good engineer who will write good code for you if you tell him what to do”.
I told him that I would be his “follower” but not his “second among equals”. And I learned that my desire to be given direction by my team leader was incompatible with his leadership style. And I finally quit this job shortly after that.
SOMA
I recently watched a review of a video game called SOMA on Joseph Anderson’s YouTube channel, and in it he pointed out that the story’s AI villain was atypical for games of its era in that the AI did not possess any inner drive but simply interpreted the prompts given to it in ways which were at-times unexpected. This was many years ago, but I think that the AI presented in this video game is the same as the AI which exists in the present world. It is not something which can self-direct, but it is something which will respond to prompts given to it in such a fashion as to create the existence of a job called “prompt engineer” specifically to ensure that the output is what is desired and not misunderstood in the fashion which the video-game AI misunderstands the directives given to it producing a horror game setting.
Fundamentally, I think that a “prompt engineer” is a “manager for non-human employees”, and my manager at this job was someone who did not want to manage his human employees at all. And I think that different humans have different preferences in terms of whether to be given tasks to complete as in the shoes of an “AI” or whether to be given the task of identifying their own tasks to complete.
The framing thus far might suggest that I intend to be critical of the “AI-like” attitude, but the fact is that I would have stayed at that job had my manager responded to my desire to be assigned work rather than expected to identify work needing to be done by saying “sure I’ll add some new tickets to the queue and you can pick up as many as you like”. I was an extremely effective coder at that time and I was happy enough with the flexibility provided by my job that I would have demonstrated to him a high level of job performance had he agreed to treat me in the way that I asked him to treat me.
I think that many people in this world desire to be self-directed, and being honest when I am placed in a situation in which I am genuinely invested in the work I am doing I also like being self-directed. The thing was that this job was just a job to me.
There are also people in this world who function well when given direction. And I am undoubted one of these people. I was an excellent student in all of my years taking classes. My grades only faltered when I experienced conflict with my teachers.
The Job of a Leader
The thing which a leader can offer which a “first among equals” cannot offer is coordinating the distribution of labor. The way that a leader whom followers can follow leads is by leveraging that position to gain an understanding of the whole picture and responding to the existence of situations which could be improved by the application of effort by people other than those in such a situation by making available the existence of this task to those that might successfully complete it. The way in which a follower who is following a leader is able to contribute to the group is by contributing their efforts towards addressing the issues which the leader has identified.
This creates a distribution of labor between those identifying problems and those solving problems, and allows for a specialization between the two roles. Specialization of labor creates efficiency by leveraging the existence of multiple parties in whose absence a “jack of all trades” might be able to achieve similar aims with less efficiency.
The existence of generalists in this context is not a problem. To me, this is the role which a “freelancer” occupies. An “employee” is someone who has signed on to help solve a problem another has identified, and an “employer” is someone who has identified an opportunity to do something useful which they cannot do without help from others.
I was placed in a situation where I was expected to be a freelancer and in which I would have been content to have been an employee if the person above me were content to behave as an employer. I don’t particularly have a problem with people who like to operate as freelancers. Yet I remain critical of the decision to waste my potential simply by refusing to meet me on my own terms.
In the end I’m glad that I left tech before the AI boom, just as I’m glad that I entered tech during Covid. The lesson that my experiences there taught me was not only that I am someone who switches from “freelancer” mode to “employee” mode when I cease believing that I am a part of an organization which is being run in accordance with my own values, but also that I am someone who believes both in the “two freelancers rubbing shoulders” and the “employee helping employer to achieve their goals” models of cooperation.
The closing thought for this blog post is that I have recognized in myself a bias against employees and have endeavored to address it. Sometimes you will have people in your life who want to help you and will derive satisfaction from doing so but don’t know what sort of help it is that you need. The gift of learning to be an “employer” or a “leader” is the ability to allow those who want to help but don’t know how the opportunity to satisfy their directives. That many in our world can’t or won’t learn this mode of behavior represents only the act of being robbed of the potential support which may be gained from one’s collaborators. I can’t say why I didn’t recognize this as a valid behavior to engage in sooner, but I am very glad that I eventually did. The truth is that it is possible in life to have relationships with others which are “collaborating freelancers” and also relationships with other others which are “employer and employee”. It is possible to have relationships which are variably different combinations of these, including in which both parties are the other’s employee. The nature of the benefits enjoyed by experiencing variety is that fetching water for another party who sometimes also fetches water for you is more enjoyable than only ever looking after yourself and expecting others to do the same.

