As a developer still at an earlier stage of my career I tend to think that more experienced junior developers and senior developers have more adverse technical skills.
Listening to one podcast a few weeks of a senior developer who has been writing code for over 15 years. She said that
"We can't compare a beginner developer of today who has to learn several variations of JavaScript like the many frameworks and libraries among other languages with that of us who learned code back then when the industry was less evolved". She thinks that up-and-coming developers are more qualified than how they joined the job market back then.
On the other hand, senior developers were asked on a Twitter discussion to share the skills that made them get promoted into their current roles. Here are some of the common skills that were mentioned by most of them:-
- Being curious when starting out by asking questions, learning from mistakes, learning to work with others, and adapting your understanding to new things that come up.
- Being able to understand and come up with solutions to problems quickly and this skill is gained through training and past solutions to tough problems.
- Understanding all aspects of your field in order to be a lead developer.
- Having the ability to combine skills beyond your technical skills i.e soft skills, adaptability, perseverance, networking, self-awareness, independent thing, owning the project, and being willing to learn throughout among others.
- Being able to facilitate decisions and mentor newbies.
"Junior developers don't write complex code because they can, Mid-level developers write complex code because they can and senior developers don't write complex code because they can"
- Being able to understand scope and effort in order to be able to convey to others and break it into tasks and ensuring the job is done
- Being able to rely on your experience instead of talent
Ability to:-
- write a clean clone
- use object-oriented-programming, high-order functions & design patterns more often
- mentor junior developers
- reuse code more often
- communicate properly
- handle time management and determine a task to be prioritized
- consider your team's ability over the problem.
- write test both unit and integral test and determine the best tech stack for a project.
Thanks for reading through my article I hope this helps you consider growing some skills beyond the technical ones and also giving credit to Nehemiah on Twitter and all those who took part in the discussion.