Five Basic Skill Sets Needed to Become A Senior Software Developer
Before junior software developers can start advancing their career, there are some fundamental skills they need to have in place. This seems to be sort of magic for most, so I share here a way of thinking about developing yourself based on the expectations I have to my teams. By understanding the expectations we have to the more senior engineers in five key areas, as well as what the fundamentals are, you get a framework for how to develop your career.
Overall, most universities do a pretty good job at educating software developers and give them a good, basic skill set. But staying relevant and performing as a software developer means to continuously update your skills, in addition to growing through experience and “becoming senior”. If you search the Internet, you will find a myriad of suggestions for how to become a better developer. The problem is that the technical skill set of a good senior developer is highly contextual. On the other hand, many companies have less than helpful development frameworks that have been created to define whether you are at level 1 or 5 in the seniority pyramid, and thus what your salary level should be. Here is an example:
Works on projects and strategies of moderate to high complexity and scope
Anticipate, propose, and decide solutions through evaluation and analysis…