Be a Better Developer 5.5 – Being a Salesperson – Tips

Thursday, April 22 2010

This blog post is part of a larger series named “Be a Better Developer”.  You can check out the intro, “Stop Being a Code Monkey” to get started from the beginning.  Each post will have a link to the previous ones and a final summary post will contain links to all entries in the series.



In the last installment of this series I talked about needing to have to be a good salesperson and why, even as a full time employee somewhere, this skill is important. I also indicated that this is a role I’m not comfortable in, so this time around I’m going to share some of the tips I’ve been working on myself.

Selling Yourself

Call it self branding, call it self promotion, call it whatever you want, but start doing it.  One of the reasons you may want to be a better developer is so that you can stand out among your peers and this requires some level of self promotion (do not confuse this with egotistical bragging).  There are lots of blogs and articles out there about selling your personal brand so I won’t go to far into this, but I will say that you should ensure that you have a business card (either your own or one provided by your company) and have a web presence.  Besides, by working on your own websites you’ll be increasing your skills (or at least keeping them sharper).

If you are looking for a job any web presence will be found, make sure it is the image you want to convey.  Say all you want about the fairness of a company making decisions based on someone’s personal Facebook account content, but it does happen.  I can’t stress this enough to students and younger people, but what you posted last night after that really great party will be read by someone in the future who is deciding if you are fit to work for their company.  Sad, but true.  Even if you aren’t looking for a job your web presence will be looked at by your current company, your company’s clients and your colleagues. 

Investing in YOU

Another aspect of selling yourself is talking to your employer about investing in you.  If you work for yourself this should be a pretty short conversation; however, if you work for a company (either full time or contractor/consultancy) this can sometimes be a challenge.  Budgets are tight these days for things like training and conferences, but that is no reason for you to stop learning.  Good employers should realize that when it comes to software development the outcome of their solutions and projects primarily rests in the hands of their people, and thus, it only makes sense to invest in their people to ensure they are up to date on technologies and have the tools they need to succeed.  They should also understand that good developers will migrate to companies who invest in them.

Let’s say you go to your manager requesting to go to PDC, which costs several thousand dollars to attend.  What sounds better? "I want to go to the PDC conference.  It sounds like a good time and they have an attendee party!" OR "I' d like to attend this industry conference. They are announcing X technology which I believe will help a great deal on Y project. They have an "ask the experts" area where I can sit down with the actual product teams and get information on why the Z system keeps having issues. Here is the costs I'm estimating for the event”. 

Managers are likely to say no to anything they don’t have enough information on.  By supplying direct reasons how this trip will benefit the company both immediately, and perhaps in the future, you are giving them reasons to at least weigh against the cost.  Also, note that the second approach didn’t hide anything about the cost and provided an estimate.  Managers are generally busy people.  You should give them all the facts you can when you ask for something.  This will cut down on the time they have to spend digging on their own, or sending you off to do more research.  It will also give them the information they really need to make a good decision for the company.

Understand that no matter how much money your company rakes in, there are budgets and sometimes there just isn’t the money to do something like PDC.  Don’t get discouraged about this and seek out other, cheaper opportunities.  There are many smaller, regional conferences (at least here in the U.S.) that can give just as much, if not more more, benefit than the larger conferences.  Conferences like CodeMash, CodeStock and devLINK are great examples.  These regional conferences are not only cheaper to attend, but the connections you make there will be more local to you, thus bolstering your local network (see below).  In addition to the conferences, there are also one day events like Days of .NET, Code Camps, TechFests, Firestarters, etc.  Lastly, don’t forget the vast amount of paid and free training material you can find without leaving your desk -- sites like TekPub for online learning and online webcasts.  Many times these day events and resources are free and only cost your company your time at the office.  Some of them are even on the weekend, which means it only costs you your time.  That can be a pretty small cost to you, but a great investment in yourself. 

Remember, if you expect your company to invest in you by giving you time and paying for these things, you should also be willing to invest in yourself as well.  I listened to a great talk by Joe O’Brien at the 2010 CodeMash conference about “Refactoring the Developer”.  One of the statements he made was that early on he had made a commitment to spend a certain percentage of his income to improving himself and his career.  I do the same thing, and while it’s not a set percentage with me, I understand that I can’t expect my employer to invest in me if I’m not willing to show them that I invest in myself.  I spend my own time learning new technology. I pay for several conferences and learning materials on my own.  I sometimes have to spend my own vacation time to attend some of these events (I’m paid by the hour, so no billing = no income for the most part).  By investing heavily in myself and my career my employers understand that I’m committed to being a good developer and it’s a much easier sell when I do go to them for help.  Of course, it helps that my company has a policy for education budgets. :)


Build Your Network 

One of the biggest benefits I get out of the community is having an ever-expanding network.  Every community event I attend I meet new people with interesting ideas, and of course, their own perspectives.  Getting to know these new people and listening to their thoughts provides a tremendous opportunity for learning from others.  Some salesmen will tell you that it’s all about who you know and the relationships you have with them.  I completely agree with this, and I’m working on building good relationships in both business and the community.  Building a network will lead to a lot of good opportunities for a developer to stand out.

In a presentation once I heard “build a network of like minded people”.  This particular presentation was about organizational dynamics and I agreed with a lot of the sentiments; however, I also think it is very healthy to have people in your network that aren’t necessarily of like mind as well.  The reason the talk focused on the point of building that network of like minded people was so that you would have a base of supporters in your organization when you went to sell an idea or solution.  This is good advice, but just make sure that you don’t build up such a group of like minded people that your organization takes on a hive mind mentality.  Sometimes the best ideas come from passionate debate, so having people in your network that will challenge your ideas and provide alternative ideas is also very important.

How do you build your network?  Go to conferences.  Go to user groups.  Get involved in the community.  At work, take time to talk with your coworkers and learn from them.  Set up a Nerd/Geek Dinner and invite your colleagues.  Some people scoff at social media sites like Linked in and Twitter, but they do wonders to help build up a base of relationships.  After that, it’s up to you to invest in those relationships to make them strong, but if you take the time, they will reward you with unexpected opportunities.  Building a solid network will make you a better developer by exposing you to new ideas, technologies and giving you a support group when you run into issues you need help with.


So, Mike, What are you Doing?

I’ve said that I’m working on getting better at this role myself, so what am I doing to invest in myself?  What am I doing to become a better salesman?

  • I’m reading articles and books on leadership.
  • I’m investing in myself on my own time and my own dime.
  • I’m going to my company and asking for resources/time to invest in my knowledge for things that will benefit the company.  Remember that education budget I mentioned?
  • I’m working on building solid TWO-WAY relationships with members of the community and in business to grow my network.
  • I’m going to conferences, events, etc. to learn as much as I can.



So to wrap up this article I wanted to say that it’s important to 1) invest in yourself so that it is easier to sell the idea of others investing in you, 2) build your network to help learn and get a broader reach and 3) learn to present your discussions/solutions/ideas well to your managers and coworkers. 


Previous Posts in the series:

  • 0 – Stop Being a Code Monkey (Intro)
  • 1 – Being a Student
  • 1.5 – Being a Student – Tips
  • 2 – Being a Janitor
  • 2.5 - Being a Janitor - Tips
  • 3 – Being a Researcher
  • 3.5 - Being a Researcher - Tips
  • 4 - Being a Plumber
  • 4.5 - Bing a Plumber – Tips
  • 5 – Being a Salesperson