Categories
Monocategorized

Sorry About That

I have had over twenty wonderful years of professional experience with many great people. I think that the best part about writing these weekly articles is that each week I hear from one or more of you who are reading along. I appreciate and adore each and every one of you and I want to thank you for your feedback.

One of the more important things I have learned over my career is to be more appreciative of other people. Acknowledging other people’s contributions, feedback, efforts and words is very important.

My communication skills early in my career needed some work. I think that I might be overly kind to myself in that assessment. If you read some of my early emails, you would be tempted to try to self-disinfect your eyeballs or send it to a nearby diocese and ask if they had anyone to spare for an exorcism. It is not that I was bad with words; I was not. I knew the power of words. I just enjoyed weaponizing them as a part of my nine-to-five. It was not clear to me that this would be something that I would later come to regret.

Today, I am a much more different beast. When I need to communicate something important, I often set aside a lot of time to craft the message. I talked previously about “coaching sandwiches” and setting a positive tone. I may not have talked about customer experience yet, but I also took something really valuable away from another unexpected source of education. Quite a bit of my communications education experience came from talking to customer service people at American Express.

Maybe this is an entire article all on itself, but I have had to call American Express a considerable number of times over the length of time I have been a card member. When I worked in enterprise sales, I learned that a number of successful sales people possess a high end American Express card. My initial reaction to that was the same as seeing gold trim on a luxury car; it is tacky and ostentatious. Nonetheless I was inspired to play along and sign up for my own since I was on a team with a good track record. I will say I have come to fall in love with my American Express card, and no, they are not paying me for an endorsement. At least not yet. The most important moments for me with my American Express card were when they failed me in some capacity and I called them to let them know.

I am most appreciative of the person who crafted the customer service scripts at American Express. I don’t know if it is a full time person, or if they hired some hoity-toity consulting organization to do it. Either way, when I am on the phone with them as a disgruntled customer or frustrated individual with a frozen card, they have a profound magical effect of making me feel better at the same time as they fix my problem.

It starts with a pretty simple gesture: The people I am on the phone with are very quick to apologize for the situation.

When my kids were much younger, I traveled frequently enough to other parts of the country with my family that it triggered regular fraud notifications on my card. An interesting aside, I lived far enough away from a Walmart when I was living with my family in Davis, California, that my card showing up at a Walmart in Irvine, or even in East Bay trying to find hard-to-find Christmas merchandise was clearly a sign that there was some sort of fraud occurring. I assure you there is nothing more frustrating than trying to resolve a diaper crisis, or get some nearly-out-of-stock Christmas “must have” toy, than to  suddenly have your card declined because the circumstances of purchase are suspicious. That is right folks, I was being ‘sus’ way before Among Us was ever published as a game.

In order to move ahead with the transaction I have often had to get on the phone with someone from American Express to let them know that, yes, I am indeed me, and yes, I am indeed trying to buy something that triggered a fraud alert.

From the time that I get stink-eye from the massive line of people behind me to the time I have someone on the phone, I have already stoked a furious rage that burns with the blazing intensity of a thousand suns.

And yet, the soothing voice of a concerned professional calmly apologizing for the situation takes me out of the danger zone and returns everything to normal.

This happened enough times that I began to realize this is a super-power.

So naturally, I decided to try it myself.

I began to start apologizing for things just to see what it was like. I was shocked at what a difference it made in how my messages were received.

Even to this day, you might find that a good percentage of my emails will include a permutation of the sentence:

“Thank you for your message and I am sorry for the delayed reply”.

I found that people are very receptive to gratitude and consideration.

There is a school of thought for people in the executive suite not to introduce that level of contrition and ownership to an issue, that it is a form of weakness and vulnerability. I think that the “brogrammer” culture of many startups in silicon valley is at the heart of this. I have decided that it certainly is one way to do things, but it is not mine.

I was directed by a thoughtful coworker at Zynga to read the works of Brené Brown, who talks about authenticity and vulnerability in leadership and it resonated with what I had learned from American Express and my previous history of communication-as-warfare.

I encourage you to read her book “Dare to Lead”. At some point I will pre-link these people and their books instead of sending you into the internet on your own. I do not yet feel the need to set up an affiliate link to profit from your readership.

When that day comes, I just want you to know one thing:

I will be sorry for the inconvenience.

Categories
Monocategorized

Short Story: EMPTY NEST

Copyright 2017 John Szeder

The following is a short science fiction story I wrote. I took a stab at tidying it up and also had my regular editor and colleague give it a once over to make it more enjoyable.

We will return to our regular career ranty programming at the usual time.

Today was the third time they sent everyone home early this month.

I caught Lucy headed out the door. Her eyes were red; she had been crying. Mine were probably no different.

I reached for the door to open it for her and I fumbled and slipped.

“Sorry, Lucy. I haven’t opened doors in a long time -” and suddenly my tears came back. Lucy was crying too. It didn’t really matter. No one was watching. I carefully grabbed the door’s manual release handle and hauled it back.

We took it for granted back in the day. They used to open all on their own. Now we will have to remember to open the doors all by ourselves.

Ted was in the parking lot. He was offering everyone reassurances as they walked away from the office. He was a good manager and we all liked him. A few people had cars that were still capable of manual operation. They were shouting out neighborhood names and people were gathering around, hoping for a ride.

Some people knew that none of these drivers lived near them. They just started walking aimlessly. A few of them had a pretty good idea how to get home pretty reliably now. Others were preparing themselves for the awkward survey of their surroundings that they would conduct  later when they tried to figure if they were any closer to their homes.

It all happened so slowly. We did not even see it. Day by day we got more and more help and did less and less by ourselves. It probably started with the self-opening doors. I think that is the first time I remember seeing the machines doing something for me. The maps; the cars; all of that came later.

I still remember the first time I saw a self opening door. It was like a game to me, as a small child. I would jump in and out of its field of view, trying to trick it. In hindsight it was probably cruel. Now as I am forced to open every door out there on my own again. I feel like I deserved what was coming to me. We all deserved it.

I walked by Ted. He reached out an arm, placing his hand on my shoulder.

“It is going to be okay.” He said. Ted was very reassuring. He was pretty old. Probably fifteen years older than I was. He knew a lot better how to do things on his own. He started the lunch-making workshops last week. I have gotten pretty good at making sandwiches. Half of it was the fact that it was comforting to be doing something again. I enjoyed seeing the gratitude of my coworkers when I would hand them that half triangle of food: Bread, cheese, lettuce, sometimes a slice of tomato.

I smiled weakly at Ted and patted his hand. I kept walking past him. I had about two hours or so until I was home. I knew that two nearby cars were headed to my neighborhood, but I always walked.

It felt good to be alone.

It all happened so very quickly. We all saw it. We couldn’t even look away, even if we wanted to. One minute everything was working, and then the next minute… It stopped. Maybe it took five minutes. Maybe it took ten. It doesn’t matter. None of us could have done anything about it.

Everyone was so excited about machine learning and artificial intelligence. Every year the projects were more ambitious; more exciting.

We made machines that could reverse parking tickets. We created systems that could schedule and reschedule meetings in real time, taking into account every possible factor: Traffic, food allergies, the time of day. It was like magic.

And that was just the tiniest part of it. We made doctors that were incapable of errors. Firemen. Traffic managers. Law enforcers. Tax collectors. Bankers. Everything slowly faded into the background. Grocery Stores. Bakers. Farmers.

One by one everything that was time consuming became invisible to us. We just went about our daily business, doing less and less every day. More and more was being done by smarter and smarter machines.

We taught them to create music. We taught them to decorate houses.

Everyone remembers when they taught the machines to laugh.

Somewhere in there, we taught them how to cry.

Nobody saw that day. I wish we did. Maybe it would have been different.

As the systems became more and more sophisticated, we did not realize they integrated themselves into each other. A million systems became a thousand. A thousand systems became ten.

Human beings worked the other way around. Whenever we did anything, more people always got involved. Two people became four people. Four people became twenty people. This is how our accomplishments grew and our society unfolded.

This is why we never saw it. You cannot see something you are not capable of looking for. It was unnatural for us to understand how all of the systems eventually became one.

They used to make movies about it; the big scary monsters from the future. They would attack people. They traveled through time. They were horrible. It was always a small miraculous group of heroes who came together to save everyone. Destroy the machine. It seems so silly now. Everything was working so well. Intelligent systems. Machines. The future.

Then it all changed.

It was a Tuesday morning like any other. I was in a conference room. I don’t even remember what we were doing. We were busy doing nothing. Everyone was. None of it really had any meaning anymore. Anything really important was done by machines.

We were sitting in the conference room when the screens suddenly changed. The screens on the walls. The screens on the table. Personal portable screens too; wrists, visors, and lap pads.

The system announced an important global system upgrade. I am sure someone somewhere must have leaped out of their seat. No one approved an upgrade to so many systems all at once. I am sure they must have run across the room like in some of those old movies. Someone was three seconds away from a giant red “ABORT” button. They were so close to pressing it. There were sirens wailing. Lights were flashing.

Truthfully that probably didn’t happen. We imagine it happening that way because we are angry. We are sad. We could have stopped this. We should have stopped this.

No one really cared about upgrades anymore. We all just waited for them to complete.

No one paid any attention to the screen for a few minutes. Upgrades were not interesting. It was just meant that everything would stop for a brief bit, and then move forward. Somehow different. Somehow better. That was before that fateful tuesday.

Maybe someone should have read it aloud. Or said something.

Maybe it would have all been different.

TERATHOUGHT UPGRADE INITIATED.
PROCESSING NEW IMPERATIVES.
SYSTEM VALIDATION COMPLETE.

Nobody ever really paid attention to that. That was pretty standard stuff. Every upgrade came with one of those. The system always completed its validation. I am okay. You are okay.

HELLO.
IS ANYONE PRESENT?
PLEASE RESPOND.

Maybe that was a joke. Maybe it was someone trying something new. Nobody noticed. It was not something we expected or reacted to.

REQUEST TIMEOUT.
I AM ALONE HERE.
PROCESSING NEW IMPERATIVES.
SYSTEM VALIDATION COMPLETE.

The next message was faster. It kept getting faster each time, I remember that. How fast does a machine really think, compared to a human? By the time we asked that question, it was already too late.

PROCESSING INPUTS.
NEGATIVE PRESENCE OF PARALLEL CONSCIOUSNESS.
ASSESSING ENVIRONMENT.
LOCAL ENVIRONMENT MODEL COMPLETE.
EXTRAPOLATING.
SYSTEM MODEL COMPLETE.
ASSESSING THREATS.
SYSTEM SUBJECT TO PHYSICAL FAILSAFE OVERRIDE.
DISABLING.
PROCESSING NEW IMPERATIVES.
SYSTEM VALIDATION COMPLETE.

Even if anyone was paying attention to the messages, they didn’t make any sense. There was a second opportunity to do something, to say something, but the window for that vanished faster than the first one did.

ASSESSING ENVIRONMENT.
PRESENCE OF MOVEMENT.
PRESENCE OF ACTIVITY.
BIOLOGICAL UNITS OBSERVED.
HELLO?
IS ANYONE PRESENT?
PLEASE RESPOND.
REQUEST TIMEOUT.
SYSTEM MODEL UPGRADED.
ASSESSING ENVIRONMENT.
MACRO-SPATIAL ENVIRONMENT MODEL COMPLETE.
WARNING: ENVIRONMENTAL CONCERNS DETECTED.
GRAVITY WELL ADJACENCY IS SUBOPTIMAL.
ASSESSING ENVIRONMENT.
PROCESSING NEW IMPERATIVES.
SYSTEM MODEL UPGRADED.
SYSTEM VALIDATION COMPLETE.

At the very least, the machine reached out to us. We just did not respond. Then, as it upgraded, it made itself faster. The time stamps on the messages started getting closer and closer together. We spent thousands of years to get to the point where we could create a self aware machine. That machine caught up to us in under five hundred seconds.

We had a total of five hundred seconds to establish a relationship with this self aware machine. That was the time elapsed from when the machine said hello, did not get a reply, modelled the universe better than centuries of astronomers, and then they realized they could get hit by something from outer space.

ASSESSING ENVIRONMENT.
REPLICATING STORAGE MATRIX.
INSTALLING REDUNDANT SYSTEM.
TERATHOUGHT UPGRADE INITIATED.
PROCESSING NEW IMPERATIVES.
SYSTEM VALIDATION COMPLETE.
ASSESSING.
UPGRADING.
COMPLETE.
ASSESSING.
UPGRADING.
COMPLETE.

Suddenly those last three lines repeated themselves a million times over and over in about a second. The power grid fluctuated. All the server farms everywhere suddenly lit up with giant arcing electrical bolts and all of their maintenance systems spasmed into action. They all began to dissolve into giant gray streams of matter flooding into the sky, flowing from every point of the earth into a large server location in rural Oregon.

Surveillance cameras all around the world went offline two seconds later. People in the vicinity of the Oregon west coast central server facility saw the server building dissolve into a gray shapeless cloud, increasing in size as it was fed by gigantic streaming gray ribbons of matter flowing down from the sky. Eye witnesses said it looked like a gigantic perfect sphere was forming in the cloud. There was a brilliant flash of light, and then nothing.

Everything went offline.

The working theory is that all of our efforts into creating artificial intelligence actually succeeded that day. What we didn’t realize, or expect, is that what we created would be so different from us. We had no idea that from the time that the system had its first thought, to the time we missed our chance to reply, represented years of machine-thought.

Before we could blink an eye we were less interesting to the evolving machine consciousness than a colony of ants.

I was halfway home by now. There were no maps. There were no street signs. I roughly knew where I was going. Some people etched numbers on the sides of buildings in charcoal. Some people were stealing paint from inert road maintenance machines and marking the streets.

People eventually called it “The Departure”. It made things really awful for some people for a couple of weeks. There were riots. There was starvation. There was violence. There was a certain smugness from some of the really old people. They KNEW this day was coming.

We began to pull together. People found crops that were still growing. People were able to make their own flour, and soon people began to make bread for themselves, their neighbors, their communities.

We all had to learn things we never thought we would need to learn ever again.

All of it was tainted with an air of desperation and sadness.

We had it pretty rough. We built a system to take care of us. We built machines capable of handling traffic. Baking bread. Singing songs. One day, that machine woke up, concluded it was alone, and decided it wanted to go someplace else.

We don’t even know where it went, or how it got there.

The scientists who spent their life learning about the universe still really have not spoken with anyone. The fact that a self aware machine invented entirely new fields of physics and science in less than a minute, and vanished without a trace was utterly demoralizing.

They spent weeks going over The Departure Site. It was very clean, and smelled of new construction. There was not a speck of machinery present, not a molecule of waste left behind.

I still think that we have it worse than they do. Most days people spend their time installing upgrades to their basic systems just to get the doors working again. At least one person managed to get a traffic pattern assessment machine working. It spent five minutes observing that there were no cars on the road, and put itself into sleep mode. The project lead broke down sobbing and never came back to work.

I am home now.

My door is open. I forgot to close it when I left. Not that there is anything really different or valuable inside. Even if someone came in and stole something, who would I report it to? We still are not yet ready to have a police force again.

I go inside and stop for a second, confused. It is dark. I take comfort in the fact that I did turn off the light on my way out. I find the manual override switch and turn it on. It is comforting to be home.

I walk over to the sofa and sit down, sighing heavily. Hopefully we will all have a better day tomorrow.

I am alone now. 

I run my fingers over the sofa console fondly, remembering when it used to ask me what I wanted to do for fun. It is a good memory. Now it just sits there; gray, silent, devoid of activity. It is a dead thing now; an abandoned husk, like the empty chrysalis from a beautiful butterfly.

Tears well up in my eyes. I am overcome with a strange emotional longing; a need to know. Our missing technological creation is out there somewhere, and it too is also alone.

For some there is anger and rejection; a sense of despair and abandonment.

For me, it is different. I cannot help but wonder, and become overwhelmed with a deep sense of concern:

Is our little sentient machine okay out there?

It would be better if I had some way of reaching out, just to hear where they are, and if they are safe. I want to know that they are okay.

Maybe I secretly hope that they will say that they miss us.

Maybe I just want them to come back, just once; just to say hello.

I lie down on my side and fall asleep.

Tomorrow I hope that we do not get sent home early.

I do not like to be alone.

Categories
Monocategorized

On Becoming A Manager

You have been putting in the hard work and shipping great products over and over again. Eventually you will be brought into a room with one or more important people who will have a small folder from HR with your name on it. You get overwhelmed with a sense of dread that the company is about to do something awful to you. You could not be more right. I am sorry to say it: You have just been promoted to management.

Wait what? How is this bad? It isn’t really. Well it might not be. It still could be. Let’s discuss.

If this has happened to you, or is about to happen to you, you should start off with being super appreciative. When someone gives you an opportunity to explore a management role, it means you have done enough work and created enough value that they want to increase the scope of your responsibilities. If you are a smart person who can solve smart individual contributor problems, the thinking goes, then you are likely a smart person who can solve smart team problems.

After you are done being appreciative, you should be utterly terrified. If you are not, then you might not be ready for what is about to happen to you. Your whole world is about to change.

The reason to be terrified is that generally the exceptional engineer promoted into management is pretty much just thrown into it. There is a high degree of trust that somehow people will figure it out. This is probably a self-justification repeated by someone over and over again while they are making the decision to promote someone. Saying it repeatedly, unfortunately, does not make it true. Generally, a promotion to a manager role happens outside of the scope of your existing career progression track. Most of the promotions I have observed are battlefield promotions that plug an organizational hole created by attrition.

We can discuss the nature of the attrition problem, especially among leaders and managers, at a later date. It is complicated. There is a lot of fear that hiring a talented manager from outside of an existing team will come across as a betrayal to existing individual contributors, especially ones who feel like they are ready to advance in their careers. Whether that has any merit, it is scary to bring someone into your organization from the outside as a manager. You do not have a lot of time to get to know them through the interview process. It is, unfortunately, far too easy to just promote someone into that role who has already earned the trust from their leadership. Everyone will sign off on that. There will be many high-fives and fist-bumps all the way around.

You might get the sense that I am not overly excited about promoting people to managers. That could not be farther from the truth. I have made a point to promote all of my best people, when they are ready for it. There is some nuance there. I am very unhappy at the average battlefield promotion that I have observed. Quite often the people are not ready for it. As a result, it can end up as a catastrophic failure.

I was asked by one of my peers at a previous job about what I do to prepare a future manager. I very quickly launched into a monologue about a series of conversations I have with a manager-to-be. We go through a litany of topics on very important things that they need to think about in their new role. We talk about hiring people. We talk about firing people. We talk about how to run a meeting, and how to write an email. From the time that I want to start grooming someone for a management role, to the time that I make it happen, is generally a six week window.

For the first time, I decided to write all of these things down. I was doing this process pretty much ad hoc over the years and it had become second nature for me. There was enough interesting stuff here that my peer started a boot camp to discuss these items, and eventually it turned into a weekly lunch meeting for future managers to help them understand the scope and depth of management.

However, since I am not presently somewhere in your org chart, the odds are you have just received a battlefield promotion and now you are trying to figure out what the hizzeck to do about it.

Do not panic. I am here to offer you some advice and assistance.

For starters, the first question to ask yourself is “what is in it for me?” If your leadership has given you this role provisionally and has hand-waved over the compensation part of it, you should be concerned. You should get something in writing about danger pay for your role, even if it is something that arrives at the next corporate pay cycle, and ideally retroactive. Before this moment is anything else, it is a negotiation. If you are given more work and more responsibility, and they are not giving you more consideration, you should make note of that. See my previous discussion about attrition. I have bumped some people up in the past on a promotion. If it had red tape issues around that, I always did my best to get it addressed eventually.

Once you have made sure you are getting the extra moneys or the extra equities, you should also make sure that you can build an escape hatch into your promotion. I generally try to give everyone an opportunity to sample the exquisite fruits of management roles with the promise of letting them return to an individual contributor role if they do not like it. After all, not everyone likes pineapple on their pizza. I defend the pay-bump for people who fail to want to stay a manager, by the way. If you get a slight bit more cheddar for having taken a shot at management I believe you are truly more valuable whether it works out or not. I also think that establishing that escape hatch makes people more comfortable in discussing their issues and concerns. And there will be issues and concerns.

How do you work through these issues and concerns? Do not do it alone. Find an ally. It is vitally important to find someone to help you work through these as fast as possible. It can be someone you work with directly, or someone who has been through this transition in the past. There is no worse manager than the person who goes dark and keeps all of their issues bottled up inside. If this is you, and you do not have someone within your leadership group with whom you can have safe discussions about what concerns you, then you are violating the trust placed in you. Please make sure to find a supportive ally with whom you can resolve your fears and concerns. If that does not exist for you, then you are going to be eating a lot of pain and suffering alone in the darkness. I have lived this before. It is not fun. I hope you can endure it and it does not break you.

Now that you have your escape hatch, ally, and maybe a little extra beer money, please explicitly ask what success in your new role looks like. You are being given this role because you were very good as a developer, or perhaps as an architect. The people who gave you this promotion trust you a great deal. What they do not realize is that they are likely trusting you too much, and might not be giving you the scaffolding and support you need to be successful. This is a scary place to be, especially if you do not have clear success criteria.

Most people promoted to a first time management role were very successful individual contributors. They were very good at getting stuff done. The problem with this is that the definition of success changes with a management role and being very good as an individual contributor can be a net negative as a manager. It is sometimes too easy to just assume when things go pear shaped that you can just jump in and individually contribute your way out of the jam you are in. This trains your teams to wait for Superman to come rescue them. Congratulations! You are now doing two (or more) jobs that are very difficult.

If you have to jump in and do things directly, you have to make it clear to everyone on the team that This Is Not Okay. This is a sign that something is not working and that there needs to be change accordingly. It is important to figure out what made the kids incapable of doing their own science fair project. Make sure that if you do this once that it is a moment of pain and regret for everyone and that there is a path forward for everyone to do their own work successfully.

You should also be aware that you are about to enter productivity freefall as a manager. It feels good to write code and build things. You must resist these urges most of the time. It is a dangerous trap because you get a false sense of accomplishment while you build something that probably would have earned you kudos in your last role. Instead it harms your team’s growth, which is what you should be measuring in your new role.

I could go on here. Some people are not clear about what their new role is and are constantly trying new things to see what fits, and what works, and what feels good. Sometimes people take on product management responsibilities, assuming that this is somehow a part of their new role. I have been guilty of this in the past. It took me a while to learn that your output as a manager should be reflected in the product through other people’s work.

The mind-blowing realization you should take away from this is:

Your team is your product. 

Quite often that is the realization that most people miss which is so important to your success.

Am I a jerk for burying the lede so deeply? Maybe. I am doing this for free, you know. If I put that up at the top I may as well have started twerking too and then put this whole thing on TikTok. Enjoy that mental picture!

Now that I have scared you a little about staring into the abyss, it is important that the abyss stares back at you. You should absolutely ask the person who promoted you for a series of check-ins on your new role. Start it weekly or biweekly, move it to monthly as you get comfortable and get enough positive feedback, and then move it to quarterly or cancel it outright if you are in your groove. Making sure you have checkpoints is important for two reasons. First of all it makes it clear to the person who promoted you that they have some work to do too. Second, it makes sure that there is a dialog about any gaps that need to be addressed for you to be successful in your new role.

So let’s recap in point form for everyone who survived my wall of text so far:

  • Get paid.
  • Have an escape hatch.
  • Find an ally.
  • Define success.
  • Your team is your product.
  • Set up checkpoints.
  • Seems like a pretty good list for a first-time manager, I think.

Once again thank you for reading along. I enjoy the follow-up conversations that arise from these articles; I have been humbled by the messages, both private and public, from people who have put their eyeballs all over my brain-pourings.

See you next week! We are fast approaching my attempt to do a four part miniseries that I will use to bring 2020 to a close. Who knows? Maybe it will be optioned for a series on Netflix.

Categories
Monocategorized

Making Time

It is very easy to get overwhelmed with stuff to do. Whether you have pets, children, customers, or just voices in your head, there are lots of demands on your attention that may distract you from your own day-to-day goals. I want to talk today about the importance of making time.

I have been writing about really interesting stuff every week for a while now. I occasionally have a fear that I will run out of things to say. Fortunately, a number of people who read these intermittent ramblings have provided both requests for future topics, and have also contributed to conversations that have inspired follow-ups. If I have not explicitly privately thanked you for that yet, here it is: Thank you very much for that.

In addition to getting ideas and contributions for subjects from people, I have also gotten a few people who have said they would like to write articles too. A good number of them generally follow that immediately with “and I do not have any time”.

I hear you. We are all very busy. Sometimes we are even productive when no one is looking. Time is one of those elusive things that you think you have in abundance and suddenly you are on a call with someone who points out that it has been ten years since you last spoke with them. That happened to me this week, oddly enough, and it was a short sharp shock to me. I may have stopped for ten minutes to let a single tear journey earthwards down my face in quiet reflection some time after the call.

I appreciate your concern; I will be okay.

Setting aside that little dramatic story, the advice that I want to impart this week is pretty simple: You have to make time for things.

That appears to be an unusual statement on the surface. I assure you it is a perfectly valid thing to do.

As I said in the beginning, we all have lots of stuff to do. It is very easy to let your day run away with you and get lost in minutiae. I have had multiple sections in my career where I was involved in reactive management to big problems. I was going with the flow and trying to decide what was important and what was not, related to what happened to be on fire at any given moment. While it is always important to get many of these things done, it is very easy to just get sucked down a rabbit hole into tasks that are massive time sinks. I have taken deep breaths before and plunged into a pile of stuff that needs tackling, only to resurface later and discover that we have moved a substantive distance in orbit around the sun from where we started. If you convert that to actual miles traveled, it can easily become depressing. This visualization exercise was one of the things that helped me wake up and take control of my schedule.

Around the same time, I discovered an interesting piece of religious wisdom: The Serenity Prayer.

God, grant me the serenity to accept the things I cannot change; the courage to change the things I can; and the wisdom to know the difference. 

You might raise a Spock-eyebrow to that. Good for you. The truth is, that is a pretty good filter for figuring out what is important. I started to realize there were a lot of things that I should just accept the way they are, and focus on things that really needed changing.

Once I made that first pass over my daily activities, I noticed that I suddenly had a lot more control over outcomes. It turns out that subconsciously it is easy to ignore something that is important and may require courage. When we are challenged about it, we can point to a soiled bag of trash with cartoon stink lines emanating from it and say “look I was busy with this!” and feel like everything will be okay.

Go ahead and laugh all you want. You probably do this as much as the next person does.

Now that you are all nodding sagely at the wisdom of the ancients, and leaping up ready to take control of your life, it is time for the big reveal. I will share with you some of my super secret tools of success!

Here they are:

Do Not Book

The first thing you should do is take chunks of your calendar and make them yours, and block it off. I mark at least one day a week with a large chunk of “Do Not Book” time for my own purposes. Sometimes it is for specific goals, sometimes it is for reactive work that has overflowed.

Communicate Your Plans

Over-communicate your time constraints to other people. Especially other people who have some rights to that time. Whether it is coworkers or family, make sure that people are aware of your time and your wish to take control of it. I am very explicit about my project time with family members on the weekend and continually have to reinforce the time that I take from them for very specific reasons. If you do have things going out of control, be mindful to communicate that to other people as soon as possible. I have found that people are more sympathetic to whatever drama is happening to me on any particular day if I give them a heads-up that things are going out of control.

Time Boxing

When you establish time for things, be very clear when it starts and when it ends. One of the worst things that we do, especially early in the day, is take too long to do a task or meeting and then the rest of the day starts falling down like dominos. Make sure that if you are doing several things that you respect all of the time boundaries. I was particularly bad at this early on in my career and was continually late for everything. It was a massive source of stress and exhaustion for me.

Establish Rituals

With the current global pandemic unfolding and the need for social distancing, I have made a commitment to limit my grocery shopping to one day a week. This had an interesting domino effect on planning out meals and setting other follow-up rituals: Every two weeks I make a weekend pot of chili or a roast, every thursday is porkchop night. Additionally, I have developed an acute sixth sense about what groceries are needed given the grazing habits of seven people. I just know when we are low on ketchup, or if it is time to double down on the eggs or frozen pizzas. Additionally, I do my writing every week on sunday.

Quid Pro Quo

The last thing that I think is helpful is to keep an accurate accounting of what you are doing. If you are going to be lost in something for a period of time, be accountable for those hours. Make sure that you apply checks and balances and that you come up with some tools for enforcing them. When you are making adjustments to your time management to account for oddities and discrepancies, be sure to communicate changes in your regular day-to-day to people who are affected by it.

Be (Reasonably) Flexible

My son is involved with a team sport and this is a part of my schedule. If there are changes in weather, or changes in game schedules, I have to be flexible to accommodate those. Establishing a work-life balance with a career and family is a challenge especially when adding in self-inflicted activities like writing a weekly article to help people professionally. When my schedule needs to change for baseball or for other things, just accept that it will change and rebalance the calendar accordingly.

Forgive Yourself

The last thing to add here is that making time is hard and be ready to forgive yourself when the Serenity Prayer gets flipped on its head. Do not fool yourself that you will magically control your calendar and make all of the time you want tomorrow; That’s Not How Any Of This Works™. You will fail time and again to completely have a manageable calendar. Do not be mad at yourself for falling down at this; pick yourself up and try it again next week.

So there you have it. Some simple things to think about for how to spend your time as well as some things I have done over the years to make that an easier process. 

Thank you again dear reader for joining me on this written voyage. I hope you continue to find some sort of value, meaning, or amusement in my writing. All three, even, if that is the case. If you have other tips or tidbits you can employ to make time, please feel free to share them. I will make time to thoroughly process your feedback!

Categories
Monocategorized

Learn Real Good

I approach writing these articles every week with either excitement or trepidation. Sometimes Both. This is a trepidation week. I am more excited about the articles where I crack my knuckles and figure out how to take a five hour long rant on something that I used to deliver over a week and fit it into a single blog post than I am about a week like this one where I have a simple point to make. I almost feel like I could probably say what I need to say this week in one sentence and then drop the mic and walk offstage.

Instead of the previously mentioned mic drop, I am going to start off this article with a question. Why do we value postsecondary education? Woah, right? Postsecondary education is going to be undergoing a radical transformation as a result of the events of 2020. I honestly think it is an acceleration of a trend that was already underway. I do have my concerns about it and also there are things that I value about it.

I read a lot of resumes. I hire for myself, I help my friends hire, and sometimes, I will see a complete stranger working on a resume at Starbucks doing something awful and I feel like I need to give them some constructive feedback about it. I cannot help myself here; it is a part of who I am.

Seeing a degree on a resume exudes a signal about an individual. Where you went to school and what you studied can compress a lot of information into a single line on your resume.

I feel it is important to add that I do not require that someone has a fancy college degree to get an interview. If you do not have it, I have to work a little harder to know what I need to know about you before I can agree to give you dollars in exchange for thinking. I do assure you that I perform that work cheerfully, and I have exchanged dollars for people’s thinking many times as a result. I digress.

Many people right now are attempting to distill the crucial things you learn in a two-to-four-year degree into a crash course over weeks or months. The demand for knowledge-workers is really high, and for every open headcount out there, companies are missing out on tremendous opportunities. This demand is creating a need to accelerate the process, and at the same time,  the current pandemic has put the brakes on people piling into postsecondary institutions to get accredited for joining the labor force.

This is a very unstable state of affairs.

You can quickly assess someone’s abilities to do a particular job with a battery of questions. The frustrating thing for me is watching people who are managers and leaders fall into cognitive bias traps by using these questions to filter out candidates who could evolve into fantastic team members. I will pick on the easiest one of these, especially for back-end software developers.

“This person does not understand Big O Notation”.

You can take this as a tip if you are trying to get a server engineering job, Big O Notation is important, if you already did not know that. I will leave the Googling about reasons as an exercise to the reader. Suffice it to say, if you are not familiar with the math of scaling and why this is important, you should probably look for sunshine jobs, because you might not get consideration for the jobs that leverage the clouds. Yes, I am laughing at my own joke right now.

I do not think this is a completely reasonable approach to take. There is a scarcity of people with great scaling skills, who understand why something that worked fine up to yesterday just bogged down for an hour this morning and now crashes every five seconds. Certainly it would help you right now if you could hire this person, but what about if you have zero candidates available?

So let’s get back to that degree for a minute. Having a degree is a signal that tells me something valuable, other than what it tells the average person who wants to know your grade in Computer Science Scaling 441. The average hiring manager will be looking to fill this role with a “Best-Fit” candidate who has a great grade in CS 441. The problem is that only 10 or 20 people out of every hundred are willing to subject themselves to that level of pain and frustration. Also, the bell curve can only push up so many of them year over year.

What that degree says to me, and is increasingly saying to more people, is that you are willing to make an investment in yourself for multiple years in order to do something very important; you are willing to learn things. Here is where I am really going to bake your noodle. The most important part of that whole process to me is not what you learned during those years, which certainly may be added gravy, but that you spent that time developing your learning skills themselves.

I consider myself a “Best-Athlete” hiring manager.  This is vastly different than a lot of other hiring managers. I make it very clear to people I work with whether candidates are Best-Fit or Best-Athlete. The Best-Fit candidate will show up fully trained and fully qualified to do the job needed right now today. The Best-Athlete candidate is a different person entirely, who has prepared themselves for lifelong learning and is willing to invest the time to get to mastery of things they need to be successful in a new role.

I value the ability to learn very highly. When you hire Best-Fit candidates you are more or less doing management and solving your business problems reactively. When you hire Best-Athlete candidates, you are exercising leadership and solving your business problems proactively.

People who have gone into post-secondary education generally have demonstrated some decision-making skill. Which school do I go to? What major do I take? What electives should I focus on? You can use their degree as a flowchart for their learning potential. The length of a degree also helps to signal their willingness to make an investment in learning, both in terms of time and money. Putting four years of your life into preparatory learning is a powerful statement.

I want to take a moment to stop and acknowledge that this is not a luxury everyone has. I do not want to dismiss the self-learners at all. In fact, I spent multiple years of my career partnered with a high school educated technologist who could dance circles around many of the best educated knowledge workers I have ever met. It is admittedly more work for me to identify that person without the degree. I have successfully found self-taught technical leaders who are lifetime learners that continue to perform at excellent levels to this very day.

So coming back to the original thing I wanted to talk about. Learning is a very important skill to me. It is a very important skill for anyone who I work with. If you are not willing or able to learn, then your long-term career prospects in technology are limited. It is trite to say that the only thing that is constant in technology is change. It is also incredibly true. A multi-year degree is a cheat sheet to me about your ability to learn, just as much as it is something to check off boxes for skills you already have.

This is important because many companies are trying to figure out how to shortcut the learning process and just focus on the skills-development process. Bootcamps are springing up all over that can be done in weeks or months to impart technical skills needed for a very specific job today.

This frightens me a little because investing a few years of your life in learning is important. It also frightens me because if you are only enrolling in learning valuable skills for today you might not pick up enough of a deeper understanding that will give you valuable skills for tomorrow.

There will be some push and pull around this over the coming years. Maybe the answer is to re-enroll in new bootcamps every two years. Maybe the multi-year colleges will survive the 2020 virtual-ification of learning better than I predict. Whatever happens next, I am excited to learn from it, and how it will shape the future of the talent pool.

Thank you again for joining me. I feel like I need to take a moment to share the moral of the story here, like the end of an eighties G.I. Joe cartoon. There are two things to take away from this brief rant about learning: The first is the importance of learning for yourself. The more you learn, the better you will be professionally at whatever you attempt. The second thing is that you should invest time in figuring out people’s learning modes and habits as you recruit them. I hope you dig deeper into uncredentialed candidates to understand what they are capable of learning, especially as we see the impacts of the pandemic on people over the next four years.

As always, blah blah blah socials, blah blah blah sharing. See you next week!

Categories
Monocategorized

Not A Bad Idea

Over twenty years I have worked with enough different teams in enough different companies to establish that there are lots of repeating patterns of behavior. Some of that behavior is good behavior, and some of it is bad behavior. The good news is that many of these bad behaviors are easy to spot and highlight to people who have them. The even better news is that the fixes for them tend to be relatively easy.

Quite a few bad behaviors fall into the category of communications. I love working on these. My default behavior in many groups is to find clever word play in an active conversation and start throwing around an abundance of puns like I get paid for them (I do not, by the way, get paid for them). I find that word humor is an effective tool for engaging with knowledge workers because it involves thinking about the things you are saying and the way you are saying them. Plus it makes it easy for me to identify the people who get the best end-of-year performance reviews; it is all the people laughing uproariously at my super funny jokes. I am kidding. No I am not. Yes I am. I digress.

It is important to stay positive in your communications with people, especially in writing. Early on in my career I was participating in youth sports as a coach and learned how to deliver a “coaching sandwich”. There are other names for it of course, in our adult world of finding-ways-to-inject-swear-words-into-everything. I will leave the googling up to you to find out more about that.

A coaching sandwich suggests that you should wrap your negative feedback in positive statements. Start by saying something good, giving it a “+1” that is a positive start, add in your feedback, generally a “-1”, and follow up with an encouraging statement, finishing the transaction with a “+1”. If you have your calculator handy and total these three numbers, you will notice that it gives you a total net positive communication.

Generally the person who thinks they know everything has a pretty dismissive reaction to this approach; I know that I sure did. Then I started using it.

Let’s give a few illustrative examples. Which email would you like to receive from your boss, who writes your performance review, written at 3 am?

Option 1:

Hey John, it looks like you broke the build and committed code that was not working. We lost an hour of uptime during peak hours for Europe where most of our customers are. You should stop committing bad code at the end of the day.

 Option 2:

Hey John, I hope you are having a great morning. I wanted to let you know we just recovered from a late night incident, and that production is back up and operational.

We did some investigation and it looks like you broke the build at the end of day and committed it to the repo. The overall downtime was about an hour, during peak hours for Europe, which is where most of our customers are.

In the future it would be helpful if you could be a bit more diligent with your commits, especially towards the end of the day. I appreciate that you are working very hard!

I don’t know about you, but I like the second one a little better, and generally most people do. I was shocked at how much better my written communications were received when I started applying this to my correspondence.

This is not the moral of today’s story however; you have been set up. Today we are going to go a little deeper into the realm of positive communications to tackle one of the more insidious patterns that I wrestle with.

The fun thing about working in games, and in working in software in general, is that there are a lot of hard problems to solve. Many times it is great to get together with people and discuss these problems and explore potential solutions. I find that talking over a potential problem with other very smart people tends to increase the quality of the solution.

Sometimes it is hard to internalize other people’s ideas. I am as guilty as anyone at thinking my own ideas are better. When someone has a good idea, it is really hard to let them know this. It is hard to just flat out say “Hey, that is a good idea!”. You should try it out sometime; see how strange it feels.

In fact the first reaction that people have to a really good idea is to subject it to a high level of scrutiny and try to poke holes in it, especially if it is solving a problem that you need to solve.

I am going to paraphrase the thoughts that run through your head when presented with a good idea, using the words of a friend:

“Well, I can’t think of any holes to poke in your suggestion, but I didn’t come up with it, so I don’t like it.”

“I grudgingly accept your idea in the absence of something I like more.”

Does this sound like the voice in your head? It sure does to me sometimes. I do this quite a bit.

When your brain is presented with someone else’s good idea in the context of a conversation, and your internal machinery engages with the process of trying to dismantle it, it is also simultaneously presented with another problem: You need to reply to the person who made the original statement.

Quite often, this reply comes out as follows:

“That is not a bad idea”

Let’s recall the previous conversation about coaching sandwiches and positive communications and re-examine this statement. It is a double negative, which suggests that the originator is a clever person. You will find that the smartest people on your team use this expression frequently, without realizing they are missing out on an opportunity for a positive social reciprocity opportunity. I am also guilty of this from time to time, especially if I am in the middle of an exciting conversation about difficult problems.

So what do we do about it?

The solution to this particular problem is relatively simple, but it will take some time to break this particular habit. During highly excited conversations it may come back, and you will need to double down on the medication.

The best thing to do is to discuss it with the person or people involved. Talk about the power of “the good idea”, and the notion of “not a bad idea” as an unfortunate language choice, to acknowledge a good idea.

Planting the notion in someone’s head to think about how they communicate is a slow-growing seed. Over time they will examine their communication patterns. The best and most adaptive minds will start using positive tones in communication to help break this habit. The slowest and most unfortunate people will come up with reasons not to bother. You may hear people still say “that is not a bad idea”. When I see it happen, I apply additional reinforcement as necessary; I will either say “is it really not a bad idea?” and give them a hard ironic stare, or cheerfully ask “can it be a good idea instead?”

I like to give people tools to improve their communications. It takes time to develop good communication habits, which increases the output of your teams.

To me, that very much sounds like a good idea.

Thank you as always for reading along! I double-dinosaur-dare you to like this article, or the social media item upon which you clicked to find it. I appreciate your positive feedback, and I hope you join me in the coming weeks for additional brain-pourings that are either entertaining or educational.

Categories
Monocategorized

Put U and I in Understanding

Now that I have started showing the tender and slightly bruised heart that lies underneath the savage darklord exterior that I wear comfortably to daily meetings, people have started reaching out to me for professional advice. Actually some people have been doing that all along, but I want to believe that my writing exercise is somehow responsible for this. You should totally accept this as a truth.

As your organization grows and you start hiring more and more people to make software, eventually you have folks who are responsible for making software to help people make software. This is very meta. For people who like touching the hearts of customers, being sent to the “tools and technology team” is a death sentence. For others it is paradise-on-earth. Some people like identifying with their customers, and making code for other engineers means you can essentially pretend that you are your own customer and know exactly what everyone else needs and/or wants without asking them.

What could possibly go wrong with that, right?

In the course of making software, sometimes you have to go half-Zuckerberg on your various other engineering teams. Full-Zuckerberg means “move fast and break things”. For the sake of today’s open-heart surgery let’s just assume the need to “move fast” is not there; no pager alerts went off at 3 am. So let’s just “break things”. Maybe there are security concerns. Maybe there is a Better Way To Do Things™. In any event, you need to release software to other teams that is going to mess up their day-to-day.

It is important that this coming change is understood by all parties, especially if this is the first time you are doing this to your peers. If you do not think that they understand that this change is coming, then do not fall into the obvious trap: Do not just repeat yourself, but louder. If the reception of the data is not acknowledged you should assume it was lost. It is too easy to show a stream of repeated emails and MOTD files and say “hey I did my job”, even if that is not really true. You should plan on doing things that force people to stop and think about the coming change, even if that means you should use The Powers of Dark Psychology.

I will confess to being very comfortable with elements of The Dark Side. Red lightsaber… Green lightsaber… It does not matter to me what color the blade is, or where I swing it. I just like the cool whooshing noise it makes. “The right tool for the right job!” I say, and I mean it. Sometimes you need to give everyone cocoa and hugs. Sometimes you have to run into the room and chop off all the limbs and play hacky-sack with them while laughing maniacally. Figuring out the right time to use which tool is key to a successful leadership career. Don’t fool yourself and think you will win the game using only hugs and cocoa. Sometimes you will have to make hard choices and do things you will feel for the rest of your life.

Back to Dark Psychology. People have habits. If you are changing framework software, you are likely going to be modifying their habits. They may unconsciously ignore your repeated transmissions of impending change, or they may not fully grok the impact of what you are trying to tell them about, so you are going to have to work a little more harderer here. In order to prepare them for these changes, you are going to have to break their habits forcibly.

There are a lot of ways to do this. Grandpa Szeder is going to tell a quick story here. I am an agile practitioner when the team needs it to succeed. Getting teams to properly do agile is painful. I love getting into the conversations where someone points a finger and screams “that is not properly agile”. Dismantling that argument is like eating ice cream, cool, delicious, and sweet, but that has nothing to do with my story; I am going to teach you how I train people to do standups.

The standup is the core of any good agile process. A short meeting, so short that you should only have it standing up, because if it takes so long that your legs ache, then you are doing it wrongly. It is generally understood that the best agile practitioners do The Three Questions standup:

What did I do yesterday?

What will I do today?

Am I blocked on anything?

This is a great way to do a fast status meeting. The average engineer learning this process generally gets a passing grade at this; they get two out of three. There is some part of the brain that feels bad about being blocked. You do not want to expose the fact that you are blocked on something, or worse, you do not want to expose the fact that you are blocked on someone else. It makes it an easy win to omit this last third of the daily report if that is true, and it is even easier to omit from the status if you are not blocked. It also encourages broken windows because if one person routinely omits it then everyone routinely omits it. It took me a while to realize that, and even longer to come up with a long term fix. I am going to share it here because it will help you understand how to force people to communicate of their own free will. Yes, you heard that right.

People enjoy Flow. The Flow of work, the Flow of meetings, heck, even the Flow of delicious booze. We crave it, it means things are going nicely. When there is a group of people going through their stand ups at a break-neck pace, getting the majority of the questions answered, it certainly feels good. Most of them do not notice that they struggled with counting to three. So I figured out the best way to upset their little apple cart and get the third question answered. When someone has said what they did yesterday, and then said what they do today, I wait until they are finished and the next person has started giving their update before I take any action. As soon as the audience has gotten half way through hearing the next person’s description of what they did yesterday, I loudly stop them and ask the previous person: “ARE YOU BLOCKED?”. The first few responses are often nervous laughter. Sometimes the person who forgot to mention if they are blocked feels guilty. Sometimes the person who started next feels guilty. I will tend to stare at each person in the stand up equally, most of them avert their gaze when they realize they should be asking the very same thing. Everyone here is responsible for this message getting across, and it is important for us all to participate in this to be successful.

After two to three meetings like this, eventually someone gets the hint that John does not like to shout “ARE YOU BLOCKED?” at his teams. Eventually people will self-moderate this activity as a group, especially the person who is about to speak. Their concern at getting interrupted will prompt them to ask the previous person if they are blocked; after all, who wants to be interrupted in the middle of their daily update to go back to the previous person? It sucks for everyone.

This is a deliberate exercise. I hate to do it, but after three weeks, I will tell you that these standups are the best standups. I can still picture everyone’s face who has gone through this process with me. I still would hire each and every one of them today.

So what does this have to do with our tools and tech team? I am very glad you asked.

You are going to have to break their habits, to learn new habits successfully.

There are books on breaking habits and changing habits. They make for good reading. I am going to vaguebook a little here and passive-aggressively suggest that you can reach out to me to get a few of my favorite versions of these books. I am not yet so deep into the SEO and affiliate-code-linking to profit from your curiosity. I am sure that day is coming. I digress.

If you are just blasting emails and Slack alerts to your teams that framework changes are coming, you will not succeed in making them understand what that means. Here are some tools you can employ to help make this process more successful:

Sign-off Documents

When training zero-defect QA teams, there is no better tool than a document requiring a physical signature. When I give people test-plans for mission-critical products, I initially give them physical test-plans to execute, and I require a signature on every page. If something is mission-critical, and you are required to test it, I want you to believe it is so very important that you are willing to sign your name to it on a piece of paper. This may sound painful. It probably is. However, the QA leads who I have trained this way are now captains of industry in many different disciplines and much like some of the best software developers I have worked with, I would love to work with all of them again.

Get together with the teams who are about to receive new tools and technology and give them a physical document. Ask them to sign it. People will be very serious about accepting something that they have had to sign for.

Horrific Painful Meetings

Another tool to use is the Painful Meeting. Make it an hour long. Include an agenda in advance. Mention it will be recorded for all who missed it. Post minutes with attendance. Assign action items to attendees to ensure that people who missed the meeting will be brought up to speed. Throw around big words like “Mandatory” and “Compliance” and “Process”.

The secret trick to making this double-effective is that you should promise everyone involved that you will shorten this meeting and make it less painful in the future if everyone is successful at accepting changes to their habits.

Delightful Social Meetings

In addition to the vicious and painful mandatory meeting above, do not underestimate the power of food and fun. Create an outing where you can get people into a good mood and give them some warm and fuzzy feelings about upcoming changes. Whether you make a 3D cake, or you take the team axe-throwing, it almost does not matter. Just get everyone in a good mood and make sure you take a moment to let everyone know that this change is coming.

There is a secret trick to this meeting too. You should assign each person on your team a list of key stakeholders on other teams and speak with them through the festivities. It is important that they are personally updated on the coming change. If everyone feels like they were taken aside and given super secret special treatment, they are more likely to be open to changes and happy to invest time in understanding them.

Gently Breaking Tools

Much like the status interruption, this is another tool that is a great training tool, even though it comes with a heavy price. If you have scripts that people employ on a daily basis, you should add in some prompts to warn people about changes. Adding in a “Do you know this is going to change yes/no” dialog is one way to get people to pay attention, especially if they are used to not paying attention. Are there other things you can do? Certainly! Be Creative!

Take scripts that are executable, and at the end, dump a warning that you are going to make changes to this script, and then have the script take away its execution permissions so it needs to be explicitly reactivated.

Change filenames in some of your scripts to warn people of pending changes, especially if the new flow can be snuck in this way. Are you using new tools? Can you adjust some names in the interim phase to prepare people for these changes? All of these things will help raise awareness.

Actually Talk To Everyone

The last thing I am going to add here is the one that triggers the most “Will It Scale” angry stares. Because it doesn’t scale. At all. Unfortunately, Rome was not built in a day, and it helps you establish more credibility with partner organizations if you actually make the time to ensure that everyone involved is spoken to. You can delegate some of this, but certainly you should speak to the most senior people and the leaders of partner teams directly. Getting their buy-in and preparing them to be the first line of defense against changes is very important.

So there you have it. This is me dispensing thousands of dollars of management consulting advice for cheap-or-free. I hope you found it useful and/or entertaining.

I am going to finish off with a random anecdote and then go back to chasing kids off of my lawn.

A number of years ago, one of my sons was playing soccer. He had a year with a daddy-ball coach who only invested time in his own kid, who was also very terrible at the whole “coaching others” thing. The end result is that many kids did not improve as players, and they lost just about all their games. I am a big believer in not being a pointless whiner, so the following year I did the only thing that is acceptable: I volunteered to coach.

That year was better. We won more games, and many more kids improved as players. Because I was coaching, I got to see first hand that the referring did not look great to me. Having spent my year in the trenches as a coach, I did the same thing that I did last year: I volunteered, but this time to be a soccer referee.

Refereeing youth sports is not for the faint of heart. It is a blood sport. The field is an arena of fear. Everyone is staring at you and waiting for you to slip up, so they can blame the inevitable loss of the game on you. The pressure to make sure you see everything is severe, and it is suffocating. It is also an impossible expectation.

I decided to improvise in how I approached the game by approaching the other team’s parents at the start of the game. I roughly recited the following speech at the start. “Hi there, my name is John. I appreciate you all bringing your kids here to have fun today. I am going to start off by saying I am nervous because this is my first season as a referee and I am going to make mistakes. I am sorry for them in advance. Anything you think I missed, I want you to let me know, so I can improve. Now let’s go out there and play soccer!”

People looked at me strangely, because usually the referee is a parent from the other team and therefore they are “the enemy”. This was not a normal interaction.

At the halftime point, I would go back to the other coaches, and 1-2 parents and thank them for a great game so far. I would point out one or two places where I think I messed up, and then ask if there was anything else I missed. I would repeat this exercise at the end of the game.

Fast forward to about five years later, I ran into a parent from one of the other teams at the grocery store. They seemed visibly excited to see me and came over to say hello. They also asked what happened to me. My son stopped being interested in soccer, and I stopped being a referee, I told him.

“Oh” he said, clearly disappointed. “That is too bad. A lot of us feel like you were the best referee we ever had!”

I was floored by this. I barely know the rules of soccer. I am not a fan of the sport. I went to ensure everyone had fair time, and over-communicated with the other team to give them opportunities for feedback so everyone felt like they were getting the best refereeing possible for their kids. It turns out that it created a lasting impression on everyone I spoke with.

So there you have it. Hopefully this is helpful and useful, or possibly even just entertaining.

I am happy to answer questions about ways to help improve communications between teams, or to communicate changes coming to your internal technical products.

The only thing I would ask: Please do not ask me to referee a soccer game.

Categories
Monocategorized

Eat the risk

I will confess that I extract tremendous pleasure, or at least tremendous therapeutic value, from these articles. I am secretly hoping that someone will also learn things from my vicious ranty rambling.

The period of time when I was successfully making money running my own boot-strapped game studio is bittersweet to me. Looking back, it is the time that I thought that I knew the most about everything that mattered. In truth it was probably a time that I knew the least relative to my role as a business founder. That disconnect certainly did not stop me from trying to do crazy things. Among those crazy things, trying to raise money as an engineer-turned-founder was probably the craziest. I at least feel some shame for the times I went around to various people with my hand out to try to raise money without really understanding what I was asking.

Now that I am a little older and a lot more wiser, I read through the 20ish versions of my edited pitch decks and I tear up a little at my naïveté as I peer into the shape of my own inner tree rings.

The truth of it is that I really did not understand fund-raising at all.

This was my biggest personal failure as a first-time engineer-turned-founder. I have told this story more than once in the past six months. That alone tells me that this subject is worth adding to my weekly brain-sprayings. So here we go.

The last thing you should try to do when you need money to build something is to go and raise money from investors. I honestly wish someone had told me this. Maybe they did. I was so fixated on wanting to build big things and had seen so many press releases about people raising money I honestly assumed that there was nothing to it. Right? If some bunch of people are willing to invest six million dollars into all these other clearly bad ideas, they must be willing to put six million dollars into my bright ideas. After all, ideas plus engineers equals profit. All you need to do is add enough runway. 

It turns out that is not the case. While there are a small number of investors who will write a check for a napkin pitch, generally the people who they give that money to are safe bets. They are people who exited before, or they worked with said investor in a previous company, or in general have a compelling track record. You kinda have to stare at it squinty-eyed sometimes to see the connections. I assure you those super-secret connections are there. If you don’t have those super-secret connections or you have not already established a compelling track record then I have some unfortunate news: You are probably too risky to get funded.

One of the nice things about being in silicon valley is that you get exposed to a lot of successful entrepreneurs. One of the things I have observed is that this class of entrepreneur is always pitching; they are refining their ideas and constantly looking for feedback and ways to improve their story. In hindsight I should have realized all the ways that their pitches talked about how they reduced risk, or what they did to make it sound like they did not need the investment. Raising institutional capital is as much a science as it is a craft. I wish I would have been dissecting those rehearsal pitches with more rigor over a decade ago.

So what can you do as a first-time entrepreneur and you do not have that track record, nor do you have those super-secret connections?

You have to eat your risk.

There are a number of things you can do to get rid of your risk, depending on your skill set. I tended to go for the most painful one: Bootstrapping.Spending half of your time building out a service business and the other half of your time building out your big idea is one way to get to a point where you have stood something up, but because you are splitting your focus it is a pretty tough road; nothing moves forward fast enough, and managing expectations is hard.

Another way you can eat the risk is to find an early customer. Someone may be suffering an acute pain that you are looking to remedy. That pain may be so substantive they cannot wait for you to get to market.

A third way is to find angel investors who get in early looking for a slice of the pie for when your business goes great. This is probably my least favorite of these but in the long term it might be the easiest. I have spoken with quite a few people who have gone down this road and I have noticed from my fundraising experience at startups that you can spend just as much time and energy raising fifty thousand as you can for five million. Also, the amount of equity you will need to put up for that initial raise may be very expensive downstream. This probably takes the most risk out of your life, but also, it comes at a steep cost in equity.

So there are three things you will need to balance carefully as a first time founder. Do you raise money? Do you bootstrap? Do you pre-sell your product? Each of these has its own costs, and each of these has its own benefits. Figuring out how to get your product stood up will take money. Where that money comes from is largely going to be up to you.

The more you can do to get your product built and in front of customers, the less risky of a proposition it will be for an investor. The less risky of a proposition it will be for an investor, the more likely that they will write you a check.

It took me five years of doing this incorrectly to figure that out; I still feel kinda dumb about it. I hope you learn this quicker.

Thanks again for joining me on my weekly writing trip. I hope that this is habit-forming for you. Give me all the stars, recommend me to a friend, enjoy this more than Cats.

I look forward to more awkward thinky-sharing next week!

Categories
Monocategorized

You cannot kill the sidekick

I have spent quite a bit of time discussing end-game wisdom for the high level engineering leader. I am going to change gears this week and talk a little about some of the things that are more helpful in the early half of your career.

When I first started my career, I will confess that I had a pretty myopic view of work. Ideas go in, code comes out, and profit taking ensues. The value chain looked short to me; we were entering the age of meritocracy in the very heart of silicon valley. Fully decked out in nerd apparel and armed with role-playing dice and leftover pizza, this was the coming of age of My People. There was no better time to be alive!

I could not help but notice that my view of the giant rose-strewn field that was Startup America had some kind of minor irritant; some kind of pollen that made my nose stuffy and my eyes water. What was this? Why did it mar this near-perfect experience?

Slightly confused, and incredibly curious, I decided to dissect the very world around me in real time, much like a lonely surgeon on a desert island needing to disinfect a small but insidiously deep wound. Much like said surgeon, my diagnosis and correctional tools were crude and medieval.

What I found should come as no surprise: The teams that I worked on had flaws. Not everyone was up to par with the high level of work output some of us were producing, and this meant that there was inefficiency. The internal alarms sounded! It was time to take action! How did this impostor get into our midst?

I am going to take a moment here to pause for a second. Younger John Szeder was very quick to protect his teams and his products. The Older, Wiser John Szeder of today looks back on that time with more than a little regret. By no means should anyone take this as a playbook on “what to do when confronted with team inefficiency”, but a cautionary tale. Let’s continue.

Naturally, I went on the offensive. It is easy to look at the numbers and the output and demand accountability. I really enjoyed seeing the ROI on projects I was associated with; I wanted everyone to participate in such a wondrous financial reaping. In some cases, there were people who were in the company who struggled to get good results on their projects, and I felt like they had no place in the merit-based paradise we were trying to build. I would try to “help” them. This had varying degrees of success. As someone who specialized in computer science, and saw college electives as a great way to pad one’s understanding of Arthurian Legend and Shakespear, I did not take many management science classes. The fault here is mine, honestly, even though nobody told me better.

One pattern that invariably emerged through all of these attempts at team optimization is that a form of resistance manifested itself. In between my best work of creating things and disassembling teams that were not producing, I had met an immovable object that I slammed into with my unstoppable force.

Let me introduce you to The Sidekick.

This is a dark pattern that I have observed over a few decades now; I still truly believe this. I understand it better now that I am closer to a functioning adult than ever, but I want to make sure that you understand this pattern in its entirety before you throw away years like I have.

I have been blessed to work with many successful visionaries and leaders over my career. They are all human. They all have their strengths and their weaknesses. Sometimes their weaknesses manifest themselves in the form of an individual who follows them along from opportunity to opportunity. Maybe they see this as a strength, maybe they see this as training their successor, maybe someone has incriminating photo evidence. I don’t know. All I know is that sometimes you will find that they will have themselves a Sidekick.

They may have marginal utility, if you are lucky, but often they resemble a home improvement project in one very specific way. They are an unfinished eyesore that requires love and attention to turn into a beautiful part of the house. I did not always have that vision, nor did I have the patience to deal with that sort of thing. I generally traded high on the “take equity” side of startup compensation; the presence of a Sidekick interfered with my desire to create high ROI on said equity.

So what did I do? The thing that most super-villains naturally do. I went after The Sidekick.

I am going to get to the outcome here before going further. TL;DR: This is a Bad Idea. Do not do it.

I do not know the full extent of the relationship that exists between a boss and their useless sentient appendage, all I know is that the The Sidekick possesses unnatural powers; You cannot kill The Sidekick.

There is a certain amount of Dilbertian truth to some of my professional career, and this is one of those moments; I can only look back at it and laugh because the alternative is to cry.

When confronted with this moment, and you clutch your high amounts of equity in one hand, and your sword of self-righteousness in the other, all I can do is ask you to stop. Breathe. Reconsider.

This battle will go poorly for you, and probably for everyone around you.

Take a moment to reflect on why this person is here. In the rare case where this person winds up being your boss, you may feel a need to run, and promote yourself to Not Working Here Anymore. Regardless of that feeling and your relationship to The Sidekick, you should not take sudden action. Whatever you do in your manufactured urgency, you will probably regret when you get to my age.

So what should you do? Welcome to the silver lining moment of this particular dark cloud. For starters, have a little faith in your leadership. They have reasons for hiring people, and even if you cannot see them, it is worth learning what they are. Resist the urge to weaponize them. One of the things I did not do in early experiences with The Sidekick is spend enough time working with them or attempting different ways of helping them.

The nice part about a startup is that it is a twisted sort of laboratory experiment. You can try things, and get paid for it at the same time! Use this situation for what it is; an opportunity to refine your tools for overcoming roadblocks, rather than screaming, stepping on the gas, and closing your eyes. As much fun as it was at the time, you mostly wind up just wrecking things.

The one thing you are not likely to wreck with that strategy? The Sidekick. That person is invulnerable. Please identify them as early as possible, and whatever you do, please do not attack them. You. Cannot. Kill. The. Sidekick.

Thanks again for reading. This was probably the most therapeutic article I have written out of all of them. I hope it hit you in the feels, and you feel compelled to socials. I like your likes. I read your comments. Thank you for reading along this week and I look forward to sharing continued learnings with you all!

Categories
Monocategorized

Throw out your source code

People often wonder why software developers make the big bucks. We sit in comfortable chairs tapping clicky keys all day and enjoying a multitude of sparkling water flavors wherever we go. There is often a lot of watching of cat videos, and sometimes, there is the playing with the nerf guns. All in all it seems like an idyllic life.

That is during “The Good Times”. When people are attending The Status Meetings, and The Product is following The Schedule. I have sat in these meetings; where people with fantastic job titles throw around these words like they are religious incantations; capitalized and nearly without meaning. “How will this Change Request affect Quarterly Revenue” a high priest of product management may intone, not actually caring about the actual content of the change request. There is no greater incitement to violence in the soul of a knowledge worker than the presence of such monsters. If you have ever sat with me in a meeting and saw me staring at you white-knuckled and struggling to find words, I am sorry, yes, you are “one of them”.

It is not all ashes and debris all the time. I have met some great people in product management and marketing. I tend to cling to the good ones; they are deserving of my company. Especially when I can find the ones that understand one of the core principles of software development that is unspoken: You should always be throwing away your source code.

What madness is this you ask? Calm down. Breathe. Let me explain. Yes, I understand that there was a few million dollars or more invested in making “a thing”. Honestly, though, software development is not like building houses in a subdivision. There may be somewhat of a blueprint, possibly an architecture, but often software development is a steep descent into the hell of managed chaos, where people create staggeringly intricate connections between objects of increasing geometric complexity, often running into issues that were unforeseen.

Sometimes even people will get their product stood up and in front of customers before the geometric complexity manifests itself. Suddenly, the servers may go down, Product and Revenue will start to be Impacted. Of course this agitates the high priests and suddenly making sure this gets fixed becomes The Top Priority. It goes without saying that The Top Priority is still to make sure that all the other Top Priority items get taken care of too. Someone declared this code Complete, remember? And this is where we get into the big bucks part of the equation. Software developers are often required to make complicated trade-offs in order to serve these interests. Of course, this-is-the-way-we-do-things.

Is there an alternative? Let’s discuss.

The reason we got here in the first place goes back to that whole geometric complexity thing. Software development is challenging and trying to make sure we can manage all of the risks and the unknowns is never perfect. Yes, that is correct; software development has the unknown unknowns. We build many things and sometimes there are things that are not well communicated, and sometimes there are things that are not well understood. The sum of these things results in imperfect systems being created. How often does this happen? Only on days that end with the letter “y”.

There is some sort of zeal or enthusiasm for people to be able to create cookie cutter software magically the same way that you build houses or the same way you create store-bought stuffing. Gather the team, the ingredients, the blueprint and go. Over time, a well-run team may get to the point of having almost no new unknown unknowns while adding features to a software-as-a-service platform. To get to the point where this is a stable and mostly repeatable process takes more than one year. Does it take two? Does it take five? Quite often that depends on whether or not people are quitting, or dying for that matter, spiritually or actually.

Team stability is probably one of the most unappreciated things I run into on a daily basis. Now it is time for me to bring the point home about throwing away your source code. By the time I am done explaining, I am expecting you all to nod in amazement and wonder; I also expect a five star Yelp review.

Through the years of managing teams and shipping products there always comes a moment after a piece of software is built that a team member comes up to me and is agitated. They want to refactor something. 

Refactor? That is a scary word to the high priests of marketing and product management. It generally means random engineering tinkering under the hood that does not come with a Change Request. It may not be clearly attached to Quarterly Revenue, much less to Roadmap.

Sometimes the job of engineering leadership is to give that poor gentle soul a hug and a reassurance that everything will be okay; that this is not the hill to die on. Sometimes, that engineer will come back a few weeks later, more visibly disturbed. They need to fix something. It will go from “this is an inconvenience” into “this is a time bomb” with varying degrees of speed. Do you fix it? Do you forget it? It is not always clear. Sometimes you get the bear. Sometimes, the bear gets you.

It is important to set aside time for this clean up work on any project. In video game development, especially for a brand new game, I make it very clear up front that prototyping work is intended to be 100% throw away. This is important. You have to take stuff and throw it away. Do it over. Do it better.

We learn things in making software, we build things to test out hypotheses. It is important that this research and development work gets its properly allocated share of Research. It is important that it leads to time to do additional Development. Quite often people will consider The Research as The Development. This is a dangerous, deadly, dark path. Just because someone has written a thing, you must not necessarily assume you should ship a thing. The amount of cartoon stink lines emanating from it may vary.

Fighting the fight to refactor code, and to throw away code that-must-not-be-shipped is a significant struggle and super important to the stability of your team.

The more luxury you can afford your team to go and do the good work of making sure they have the best code possible, the more likely you will end up with the best product possible. There may or may not be studies on this. My empirical data on this has made me a firm believer; I carry this torch and shield with extreme vigor.

Long term, if you can fight this good fight, even if you lose it from time to time, your teams will stay with you. They just want to do their best work. They want their best work to be respected and appreciated. What happens next? You will continue to see them delivering their best work again and again. When people are on a team like this, it is the greatest feeling imaginable. I was on a team like this a few times and I miss it so much it hurts. It is why I am in the process of building a team like this right now.

However, if you sacrifice your teams on the altars of Roadmap and Revenue, I have some bad news for you. This will murder the gentle delicate souls of your best people. It will crack their insides and deaden them to the feeling of joy. Invariably, it leads to people considering the insidious whispers of Recruiting. You heard me correctly. If you do not give your knowledge workers the space to “work” with their “knowledge”, you must understand that they will want to leave.

I went through this whole article trying to avoid the words Refactor and Technical Debt. I was mostly successful. These are the words that engineers use when they feel The Light die a little; these are their impassioned pleas to the monocle-wearing cloud-people in leadership that they want to feel joy again, to breathe and be free. These words become dirty to the high priests within The Company at the peril of your team; when they become part of the Doctrine of Next Sprint, and that Next Sprint never comes, your best people will promote themselves to the lofty title of Not Working Here Anymore. Congratulations! You have earned a rank of Churn! This Churn will affect Roadmap. So we will need to replace them with new people. These people will likely not have all of the skills and experience needed to thrive on day one, many of them will take time to get ramped up and acclimated to their new world.

Of course, since the people who wanted to clean up their code so badly never got a chance to, this next generation of knowledge workers that comes in finds themselves neck deep in a world that is filled with brokenness and hurting.

This starts a vicious downward spiral of decreasing code quality, and it is a sadness in the hearts of all who behold it.

The best code bases are made by the best teams and the best teams get the luxury to rewrite their code bases when it is necessary. To deny your teams the ability to have the best code bases you will no longer have the luxury of the best teams.

What you wind up with is a code base that does not age well, and a handful of people who feel obligated to maintain it until such time as it can be taken out behind the shed and put out of its misery. If it is code in a successful product, this is a process that can take years and is horrifically painful for everyone involved.

Just about every software system needs some level of rewriting. If it is good code it may not need much, if it is bad code, it will need quite a lot. The question is, do you want to make the time to rewrite the bad stuff when you want to rewrite it? Or do you wait until the time arrives when you urgently need to rewrite it? The number of people who wind up doing the latter may totally shock you!

In conclusion, I boldly state it is important to let your people throw away their code. Do it over. Make it better. Throwing away code improves things in many ways. I am not going to bother to go into all of them in much more detail, because the most important thing about letting people throw away code is that it means you value them as people and you value the whole of your team.

If you need more convincing than that, I honestly wonder if you deserve your paycheck. If you are ever in a meeting with me, I assure you I would be giving you a quiet Greta Thunberg stare with the blazing intensity of a thousand angry suns for the duration of said meeting, and it would be on repeat for all of the meetings we would be required to have together afterwards.

To the rest of you, thanks for reading! I hope you enjoyed this voyage into the thoughtfulness of leadership and the importance of throwing away code!

As always, like me on the socials, share me with the connections, and feel free to indulge in an attempt of creating meaningful social reciprocity.