In a recent discussion with a colleague, we were pondering the idea of how a coder can become a consultant. When I say coder, I’m referring to someone who has become skilled at the craft of developing software. This is not a junior developer, but a developer who has the ability to solve complex software problems. When I say consultant, I mean a coder who has: confidence, social awareness, persuasiveness, and the ability to negotiate.

In more concrete terms, a consultant can code but also has the ability to sell ideas, elicit requirements, negotiate scope and cost, and maintain a positive client relationships. An initial step in this journey is building confidence. Specifically the confidence required to speak in front of groups. This article will focus on some steps you can take to help build this confidence and reduce your anxiety.

Study those with success

Anxiety-level: Low
Confidence boost: Low

A good first step is to study those who are successful consultants and try to learn from their actions and behavior. These can be colleagues or speakers at conferences. There are plenty of videos online of very skilled presenters (e.g. InfoQ is a great source). Pay attention to the way they interact with others, how they present to an audience, and how they carry themselves. You can use and practice their techniques when you follow the other steps outlined below.

Demo your code to end-users

Anxiety-level: Low
Confidence boost: Medium

A common agile practice at the close of an iteration or sprint is a demo. The demo is a time to be proud of your work as you show off your accomplishments. By walking through your code in front of the group, you can begin to overcome any fears of speaking in front of a group and positive comments from the end-users help to boost your confidence. Demos are an easy place to start speaking in front of groups thanks to their scripted nature. Your likely to feel more comfortable because you know exactly what you are going to say. If your team doesn’t follow this practice, recommend that they do.

Get involved in requirements gathering

Anxiety-level: Medium
Confidence boost: Medium

Perhaps you are already working with users to elicit requirements. Certainly direct communication is preferable between developers and end-users to gather requirements as this ensures a common understanding of the end goal. In addition, it helps you as a developer to become more skilled in social interaction as you work to gather the information necessary to implement a solution. Communicating with end-users requires the ability to build rapport and communicate effectively. The next time your team is gathering requirements for an iteration or sprint, speak up and be an active participant.

Present to your team

Anxiety-level: Medium
Confidence boost: High

Recommend that your team hold lunch-time or after hours learning sessions and volunteer to be the first speaker. Not only is this a way to build knowledge among your team and show yourself as a leader, but it will help polish your skills in speaking in front of a group. Make sure to take questions from the group and try to elicit conversation. Being comfortable and confident with thinking on your feet is a critical skill that requires practice to do it well. Practicing this skill in a comfortable setting in front of your colleagues will help to reduce anxiety.

Present to your local user group or at a conference

Anxiety-level: High
Confidence boost: High

Once you feel comfortable in front of a group, you can take it to the next level by finding a good topic and presenting at a local user group or conference. Speaking in front of a large group of strangers can initally be a nerve-racking experience but accomplishing this feet will greatly boost your confidence.

Tips for Success

  • Never focus on mistakes. If you make a mistake, simply move on or you can even joke about it. Joking about mistakes often makes a group like you even more as it shows humility.
  • Be prepared. The Boy Scout motto is actually very useful for reducing anxiety. You will always feel better if you are very knowledgeable about the subject matter you are presenting on or if you prepared questions for end-users ahead of time.
  • Find a mentor. A mentor can provide useful tips for improvement by observing you and providing guidance along the way. A mentor often has plenty of insight from personal experience that he or she can instill in you.

If you have other tips from experience that help to build confidence, please post them in the comments.