paint-brush
Programming Meaningby@marcusblankenship
485 reads
485 reads

Programming Meaning

by Marcus BlankenshipFebruary 26th, 2019
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

For the last 20 years, I’ve been a software engineer, engineering manager, CTO, and business owner.

Company Mentioned

Mention Thumbnail
featured image - Programming Meaning
Marcus Blankenship HackerNoon profile picture

For the last 20 years, I’ve been a software engineer, engineering manager, CTO, and business owner.

Yet, I’ve repeatedly told my kids, “If I could afford it, I’d go back to pumping gasoline.”

My kids would respond, “That’s crazy, dad! You went to college, you were a computer programmer, and now you’re a manager. Why would you go back to that job?”

Why do I have a high view of pumping gas? Because at the time, that job had a very positive meaning for me.

You might have a similar feeling at times — that past jobs held surprising meaning for you that others find hard to understand.

In the same vein, let’s discuss how your team finds meaning in their work.

My Meaning in Three Jobs

The Gas Station

My gas station job had a threefold meaning:

  • It provided help to my family as a steady source of income.
  • It met the needs of people right in front of me, which I found enjoyable. It was immediately ‘helpful’ to others.
  • It provided an ongoing sense of accomplishment (filling cars with gas) and
  • I [.1] immediately got feedback about my performance.

The Assembly Line

Later, I worked on an assembly line, building electrical transformers. This job also had positive meaning for me, for different reasons.

Here is the meaning I found on the assembly line:

  • It was a semi-skilled job. It made me feel as though I was doing something with ‘electronics’, which made me feel smart.
  • I wanted to go into computers, and I felt this work was (somehow) related to “the computer industry.”
  • I worked on a team with people who felt teamwork was important. We depended on each other, and each person did their part. If anyone failed, we all failed. This was my first experience working in a team.

The Payphone and the Check-Out Line

During college, I worked at two jobs: payphone repairman and cashier at a department store. The payphone job was meaningful, the cashier job was not. Well, that’s not quite right. The payphone job had a positive meaning, but the cashier job had a negative meaning for me.

The meaning I found repairing payphones:

  • It taught me special skills others didn’t have, and knowledge of the deep inner workings of payphones and the phone company.
  • I felt special because I had the keys to payphones, which no one else could get into.
  • I was helping people who needed to make calls by repairing the phone. Sometimes I could even offer them a refund when the phone had taken their money, as they hung around wanting to yell at someone for their troubles.

The department store cashier job had meaning as well, but it felt negative to me:

  • It was the same store where my father had worked years before — which made me feel negative about walking in his footsteps.
  • It felt ‘beneath me’ because it wasn’t technical or skilled labor.
  • I had to wear a tie — which I hated (and still hate).

Reviewing my work history, I can see that my job performance and job satisfaction correlate to the personal, positive meaning I made at each job.

Looking back, some of my meanings were silly, self-centered, and immature. But they were certainly the meanings I had at the time.

Can meaning be manufactured?

Yes, I suspect so, but not by a CEO, HR department, or manager.

I think that meaning is always created by the individual, for the individual.

Unfortunately, each company I’ve worked at attempted to manufacture meaning to motivate their workforce. I see this trend continuing today, as companies try to provide employees with a motivating purpose (meaning). The company usually hopes to motivate them to do more, faster, through a statement of ‘higher purpose’.

Some of the times and places companies attempt to manufacture meaning are during on-boarding and though break-room posters. In my past jobs, these posters included phrases such as:

  • “We prosecute employee theft” (gas station)
  • “Powering the world” (electrical transformers)
  • “The next best thing to being there” (payphone company)
  • “Our customers are the best in the world” (department store)

None of these resonated with me, and I noticed that the more a company tried to manufacture meaning for me, the more suspicious I felt. At least the poster at the gas station (“We prosecute employee theft”) was clear and honest, so it didn’t bother me. :)

Not only is meaning individualized, but it’s also time-sensitive. After spending 25 years developing software, a job fixing payphones would likely not make me feel “closer to the computer industry.”

However, now I might find a different meaning in that job, which could be just as motivating.

My cup (of meaning) runneth over

Reviewing my past work history, I realize that I invented a meaning for jobs that had no expressed meaning.

Take my gas attendant job: my boss never told me, “Your success metric is filling at least 100 cars today,” or “Doesn’t it feel good to complete so many tasks today?”

I invented those ideas to give meaning to a job that otherwise might have felt meaningless.

Some programming work feels awfully meaningless as well. In the same way, I see engineers inventing games, goals, and meaning for their work. I believe this is a good and necessary thing that we do — not an indicator that something is wrong.

As a manager, don’t take their invention of individual meaning as a signal that you should provide meaning for them.

Instead, consider asking them what meaning they’ve invented for themselves.

For example, some engineers invent quality standards for their projects. Others invent games or goals around aspects of the speed of delivery, the complexity of solutions, the perfection of the solution, scalability, robustness, or “industry best practices”.

Don’t imagine your programmers don’t find meaning in their work. Instead, strive to understand what meaning they’ve created. This will reduce miscommunications and help you understand how they approach their work.

It might also reduce confusion about “why it’s taking so long” and other common questions that managers and customers have about software development.

An example from software development

Meaning is not only necessary to motivate us — it colors many everyday technical decisions as well.

Recently I was working with a team that is rebuilding a large, public-facing marketing website. A marketing agency had built it 10 years ago in Joomla, a robust PHP CMS with a MySQL backend. The site receives about 3MM visitors a month and is a cornerstone of the company’s marketing efforts.

The internal team doing the rebuild chose to use the Laravel PHP framework and ReactJS for the front-end. They chose to build their own simple CMS and serve all pages in a ReactJS app.

Would you be surprised to learn that the internal team views themselves not as marketers but as “application engineers”?

The choice of technology is reflected in the meaning they find in their work.

  • Engineers don’t use CMS systems… they build CMS systems.
  • Engineers don’t use pedestrian marketing tools, they build scalable web applications with modern architectures.
  • Their choice of tech, tools, framework, languages, and deployment method are those of ‘engineers’.

It’s obvious that it means something important for them to be engineers in a marketing company.

I could guess what it means to them… but I’d be mostly wrong.

I would only be expressing what it means to me to be an engineer. The only way to find out what it means to them, and how it’s impacting their thought processes, is to ask them. Then you’ve got new information to discuss that can help bring everyone into alignment.

A pool of shared confusion

I see no end to confusion among engineers, as well as their managers, product owners, and customers, because we don’t talk about what our work means.

In my examples above, I doubt any manager of mine would have guessed the meaning I ascribed to my work. In fact, I’m not sure I would have been able to articulate it at the time.

This, of course, makes things doubly confusing. We make decisions based on what our work means to us, but when asked directly, we may find ourselves unable to explain our meaning. I certainly would have been at a loss if asked: “What does it mean for you to be a payphone repairman?”

The wise leader asks this question after they’ve examined themselves a bit to understand the personal meaning of their work. They first transparently share their own thoughts and then give the engineers time to think on this topic before expecting an answer.

I’ve been in countless employee onboarding sessions, annual all-hands meetings, and monthly department meetings where someone stood at the front of the room and reminded us of the mission and meaning of our work.

Never, ever have they been correct about what a job meant to me. Not once.

The lesson for leaders

Leaders can take (at least) five lessons from these ideas:

1. Avoid telling others the meaning of the work. Don’t presume that your company/team/product’s “mission” is the meaning in their jobs. Also, don’t assume that the meaning you find in your work is the same as the meaning your team finds in theirs.

2. Encourage your engineers to reflect upon and discuss the meaning they find in their work. You’ll learn a great deal about the people you work with and gain tremendous insight into what motivates them.

3. Make your environment safe for people to discuss different meanings for the same events. The meaning people ascribe to their work changes with circumstance, time, and experience. Make it safe for people to discuss what their work means to them today, as well as tomorrow.

4. Your team is already motivated by their meaning; they don’t need you to motivate them. If you earn their trust, they might just share what their job means to them. This can be a powerful moment for both of you, leading to increased motivation and engagement.

5. Make discussions about individualized meaning part of a regular agenda item for your team. 1:1 meetings and evaluations are a natural fit, but don’t be afraid to open up the topic in team/department/company meetings. The more you talk about the meaning of work, the more people will understand each other, and the better they’ll work together.

Make your own list

I’d like to challenge you to make your own list of the meanings you may have found in your past jobs. Consider both positive and negative meaning, and reflect on how those meanings may have impacted your job performance and job satisfaction.