Convincer Strategy


A Convincer Strategy is how a person comes to believe something to be true.

For some people, they need to see it with their own eyes.  For others, they need to hear something multiple times from multiple people before they believe it

The convincer strategy has two parts.

1. Figure out what convinces someone, what inputs he needs to become convinced.

e.g. How you believe that someone is good at job? You may believe someone’s good when you see him doing a good job and when other people tell you he’s good

2. Discover how often he has to receive these stimuli before becoming convinced, e.g. heard once, multiple times, multiple sources or he might need continuous stimuli. Repeating the same concept multiple times helps in convincing


[via Sources of Insight]


Maturity Level of Software Teams


  • A software team can be at one of the following maturity levels:
  • Chaotic Stage – the state where a team does not posses the skills, motives or vision to become a mature self managing team.
  • Mid-Life stage – where a team possesses some skills for self management and decision making , and can make some of its own decisions without needing a team lead.
  • Mature stage – where a team is practically fully self managing and a team leader is mostly a coach rather than a decision maker.

The chaotic stage needs a strong, dictator like leadership – to bring much needed peace to a team that might be mostly struggling to keep its head above water all day long. A dictator team lead is there in the first stage, to bring the team up to a specific state, where they also have the time and patience to learn new things.

The Mid-Life stage needs a coach-dictator – where a team will learn the skills needed to become self managing.For example, the team lead teach the team to do its own code review so that the team lead is no longer the bottleneck, and so that the team learns essential skills for code quality and decision making.

The Mature stage needs a coach – just to help them to grow, to teach them new skills.

[via Mark Needham]

How to Think


Thinking is as simply asking and answering questions.  If you want to improve your thinking, ask better questions. 

Here are 3 thinking techniques:

How Might That Be True

When you hear something new, or information that conflicts with what you think you already know, ask yourself, "how might that be true?"  This simple question will open your curiosity. If you’re quick to prove people wrong, people won’t share information with you.  Rather than fight somebody on a point, right from the start, you can help them explore the point. You don’t have to agree.  Instead, you’re exploring possibility. 


PMI is simply Plus Points, Minus Points, and Interesting Points. This helps you expand your thinking.  Notice how the plus points are first.  This helps find the good first, before shutting it down with minus points.  By looking for interesting points, you find yet another class of insights.  This is where you might find some unexpected "ah-has."

Six Thinking Hats

by Six Thinking Hats technique, you explore multiple perspectives for more complete thinking.  The Six Hats are:

  • White Hat – the facts and figures
  • Red Hat – the emotional view
  • Black Hat – the “devil’s advocate”
  • Yellow Hat – the positive side
  • Green Hat – the creative side
  • Blue Hat – the organizing view

The most effective way I’ve found to turn these into action is to turn the hats into simple questions:

  • What are the facts and figures? (White Hat)
  • What’s your gut reaction?  How do you feel about this? (Red Hat)
  • Why can’t we do this?  What prevents us?  What’s the downside? (Black Hat)
  • Why should we go with this option? (Yellow Hat)
  • What are additional opportunities? (Green Hat)
  • How should we think about this? (what are the metaphors or mental models)  (Blue Hat)

If you’re in a room full of people, rather than fight on topics, you can team up.  Go to the whiteboard, write the list of questions above, and cycle through them as a group.  Instead of tug-of-war, you’re now teaming up on “what are the facts and figures?” …  … “why can’t we do this?” … “how can we do this?” … etc.  This technique helps “black hat critics” step out of character and your reduce the overall energy drain of fighting point by point.  Instead, you improve your overall thinking as a group.

[via Source of Insight]

Career Growth

A brilliant software engineer may have the talent to become a great project manager but may also very likely make a piss poor project manager. It depends much more on your given talents than it does on how long you’ve done anything. Don’t let yourself get ‘promoted to your level of incompetence’. Instead, if you’re good at what you do, look for more lateral movement: ie, better pay, better pick of the projects your work on and the technologies you work with.

If I were an IT/Development manager (which I am), I would certainly not want one of my best engineers being promoted away from what he/she does best. But I’d certainly be willing to give them money and quality of life improvements to keep them doing what they’re good at. That’s what you should aim for.

Promotions to different positions that require different talents because of ‘natural progression’ reasons almost always end up becoming an abysmal failure.

In my company at least, vertical growth comes from 1 consideration:

  1. Does the person possess the talents (not knowledge or skills, we can teach them those things) that we value in a person that will fill that role.

It should be noted: If someone is consistently doing terrible at their job (even with training and help from management), and they don’t have the talents to be very productive in another position: they’re fired; very quickly. We see this as an error on our part of the selection process and we strongly believe that someone in this position is doing an injustice to themselves to stay at that job and would be better served being fired and finding a job that suits their particular talents better.

On the flip side, we find that people who are great at what they do and are rewarded for it are much happier in their work and are much more likely to not want to move to a different position.

For instance, in another department we had a telemarketer who was quite poor at the job, but had the talents desired to manage that department. She was promoted to be the inside sales manager and the whole department’s bookings increased significantly (and consistently) as a result – likewise, staff retention in that department is at an all time high. Additionally, it should be noted that this new manager doesn’t (yet) make more than some of the people she manages. People are paid a wage that reflects their work performance.

If any employee needs something to make them better at what they do (new desk, new keyboard, new phone, new headset, books, software, whatever) it’s almost always no questions asked, it’ll be ordered by the end of the day

Career growth is a bit different from career movement. Growth in a developer position means we will buy you any learning resources (books/software/hardware) that will make you a better developer. Or management training/books/etc. to make you a better manager. Our philosophy is that you can’t ‘outgrow’ your position, but you can get better at it – and rewarded accordingly.

[via ]

Single most important thing to improve your programming career

The single most important thing you must do to improve your programming career is improve your ability to communicate.

To program, you must elicit ideas from other people and share your ideas with them. Sharing ideas comes in many forms: explaining how you did something. Suggesting a new practice for the team. Demonstrating how something works. Convincing everyone to switch programming languages. Persuading a brilliant engineer to join your team. Persuading your manager to get out of the way and let you do your thing

Advancing your career is entirely about communicating. Getting a job. Turning down a job. Asking for a promotion. Turning down a promotion. Getting onto a good team. Politely extricating yourself from a good team. Persuading a brilliant engineer to co-found a company. Helping a brilliant engineer understand why co-founding a company isn’t the right thing to do. Asking for funding. Turning down funding. Getting clients. Turning down clients.


Active Listening

–  Keep your mouth closed (It’s felt that if your mouth is open your ears will close).

–  Keep eye contact (this helps with attention levels).

–  “Listen” to the speaker’s body language.

–  Put aside distracting thoughts. Don’t mentally prepare a rebuttal (counter argument)

–  Acknowledgment can be something as simple as a nod of the head or a simple “uh huh.” You aren’t necessarily agreeing with the person, you are simply indicating that you are listening. Using body language and other signs to acknowledge you are listening also reminds you to pay attention and not let your mind wander

–  Encourage the speaker to continue with small verbal comments like yes, and uh huh

–  Reflect what has been said by paraphrasing. “What I’m hearing is…” and “Sounds like you are saying…” are great ways to reflect back.

–  Ask questions to clarify certain points. “What do you mean when you say…” “Is this what you mean?”

–  Take notes (this will help with paraphrasing) .

–  Don’t frown and fidget.

–  Let the person know if you have accepted or rejected what they have said and the rationale why..

–  Don’t suggest words or finish sentences when a pause occurs.

–  Listen, don’t solve or judge.

–  If time is an issue let the person know and schedule more time, or ask “let’s summarize what we’ve decided”.

–  Let the person know if more facts are required prior to decision making or for further discussions.

–  Be aware of your “non” listening behaviors ex. pencil tapping, raised eyebrows, blank stares, “zoning” out.

[via book For Your Improvement by Michael Lombardo and Robert Eichinger and MindTools]