I spent decades as a programmer or a manager of programmers.  I’d like to think I picked up some useful tips along the way.  Below are some ideas I’ve shared with new programmers over the years.  Hopefully some of them will be useful to you!

People Skills are Very Important

If you are a programmer chances are you are drawn to computers, code, and technical things.  Soft skills like working with others, expressing yourself, and clearly describing what you are doing don’t seem to be very important.  That may have been true at one time.

However, things are very different now.  Companies can always go to a different cheaper source to find technically skilled programmers.  What sets programmers apart is the ability to communicate well, work well with peers, and lead others.

The Actual Programming Language You Know Isn’t That Important

Over my career I hired hundreds of programmers.  For many of those years I worked for a company that used a programming language called Mumps.  When it came time to hire it was extremely hard to find experienced Mumps programmers.  But what I discovered and proved true over the years was that a good programmer was a good programmer and the language they knew wasn’t that important.  We would hand them a Mumps book, provide an experienced Mentor, and they would be fine within a few weeks.

Now I know this rule isn’t perfect.  There are times when you need an expert in a particular language, but not that many.  It was always hard to convince HR recruiters as they were used to having to have candidates “check the boxes” of a particular programming language skill.

Never Stop Learning

This one is probably the most important.  Once you are established at an employer it is easy to just put in your time and do a good job, and that’s it.  Reality is that the work you are doing is only part of what is needed.  Always be learning.  Keep up with what is new.  An expert programmer will become dated very quickly if they don’t keep learning new skills.

Put Out the Extra Effort Initially

When you first start a new job go crazy!  What I mean by that is put in extra time and effort.  Meet with and learn from everyone.  Put in some time studying on the weekends.  The extra effort you put in initially will pay off in many ways.  The benefits are not just for your employer, they are for you!  You will quickly become more valuable, confident, and generally like your career better.

Always Have a Side Gig in the Works or an “Iron in the Fire”

This one is simply the current reality.  It used to be the idea was to get a position at a big successful company, work hard and you were set for life.  This simply is no longer true, no matter how good you are at your present job.  Companies are bought and sold every day and jobs are eliminated.  Layoffs are common and regular even when the company is making big profits.  They will get rid of a thirty-year employee without hesitation if it saves them a few dollars.

There are a couple ways you can address this reality.  First, on the day you accept a new position you start looking for your next one.  Maybe you don’t spend as much time and effort as you did before you were hired, but you never stop.  Keep your resume up to date and learn new skills to add to it.  Go on occasional interviews to keep up your interviewing skills.  You need to manage your career yourself; your employer is not going to do it for you!

Secondly, whenever possible have a side gig.  Maybe you build websites on the side or write technical articles.  Do something.  This doesn’t mean you don’t give your employer the effort they deserve.  They are paying you and deserve your best.  But make some time for your side gig.  It allows you to learn and practice new skills, may provide contacts for the future and even provide at least some income if you lose your primary job.

Always be Learning Something New on the Side

I mentioned this briefly above.  Always be taking a course, working through a book, or doing a side programming project.  It can even be fun.  Most programmers got into it because they love playing around with code.  I’m a living example.  I started out in banking and coding was my hobby.  Eventually I became a programmer and then a manager of programmers.  And you know what?  I still write code on the side as a “hobby!”

Promote Yourself – Linked In, Blogging, Mentoring

You need to promote yourself.  By this I don’t mean shameless self-promotion.  The best way is to do it is to help others and in the process you end up helping yourself.  Even if you are a fairly new programmer you can mentor another even newer programmer.  They will really appreciate it and others will notice.  Can you write about your experiences?  If you use Linked In provide value by writing useful content.  Can you blog and show examples of code as you learn?  There are many opportunities for promoting yourself that aren’t tacky!

Volunteer for New Projects

The fastest way to get promoted is to volunteer for new projects.  Try to find projects that are a little bit of a “stretch.”  Try to always act like you are already doing the work of the position you are aiming for.  Eventually it will just naturally happen.

Make Yourself an Expert in What the Company Uses

You want to become an expert in whatever tools and languages your employer uses.  This is important for several reasons.  First it allows you to get ahead at your current employer.  Second you learn new skills that may be useful in the future, and you are learning while being paid.  This is a win-win.  You want to become the person everyone comes to when there is a question about your employer’s tools, languages, and processes.

Get to Know Your Company’s Customers

Depending on the size of the company and where you are in the hierarchy this one is not always easy.  But it is important.  Management cares greatly about their customers and it looks good that you know something about them.  It is a good way to demonstrate you are “management material” if that is your goal.  And you never know where it can lead in the future.

Well, there you have my tips for a new programmer.  I may delve more deeply into some of these tips in future articles.