It is an exciting time to be a programmer. More companies than ever are hiring programmers. As a result, salaries are increasing, programmers are in higher demand, and the field is experiencing dramatic growth.
It’s great news for programmers.
But, within this excitement, many competent and skilled developers routinely get passed over for promotions, fail to get interviews at their dream companies and struggle to make forward progress in their careers.
There’s nothing wrong with their coding skills. Often, it has nothing to do with their technical ability.
One common mistake many programmers face is that they focus TOO MUCH on becoming the best programmer they can be and not enough on developing the skills that help them stand out from others in their field.
So, assuming you are a good developer, who works well with others, is reliable, and gets things done, what can you do to stand out?
Here are some great ideas!
Be a great communicator.
Excellent communication is one of the best and easiest ways to yourself apart from other programmers. I know we have a reputation for being poor communicators, but it’s not true!
Communication is essential to your success. One of the problems is that in the modern world, we communicate in so many different ways, face-to-face, work chat, email, presentations, meetings, etc. It’s hard to be good at all of them.
You don’t have to be. Pick a form of communication you aren’t good at, like presentations or writing, and find resources to help you. Join Toastmasters International to work on public speaking. Take a writing class, or read a few articles to help you.
Before long, you could be the one who’s always great at presenting project updates or the perfect person to consult on the instructional materials for the new software your team is developing.
Always consider the “big picture.”
As programmers, we spend a lot of time looking down literally and figuratively. We spend our days at our desks, solving problems, writing, and debugging code. And, because we spend so much time focused on what is in front of us, it can be hard to shift our perspective onto the bigger picture of our work.
But, those who can become essential because they can spot potential issues and problems long before they become interruptions in the workflow. “Big picture” thinkers often ask themselves questions like:
- How does our work fit into the larger project?
- Who will read our code, and will it make sense to them?
- How can we make our work more accessible for other people to understand?
- Have we anticipated problems or issues and planned solutions?
- Have we gotten everything we need from other people involved in the project?
Being a big picture thinker can help you avoid delays, problems, and issues before they begin to cost you time and money.
Dedicate yourself to learning
The most exciting thing about programming is that it’s constantly changing. New languages, concepts, and ways of doing things are always popping up. It can be a bit overwhelming at times, but it’s essential to dedicate yourself to learning.
- Consume free resources, like blogs, YouTube channels, newsletters, and more.
- Use classrooms, degrees, and advanced certifications.
- Attend conferences.
- Join online communities.
There are many ways to learn about what is happening; only a tiny part of that learning comes in “formal” settings. There’s always something to learn; if you love this stuff as much as I do, that’s the best part.
Connect coding with different skills
Programming is everywhere today, with businesses of all sizes desperately needing skilled programmers.
Many fulfilling and lucrative careers as programmers don’t always involve sitting behind a computer all day and writing code. Although you may enjoy the process of programming, you may discover quickly that programming all day as part of a team isn’t what you want to spend your career doing.
Steve Jobs, Bill Gates, Larry Page, Elon Musk, and Mark Zuckerberg are people who spend their careers combining programming skills with something else, creating businesses, technology, and products we all use daily. These people didn’t sit behind a computer all day, creating code. They combined their knowledge of programming with other skills to create something extraordinary.
Remember that at the end of the day is all about the users and the product, and not so much about how clean the code is.
Always keep a long-term mindset.
We live in a world that tends to prioritize instant results. The problem with this mindset is that sometimes you don’t get the desired results.
Think about your work, career, and impact from a long-term perspective. Maybe you didn’t get that promotion you wanted. You could leave the company. But what if you stayed, swallowed your pride, and helped the person who got the promotion?
When thinking about your work and career, don’t just think about the next six months. Step back, slow down, and think about where you want to be in 5, 10, or 15 years. It will put the minor issues you face every day into perspective and help you make decisions about your career that will move you in the direction you want.
Master the fundamentals
The fundamentals are the fundamentals for a reason. Master them. Many things will change throughout your career. But the fundamentals of good programming are as permanent and unchanging as anything in this industry.
It’s easy for us to get enamored with new technology, new languages, and new things, but none of that does any good if you don’t have the basics mastered.
Employers, coworkers, bosses, and anyone else who works with you will appreciate that you’ve mastered the basics as much, or maybe more, than your understanding of some new cutting-edge development.
Invest in others
No matter where you are in your career, you will have opportunities to invest in people, teaching them skills, helping them improve, and preparing them to be their best version.
But, will you see these opportunities?
Or, will you be so focused on yourself that you miss them?
Always look for opportunities to help people learn, grow, and improve themselves. It’s tough when we are all so busy, but the rewards are immense.
Often, these investments come back to help you when you need them the most. But, even if they don’t, it’s incredibly satisfying watching someone who you helped go on to achieve good things.
Build and maintain good professional relationships
This is harder than ever in the age of remote work. It’s hard to grab a bite to eat with someone who lives 6 hours away over video chat.
And the constant pressure to get things done, be productive, and deliver results can sometimes convince us there’s no time for good professional relationships.
This couldn’t be farther from the truth.
Inside your company and outside, there are intelligent, engaging, and knowledgeable people who work in similar careers who would benefit from knowing you.
Networking is hard because it is forced, uncomfortable, and often transactional. Two people meet, have coffee, and try to form a relationship with someone to have a “professional” connection. You don’t have to do it this way.
Meeting people and networking with others in the industry can grow out of conferences, special interest groups, and more.
Find a mentor
Where do you want to be in 5 or 10 years? What position would you like to have? What title? What responsibilities?
One of the simplest and easiest ways to get there is to find someone currently doing something you’d love to do and learn from them.
Mentoring is incredibly valuable for you. The right mentor can offer solid career advice, clarify your thinking about what you want to do, help you see opportunities, and help you navigate complexities in your career.
They are invaluable.
But, it’s intimidating to look for that person.
Do it anyway! Email them, call them, and ask them out for coffee or lunch.
The relationship, support, and advice you’ll get could change your career trajectory.
Would you be interested in me as a mentor? Send me a message and let’s talk.
Take care of yourself mentally and physically.
There’s no doubt about it. Programming can take a toll on your mind and body. Wellness as a developer is something you must prioritize.
The programmers who prioritize their physical, mental, and emotional health are almost always more productive, developing better code and having longer and more successful careers.
They minimize the late-night caffeine-fueled programming sessions, get outside, move around, and enjoy their life.
Try new things and always be willing to fail.
The world of programming is constantly moving forward because a particular breed of a programmer is happily willing to fail at something 99 times to deliver something new and better on the 100th try.
Other programmers are so scared of making mistakes that they never learn new things, develop new skills, or try new things.
Guess which person quickly becomes irrelevant?
Failure isn’t just a part of life. It’s a part of programming.
If you want to stand out from the crowd, develop a sense of fearlessness and willingness to take on new things.
Writing code is only one part of the job.
You’ve probably guessed a theme in this article.
Great programmers know that building a successful development career is only partly about writing code.
But, it’s only one part.
Great programmers know that their skills at a computer aren’t enough and dedicate themselves to becoming a whole person.
Now that you know what to do! It’s time to go out and shine!
Thanks for reading!