Not Just a Programmer: Let Your Personality Shine Through

Just be yourself — it’s the only way it can work.
— Johnny Carson

You are a programmer, and you are building your brand, but that does not mean that the only thing you should present to the world is code.

People want to get to know who you are. They want to learn from you but also get an idea of the person behind the coding tips and technical knowledge. So let your personality shine through your work.

Are you are horseback rider? A motorcycle racer? A husband and father of a special needs child? Don’t be afraid to let people know it.

Be Yourself In the Office

You need to be yourself in the office and company you work for.

shi1When I first started at my current job, I held back in many ways. I acted in a reserved way, feeling out the culture and the people. Because, I have other interests beyond programming, some of which people tend to have strong reactions to.

But as I got to know people better, I began to slowly dribble out more information about myself, to let them see who I am. That meant telling them about my herniated back that I got from trying to start a farm and failing at it. I was cautious about doing so at first, because, what if my bosses became concerned that I would not be able to do my job due to back troubles? But I did so anyway, so that I didn’t have to try to hide what was ailing me.

It also meant revealing that I was a Catholic apologist (and then explaining what “apologist” meant). That may not seem like a big deal, but it turns out that the managing partners of my company hold the very kinds of belief that I wrote a provocative book about. What if they read my book and got offended that I was challenging deep-seated religious beliefs that they held?

Nonetheless, I have a public presence in that sphere doing radio shows, blog posts, books, and interviews, so I figured it was better to tactfully reveal it instead of hoping for security through obscurity.

Tact is required when letting your personality shine. Some interests that you have may not be shared by coworkers, and could even be considered in a negative way by them. (In other words, not everyone may be as into death metal as you are.)

Let Yourself Shine Through Social Media

Usually being yourself in social media is easy, perhaps almost too easy. Twitter especially lends itself to fast tweets that people come to regret.

That said, people are connecting with you on twitter because they expect to get to know you. They find you interesting and want to see who you are, what you write about.

tweeBut it can go too far. I followed a popular developer whose mobile app framework I have used. I read his tweets over several days but none of them were about mobile app development; they were all political tweets about this or that party and candidate.

Now, I happened to agree with him on most of the issues, but I unfollowed him, because I am interested in his mobile programming work, not his political views. I’d have been fine if he had mixed in a political tweet with ten other programming ones, but all politics, all the time was overboard.

For facebook, if you have a page for your blog or business, mix up the posts by sharing other content you find interesting and adding commentary on it. Include some personal reflection or experience you had related to it.

Doing so shows that you are actually managing your page and that you don’t just share your own site’s posts. It makes you more real and also more a giver than a taker.

On your blog, you have the opportunity to write meaty blog posts that contain lots of personal experience. Yes, show us the code and patterns and how you figured out the solution to a nasty bug, but also let your voice come through. It’s okay if you’re a nerdy guy, or if you are a bird watcher or salsa dancer. People love to find out those tidbits.

I followed a blogger for years who was into a religious topic, plus science fiction shows and books, plus square dancing, and eating low carb meals. I was interested in two out of the four topics he blogged about, and I found reading his opinions on the others interesting in a curiosity sort of way.

But Keep Some Parts of Yourself Private

For example, keep your private parts private.

A friend of mine owns a business and interviewed a young man for a position.

He liked him and was going to hire him. But he did a cursory google search for his name and his facebook page came up. The guy’s profile photo was of him naked, holding a beer in one hand to cover his genitalia and pointing to the sky with the other hand.

My friend called him and said, “sorry, I can’t offer you a job. Our clients could search for you and find the same photos, which could cost us business. You should consider being more discreet about what you show.”

The guy got offended (of all things) and said, “this is who I am. If you don’t like it, too bad.”

Well, yeah. But, certain basic boundaries do exist and should be followed. Prudence and tact are important, even when letting the real you be known.

Spicing Up Software

Programming can be a dry topic. But programmers are never dry. Show your technical expertise to the world, and do so with your own personal panache.

hanseI think a good example of someone who shows personality is Scott Hanselman. He writes and speaks on many topics but brings a humility to it, and a human-ness that is appealing. While clearly a sharp developer who has done tons of different work across a broad swath of technologies, Hanselman is also willing to reveal that he doesn’t have it all figured out and that he even has doubted his own skills many times.

When I first began my blog talkingincode.com, I went straight to the topics that were on my mind and heart at the time: leaving a company I had worked at for almost 14 years. It was a bit raw and unfiltered, and I received feedback from good friends that I was being to harsh and critical.

I reflected on their feedback and ended up going back and revising many of the original posts. I deleted a few too. If what I wrote would not help anyone, but was only me venting, it wasn’t something I wanted to remain out there. Best if I had thought more about it before posting in the first place, since caches can last forever. That said, better to delete something I regretted than to leave it there in perpetuity as if I still stood behind it.

Now I am pleased that the posts I wrote showed forth some vulnerability in what my career had looked like, what difficulties I had faced, and how I decided to make a big change by leaving my company and going to a small, private company. Other developers have messaged me privately and told me that my posts struck a chord with them–even that they felt as if they could have been the ones writing what I wrote. That is a great feeling.

So let your voice shine, and strive to make it the best version of yourself that comes through. Inevitably and at times you will fall short, but that itself is a learning process that you can grow from. Your audience will appreciate your candor and humility.

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

Read More


Level Up Your Programming Skills And Connections Through Volunteering

Do you feel stuck in your current job?

Maybe you are working on Line of Business desktop apps but you really want to be doing native iOS or Android work? Perhaps you are working for a large corporation–and have been for years–attending a lot more meetings than you used to, and you keep hearing about the good life at small startups.

I’m going to let you in on a little secret I accidently discovered just a few years into my career. I’ve pivoted multiple times, by choice, and last year landed my dream job as the technical co-founder of a local startup in downtown Austin. So what’s the secret?


That’s it!

Now, don’t click away just yet. Thar be some powerful concepts at work behind the gift I just handed you, matey! Stick with me so we can unpack this box.

First Volunteer Work: Sys Admin

First, let me explain how I figured this out.

Active Directory Users and Computers
About 15 years ago I setup a 25 PC, Windows 2000 network for a women’s crisis center for free. It’s a long story but the point is that at the time I didn’t really understand the value of what I did. I just needed
the experience because I thought my dream job was to be a Windows NT systems admin and I was studying for my MCSE at the time. (I aced the tests btw). I completed that project and landed a paying NT Admin job later that year while feeling good about helping a good cause.

Since that experience I’ve successfully voluteered my time to nonprofits, startups, and friends with small businesses. The project size and scope is really up to you to define just as long as it’s valuable to everyone involved.

Forget About Money (For Now)

First off, too many people I know won’t take this advice because they are stuck and failing at earning “market rates” for their work. Your compensation is going to be real world experience that deserves a prominent spot on your resume.

io1Or maybe they don’t have the time. Heck, it’s midnight, and I didn’t start writing this until after I put the kids to bed. I wanted to help a friend by guest posting and sharing some of my best ideas though. I happen to like writing and sharing knowledge with others. (Side note, guest posting is a great way to volunteer your time.) Look for projects which have a very defined scope that you think you can pull of in the time you used to spend power watching random two-star sitcoms on Netflix.

Trust in the fact that it will pay off in the long run. Good deeds don’t go unnoticed.

Problem Solving IRL

In addition to experience, there is something about listening to a client explain their problem forcing you to come up with the solution. That’s the type of knowledge that won’t appear in a textbook and that’s exactly the type of real world problem-solving ability that future employers are looking for.

Volunteering sends a message about the type of person you are. Explaining the project work you did for a nonprofit is interesting. Knowing that you did it to level up your game says a lot.

References Matter

You are also going to walk away with a solid reference if you are successful. Go check my LinkedIn recommendations that others have written.

I received a glowing comment by Kent Odland for volunteering my time to his young startup last summer after having coffee with him once. It was an interesting startup concept and I wanted to learn a specific skill he needed. He didn’t believe me at first. I think he thought I was trying to steal his IP or email list because he asked me to sign about 5 pages of legal documents saying I would be liable for missing deadlines, etc. I didn’t end up signing anything other than an NDA. I simply had the time and wanted to help him.

Do you think Kent would bend over backwards to get me an interview at his employer if I asked him to? I’m pretty sure he would!

Be Of Service To Others

As engineers we typically think of learning as a solo activity. We go buy a book, read through every search result on google and stack overflow, then maybe we create yet another Todo list project on Github, etc. Trust me, I’ve been there too and I still have to resist the urge to rely solely on this method of learning.

Thread Co-Founders
The Thread founding team

What’s interesting is the mental shift that happens when you are working for someone rather than simply working on something. The former requires accountability and relationship building, while the latter often lacks direction and purpose. I’m willing to bet you will learn more at a faster pace by working for someone or some cause than if you go it alone.

When I say “working for someone” I’m talking in the noblest sense that you are being of service to another person. Which is a very humanizing thing. People inherently care about people they know. Working side-by-side in the trenches is such a powerful mechanism. You simply cannot get to know a person by meeting for coffees alone. Work for them, work with them, in order to get to know them.

“The best way to find yourself is to lose yourself in the service of others.”
– Mahatma Gandhi

Engineering work can be isolating, while career building is a team sport.

Don’t Overthink It

Don’t be tempted to try to identify projects only for people or companies where you believe they could directly help you in some way. If you read about my journey to becoming the technical co-founder of Thread, you might think I had some master plan at work.

The truth is that I didn’t have a plan other than trusting in the process. In hindsight it’s easy to line up all the events that took place and draw a straight line between points A and B. However, that’s not the whole story. I volunteered to help four different organizations last year and three of them didn’t directly lead to my current opportunity. But I do have a stronger network filled with people who would love to help me if I called on them.

Takeaway: Volunteer To Learn Specific Skills

The final lesson I want to leave you with is that my only “plan” was to be of service to others while developing some very specific skills.

In this case, my thesis was that iOS development was in high demand and my enterprise mobile background was already a good foundation for this pivot. I made a ton of connections along the way and many of those relationships will just continue to grow. I never knew where it was going to lead me but I was always confident that I would find something interesting if I kept going.

I hope you consider volunteering time as a valuable career building strategy and a great way to help those around you.

Be hungry and trust in the process my friend.

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

Read More


9 ways to advance your career with core values

In a previous post we went over learning your core values.  Once you know who you are, which values make up your foundation, and the pros and cons of each of your core values, it is time to put them to good use.  Let’s see how we can use your core values to advance in your career!  I went into great detail for each one of these bullets so feel free to click into a topic that peaks your interest.  Otherwise a summary is provided.

  1. Continuously build and maintain relationships
    The most important part of a successful career (other than knowing your primary job skills) is the ability to build relationships with others.  It is what gets you a job.  It is what keeps your job.  It is what allows you to advance in your career.  And when you need another job, with enough investment in relationships, you will eventually no longer need to look for a job – they will find you. The notion of never burning a bridge is very important to live by.  The higher you go in your career the more key people you meat.  It slowly becomes harder and harder to go anywhere where you haven’t worked with someone at the new company.  Ensure that you reputation with everyone you meet remains intact.
  2. Strive to always be awesome
    Being awesome is something that most people think is just a way of approaching the world.  An attitude.  A state of mind dude!  But in reality being AWE-some for a person doing the job that they are paid a great deal of money for in a normally acceptable manner IS NOT AWESOME.  It is just what is expected of you.  To be awesome you have to go above and beyond.  You have to never drop a ball.  Always be on time.  Ensure proper communication is freely flowing between you, your peers, your managers, and your customers.  In the link I describe different points to measure yourself against.  Every time you fail at doing something deduct a point from an allotted 10 points a day.  Being AWE-some means you keep all 10 points every day.
  3. Lead from the front
    Leading from the front doesn’t mean standing out in front of your team telling them what to do.  Instead, you stand out in front of your team and inspire and persuade them to come together as a team and mobilize towards solving problems.  The expression of you get more with honey than you do with vinegar is an easy way to visual the difference between a commanding “boss” and an inspiring “leader”.  But from time to time leading from the front is exactly that.  Get out there and show your team that you can do it too.  Show them the direction you want to go and how you want to get there.  They will follow.
  4. But be a servant leader
    Sometimes being a leader ISN’T about leading from the front.  There are also many softer skills at play to being a good leader.  Cultivating a trusting relationship with your team is equally important to having the ability to take people in a specific direction.  You need to be aware of your teams needs.  Be willing to listen to them.  And after you hear them, be willing to help them.   Do everything in your power to help every member of your team grow in the right direction.  Persuade your team to do the next thing as though it was them that came up with the idea.  Never command, berate, or belittle.
  5. Complain with solutions not problems
    There is a whole industry of people that just focus on fixing what ever they are involved with.  These folks generally walk in the door and immediately spot all the little areas of inefficiency.  Generally nobody see’s this person as a complainer.  Instead they see this person as a positive benefit to the team.  What is the difference between this person and everyone else on your team that see’s problems?  These people bring a solution or three with their identification of an issue to be resolved.  And, the only way to complain in an upbeat way is with the solution in hand.
  6. Live the company culture every day
    Knowing the core values that the company is building its culture on top of is important.  Write them down.  Actively pursue living the core values out loud for all to see.  Measure your ability to live the core values.  And for the core values you struggle with, make a plan to get better.   The better you are at living the core values on a daily basis the more likely you are to resemble the team members that the company executives will notice.  And if they really value their core values they will make an example out of you.
  7. Don’t take everything seriously
    If you are a programmer, most likely you make a good salary.  Or at least you see a good salary to be made in your near future.  So then why do you take everything so seriously?  There really isn’t any reason, most of the time, that you can be a smiling happy person to work with.  Nobody appreciates working next to a person that is always a grumpy person.  I figure it this way – You aren’t launching rockets!  You aren’t running towards bullets!  The odds that you will die in a firey explosion because of something you did wrong or didn’t do on time at work is very slim.  This doesn’t mean do things wrong.  Nor does it mean that you shouldn’t be a professional and strive to deliver everything on time.  But smile either way when dealing with your first world problems.  Don’t take everything so seriously you forget to live happily.
  8. Don’t be the i in TEAM
    A team is made up of people that are fair, accountable, respectful, on time, courteous, and approachable.  They are an example of all of the company’s core values.  They work hard to achieve their goals.  But they also help each other out to achieve the teams goals.  But we have all worked with “that guy”.  The guy that was rougher around the edges a little more than the company culture would normally allow.  This person is usually a technical over achiever which is the reason they are allowed to stay beyond their cultural usefulness.  The key to working with a person like this is to establish a personal relationship.  Get them to be a friend if possible.  Start to determine where their inner A hold voice comes from.  Sometimes it is just that they are highly passionate about the product they are building…and feel that everyone they are working with is incompetent.  What ever the reason – be open minded to their reasoning.  But one things if for sure, don’t be that guy!
  9. Assume responsibility not ownership
    It is important for both you and the company you work for that nobody becomes the sole person that knows how to do a thing.  It is also your responsibility to ensure that your fellow team members also don’t become that guy.  There are many reasons that this is important.  For you, it is very hard to take on new responsibilities, moving up in the company, taking on bigger projects, etc. – if you are the “only person” that can do something really important.  This is an entirely different form of a career limiting move.  If you have a team member that is like this, you should do your best to move them on to new responsibilities, or out of the team entirely.  If they get “hit by a bus”, or for many other reasons can no longer make it to work, who is going to do what only they could do?  This could leave your team and company in a lurch for an unknown period of time.

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

Read More


Assume responsibility not ownership

It is your job to be good at what you do.  What ever it is, do it in the most AWE-some way possible.  There should never be any doubt from others about your capability to do that thing you do.  With this as your reputation you will find that all sorts of things land on your plate for you to do.

However, be very careful that you don’t fall into the trap of taking ownership of something.  I have worked in many places where people thought they were doing their team a service by being the only guy that was able to work on a system or section of code.  Instead always take on a challenge with open arms and a smile.  But always “work your way out” of what ever job you may have.  Document what you have done.  Pair program with team mates to ensure that you are not the only person that knows something.  The best way to take on that next responsibility, or even better, move up in the company, is to back fill your position in real time.  Otherwise you will find that owning something leaves you hand cuffed to it forever.

…you will find that owning something leaves you hand cuffed to it forever.

There is another way to look at this of course.  And this part is the team member that you should always be on the look out for.  Some people take it upon themselves to take on a responsibility with the intent of owning it.  They feel that this is a way to ensure your job security.  After all, if I am the only one that knows how to do something, or I am the only one that knows the ins and outs of the system, surely they will keep me on for ever!  Right?

I have to be honest.  If I am the team lead, manager, or otherwise – I am always on the look out for this sort of person.  Single person ownership is an evil on a team.  How can you be on a team after all if you can’t actually help one another?  When I find these sorts of i (in TEAM) people I actively try to get them out of the ownership role.

Sometimes this is just a matter of having them pair with the new “owner” being in the driver seat.  Other times you may have to move them to a new responsibility entirely.  And other times you may have to promote them away from their responsibility or exit them out of the company.

But be sure, having anyone be a sole owner of a system is a pit fall that no company should lightly embrace.  Even if there is nothing but the best intent on the part of the owner.  The “bus factor” can hit any of us at any time.  This could quickly leave a company in a hole, unable to support a critical system for some period of time, or unable to address customer issues in a code base.

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

Read More