The good thing about being a developer is you can code from whatever age to whatever age. The bad thing is you may not reach the position, recognition, or level you always wanted.
These are 10 things I wish everyone in tech to know and to help you improve and recognize it before it is too late to make a move.
Sticking to a Single Stack, Language, or Tool
We all know that person that is a fan of a particular stack and thinks they can solve any problems with it. They are deep into it and often complain about everything else.
We all have our favorite programming language but every stack community is different and there is no such thing as a single solution. The reason new languages emerge is that developers are trying to solve for particular problems and to improve on older language as technology evolves.
There is still not a good enough programming language and we have been improving on programming languages for decades and we are still bad at it. As we get better we need better programming languages and stacks so there is no point in turning one into a religion.
Lack of Soft Skills
Being a developer does not mean you need to be with your machine and only that. Networking, socializing, communication, user, and customer interactions are all skills you need to invest in.
You must be coachable and approachable otherwise no one will stand in your corner.
If you are looking to advance your career, your relationship with others will play a crucial part in it. I see a lot of talented developers staying behind leaving for a less knowledgeable developer with people skills to manage software production.
Everybody likes that person who communicates well and if that person is also tech-savvy, they make for great leaders and mentors. We look up to them.
Sticking to One Job for too Long
If you are satisfied with where you are then nothing wrong with stay long in a job. Some jobs keep refreshing and adapting to the industry over and over but normally these are the big tech companies.
If you are at that small company for over 5 years working with the same stack and maintaining the same software, you are missing out on how much the industry has changed.
On average, developers stay around 2–3 years before changing jobs. If what you work with hadn't evolved much since you joined and you are using the same things to do a similar task, is probably a sign you need something else if you have career ambitions.
Job Hoping too Often
A resume stating you changed jobs 2–3 times in a year or once every year is just as bad as staying too long. You raise too many red flags when hoping too often from job to job.
You either don’t know what you want or keep stumbling upon teams that dislike you, so you quit! You keep getting fired, can’t fit into any culture or you are a fraud. Whatever it is you must figure it out quickly and plan for finding something you really want.
You must stay long enough in a job to prove you have the skills, are reliable, and are a culture fit.
Lacking Ambition/Career RoadMap
Let’s be honest. Some developers are only riding the boat hoping to get somewhere far enough with any luck they have. These are the type of developers that end up staying too long or too little.
Sit and make a list of skills you want to acquire in your career, both technical and non-technical. Keep refreshing that list every year.
Learn to say “no” to things and chase what you want. I said no to excellent job opportunities, quit a great position as soon as I figured out what I want and where I want to be. That is my compass and I suggest you get one.
Neglecting Fundamentals & to Self Update
Some developers keep on following trends without any core skills. These people rack up knowledge of libraries and frameworks that may not be here in 5 years and fail to never understand the fundamentals.
To develop your career you must develop skills that can last, not things that may become unreliable in a few years. Staying update does not mean you need to follow everything. Experienced developers often let things mature enough to adopt or can spot things that lack enough to continue.
Learn the fundamentals of programming, the essentials of programming languages, and strategies for building software. These are things that even when they change they are long-term skills you can build your career upon.
Stay up-to-date with technology to have an idea of how things are evolving but they will make more sense when you understand the core of building things.
Passing on Promotion because You Love to Write Code
A common career path I see developers following is becoming a Manager but I’ve also seen developers who became CTO and VP. The goal is to abstract your coding skills and do it from a higher level.
If you love to code, you will love strategizing for building software. You will love to design systems, architect infrastructure, or even lead a company technically. If you are saying “no” to opportunities because you love to type some code in your machine you are probably misinformed.
Some developers become managers and end up trapped in paperwork and meetings but they don’t have to stay trapped like that. This is where they need soft skills and fundamentals knowledge to maneuver their career in the direction they want.
You are Selfish & a bad Mentor
There is nothing that shows that you know what you claim more than mentoring. Mentoring others will make you a better developer, improve your soft skills, build your reputation, and it is an amazing skill to have.
If you want to build your career and cant take people with you because you are too focused on being the best you will get nowhere at all. At least nowhere on people’s heart.
Hard to work with
The best developers are coachable. They are humble enough to know they can also be wrong. They stay open to suggestions and are willing to change for the betterment of things.
Your mission as a developer is not to prove you know best. Don't fall into the trap of those with hidden agendas. You have nothing to prove. Accept challenges but approach every opportunity as a chance to learn and improve on something.
This goes without saying and this industry requires a lot of professionalism. We as developers are the first ones to witness the wrong before they reach the users. Professionalism must start with us.
Unfortunately being unprofessional may not stop you from advancing your career, but those who are unprofessional do not make it far and eventually must fall.
Be professional to your peers, members of the community, colleagues, a mentee or mentor, the idea, and the user. Have standards and build character.
Making career mistakes is just part of it. There are things I wished I have done differently and opportunities I wish I had taken. Making mistakes is ok as long as we learn with them and are willing to improve.
It's never too late to be better and do better…