Skip to content

healthy => software.developer

They know code. But you know better.

Home / The Show / The Art of Tech Persuasion: A Programmer’s Guide

The Art of Tech Persuasion: A Programmer’s Guide

Ever wanted to do something new, or make a change on your software project - but other people on your team won't support you?

Watch or listen to this episode

YOUTUBE

SPOTIFY

APPLE

Ever wanted to do something new, or make a change on your software project – but other people on your team won’t support you? Maybe you want to move from scrum to kanban, use a newer JavaScript framework like remix, or if you’re a UX designer introduce something like customer journey maps.

It would be nice to always have support from other people, but if you’ve never had pushback for one of your ideas, it’s a matter of WHEN – not IF. So at some point, unless you want to quit your job every time you need a change to keep delivering great software, you’ll need to persuade other people on your software team, or in management – to support you.

In this article I’d like to share with you what I learned over 15 years of software development consulting about persuading IT management and other technologists on your software team. Persuasion is a soft skill that is more valuable than many people realize!

10 Steps To Persuading Anyone To Support Your Software Development Changes & Ideas

With all 10 of the steps I’m about to share, it’s important to understand one crucial element. Humans don’t make decisions purely based on logic – emotion and our hidden desires often come into it. So when persuading intelligent technologists and managers, if you focus only on data and facts – you’re missing half the picture.

This isn’t about manipulating anyone or deception. I would never advocate for anything less than an ethical approach to persuasion. Your job is to help the other person see why it’s TRULY beneficial to support you. Not to lie about it! It took me the first 15 years of my career in the industry to learn these lessons.

#1 Be Honest About Your Skills

Far too often I see a programmer, manager, or anyone on a team try to sell a change or idea and it’s something new that they’ve never done. Maybe they read about it in a blog or book, or watched a YouTube video. But as they describe it to the team, the look on everyone’s face is obvious – this is uncharted territory!

Before you even begin to think about successful persuasion, you need to be brutally honest with yourself about your skills. If this is the first time you’ve done something, people will pick up right away if you’re making it sound easier than it is. And you may find some members of your team already know more than you about some aspects of the idea or change.

So whatever you do, as you try some of the rest of the steps in this article – please try to be honest and up front about what you don’t know, and what the team may encounter together for the first time as they try this. Honesty is refreshing and people have the emotional intelligence to see through B.S. – trust me on this one.

#2 Have an Authentic Relationship

In the first half of my career, this is exactly what I did NOT want to do. An authentic relationship is one based on knowing more about another person (and them about you) than just what’s absolutely necessary for work.

Now I know one of the first things that can come to mind is “what if they use that information against me?“. And yes, you absolutely should apply some discernment here. Sharing family struggles, financial status, or anything too personal is of course a bad idea. But I see people use this fear as an excuse to never lean in or be vulnerable about anything.

If there’s one thing I’ve learned in 25 years of marriage, it’s that the quality of your relationship is directly proportional to your courage to let the other person in. And while a workplace relationship is different (and so should have a different threshold for what’s shared) – if you want to win support for your ideas, you need a person to care about YOU. And that means knowing some things about you as a person.

When the going gets tough on projects, people will never stick their neck out if they don’t care about you personally. And while you can never guarantee support from someone – I’ve seen people go above and beyond the call of duty to try my ideas when I spent a little time getting to know them. This is as simple as a zoom call where you spend the first 10 minutes sharing a bit about your family, hobbies, or whatever you’re comfortable – and asking the same (usually you won’t have to – it’s called reciprocal sharing). Or maybe you go out to lunch or coffee together. In my case sometimes I’d meet another musician and we’d jam together at one of our houses.

This step is CRUCIAL. Peter Block’s famous book Flawless Consulting is founded on the premise of authentic relationships. If you want to go further with safe authenticity in work relationships – check it out.

#3 Know How To Measure Success

One thing developers are often accused of (and all people really) is having overly-confident ideas of the benefit of some change we want to make. If you really want to change that stereotype, start by figuring out how you’ll measure, and demonstrate, the success of the change after you make it.

No, not all changes have measurable metrics. Sometimes all you can do is ask the people on the team afterwards how they felt about the impact of the change. Maybe some aspects of their job, did they find it to be better? But if you can identify some truly measurable outcomes, identify them up front and share what you intend to impact.

Maybe you’re beefing up unit testing and you can show a reduction in defects after the change. Maybe you’re bringing on a UX designer and you can show less time spent by development clarifying questions related to UI. Maybe you’re optimizing some aspect of a scrum or kanban related process and you can show that changes are released to production quicker. You can get creative with this one.

Jayme playing acoustic guitar

Most of the recent videos on my channel end with an #episodegroove where I’m sharing little snippets of music I’ve written over the years. 🎸

#4 Identify The Benefits To Others

When you come up with an idea for a change to how we deliver software, it’s usually birthed from realizing how it will make your job easier. But to persuade the other person, you need to connect the dots for them as to why it helps them too.

Most people are asking themselves “What’s in it for me?“. So going back to my previous point, you need an authentic relationship with whoever you’re trying to win support from. What drives them? What do they care about? What are their worries or concerns on the job?

If you can figure out how the change you’re proposing helps them do their job better, you’ll have a much easier time winning support. Focus on this more than the mechanics of the change. You’ll be surprised how much more receptive people will be!

#5 Incremental Persuasion

If you’re considering a code change, process change, or really any idea or change to how we deliver software – sometimes it’s a big change with many steps or changes wrapped up into one. While there are some changes that don’t really fully benefit a team until all of them are made, there is usually a way to get at least some of the benefit by only changing a little bit at a time.

I often work with career coaching clients to help them when they want to make a change to how their team works. When they want to make a bigger change, we work together to try to figure out – “How can you break this change up into maybe 5 to 10 smaller changes?“. And then the idea is to only persuade people to make the first change.

This is because it’s often too overwhelming to take in a big change, and it requires too much trust to support you. Once the first smaller change has been made, and you’ve demonstrated the measurable results – sell them on the next one!

#6 Create Visual Aids and Assets

The higher up the hierarchy of a typical company with a command-and-control structure you go, the less time people typically have to consider an argument. And even in more flat structures like a development team of peers of programmers, if there’s pressure to deliver, time is of the essence.

Whatever you can do to create simple visual assets like charts, graphs (or if you want to get fancy – animations or infographics) pays dividends. It can be difficult, but boiling down the complexities of the change only into the essentials and presenting them for fast comprehension reduces the cognitive effort needed by the other person to grasp the idea or change.

Visual assets can be reused by whoever you’re persuading if they need to have conversations with other people about your suggestion. And one of the biggest complaints people have about getting buy-in in larger corporations is that they effectively “sell” their idea to one person – only to have them get the details wrong communicating it to another person!

A picture is worth 1,000 words – and that’s true in persuasion as well.

#7 Future-Pace The Benefits

Since technology projects are so full of decisions and conflict, it can be hard for people to even comprehend what their job would be like if a change your suggesting is made. To help them out, use a technique known as future-pacing.

To do this ask the question: “What would their job feel like, in their body, and what would they be thinking, in their mind – once this change is made?“. If you can plant a seed of what the fruit of your change will bear for their experience – this can help you break through fears and biases that may be holding them back.

#8 Know How They Are Measured

Whenever another programmer, or a QA tester, SRE, UX Designer, manager – or anyone on your team considers supporting you – they often subconsciously (and sometimes consciously!) consider how it will make them look to others.

To persuade convincingly, you need to understand how that person is measured. What is the business and their manager using to measure their performance? What aspect of how they maintain confidence with their coworkers could be impacted by your change?

If you can understand this, you can tell them you understand how they may be concerned about the impact to those measurements. And come up with a convincing (and true, it must be true!!!) argument as to why they will improve that measurement by supporting you.

#9 Timebox The Response for Support

You can do all the things I suggest as strategies for persuasion in this article, win verbal support from a person, and think you’re on track. But then the project gets busy, they get distracted, and the next thing you know your idea is dead on the vine – unless it becomes a priority again for the other person.

To avoid this, you need to request a deadline for supporting you from each person you’re winning support from. Now it can feel a little scary setting a deadline for someone else. Especially if they’re in a position of authority over you. But your immediate supervisor or other people higher up in a company also have to commit to deadlines all the time.

Schedule a meeting with the person with the expectation that you’ll discuss their response when they’ve come to a decision. Or ask for an email or slack message by a date. If you need to line up other dependencies, work with vendors or refactor code for example to move forward, you can communicate this to encourage cooperation.

But whatever you do, don’t leave their decision for supporting you open-ended. Whenever I’ve done this, I find all the hard work I did to persuade someone of the benefits to my change fall flat and I begin to resent my laziness to not follow through!

#10 Practice Persuasion

The first time you try these strategies, you may not do very well. Maybe your manager (or anybody else you need to persuade) is resistant with scheduling a meeting to discuss something, or they’d rather you just shoot them an email and say they’re too busy to look at some visuals you’ve created.

Don’t give up! You can do this.

Over the first 12 years of my software development career I never knew how to do any of this. And I didn’t even know it was an important thing to do. But if you want truly satisfying outcomes on your software projects, and in your job – persuasion is often the difference between being stuck and having the freedom to keep growing!

Skip To Points In The Video

  • 0:00 Introduction
  • 1:13 10 Steps to Persuade Others
  • 1:21 #1 Be Honest About Your Skills
  • 1:57 #2 Have an Authentic Relationship
  • 3:40 #3 Know How To Measure Success
  • 4:43 #4 Identify Benefits To Others
  • 5:44 #5 Incremental Persuasion
  • 7:00 #6 Create Visual Aids and Assets
  • 8:38 #7 Future-Pace The Benefits
  • 9:53 #8 Know How They’re Measured
  • 11:08 #9 Timebox The Response for Support
  • 12:29 #10 Practice Persuasion
  • 13:39 #11 Episode Groove
Is Your "Agile" Backlog REALLY a Waterfall Project?
If Code Is Self-Documenting, Why Do Comments Exist?

About the Healthy Software Developer show.

On the show, Jayme shares all of his teamwork and leadership strategies, guidelines for healthy company culture, and stories about real projects so you can have a sustainable career in the software industry.

Develop a mindset and habits to keep you calm so you still love writing code - avoiding the traps most developers fall into.

Subscribe Now
YOUR HOST

Jayme Edwards

A family man and veteran of over 30 software projects, Jayme experienced many wins and losses that led him to helping developers succeed in their careers online.