What You Need To Know To Be An Awesome Software Developer đȘ
Every Software company developed their own approach regarding years of experience, general knowledge, specific know-how and guidelines for their team members to grow inside the organization.
PICUS grasped several concepts and metrics over the last years, towards the creation of what we consider that fits better with our principles and how we believe Software Developers should set their goals and position themselves in the industry.
This topic can be controversial and very subjective but follow along, as Iâm going to describe which levels exist inside PICUSâ Software Development full-stack team, and what we believe you should know before reaching the upper level!
đŁ Junior Developer
You probably have less than two years of work experience and need near-constant help. However we have no expectations for you to know everything up-front, just come with an open mindset!
A Junior developer is probably familiar with one or two programming language and frameworks, and at the same time, not only you wonât know the business domain, but you may also struggle with the fundamentals of a programming language and frameworks. This step is where you absorb the most knowledge for your career and find what drives you! đ»
Key Points to reach Intermediate:
- Knowledge in Operating Systems, Data Structures, and Algorithms;
- Understanding the concepts of the Web (HTTP, TCP, DNS, Cache);
- Experience with Frontend (HTML/CSS/JS/React) and Backend technologies (Node.js/SQL);
- Code Review and Pair Programming;
- Continuous Integration and Software Testing;
- Good understanding of English (written and spoken).
đ„ Intermediate Developer
This is where most of the software developers fall. You should have more than two years of experience and generally less than six, although some developers can stay at this level in their whole careers...
They can produce working code with less supervision and understand when they need to reach out for help. You will not be generally tasked with highly complicated tasks that require an in-depth level of knowledge or to lead clientâs meetings. On the positive side: youâre now into the whole development cycle and can participate more closely in the decision making of internal development processes! Great, yeah? đ€
Key Points to reach Senior:
- All from above;
- Design Patterns;
- Business Analysis;
- Good communication skills;
- Mentor capabilities;
- Community activity;
- Processes improvement/creation.
đ Senior Developer
Now you reached the âepic levelâ for Software craftsmen. However, youâre just starting⊠As once someone said:
The more you know, the more you know you donât know.
Thatâs the truth, my dear friends⊠You have experience, and youâll be able to design solutions as well as completing complex tasks. As you already worked on a couple of projects, some big and other straightforward, you should have run into a lot of problems and seen the results of design problems. Moreover, as a Senior, you have an excellent idea of where to look first and what corners can be cut and what should never be disregarded.
At this stage, being Senior starts to be more than just having good programming and computer science knowledge, but yes getting acquainted with the business domain, youâre working on. Management and Leadership skills start to shine for some well-rounded individuals, and you can be called up to lead projects, manage clients and teams. Knowing how to explain technical decisions to laymen, driving the communication, and knowing how to push back a requirement when you see associated risks involved, is paramount to succeed as a Senior Developer. However donât forget that you didnât reach the end of the line, every day is a new day to grow as a professional and a human being.
In the following weeks, we will be sharing recommendations for how can you improve as Developer and the process behind our work. Stay tuned! đ
To sum up!
The number of years of experience should not be the only one metric you should care about, but yes, having years of AWESOME experience! Like some automobile commercials back in the 70âs and 80âs mentioned: âYour Mileage May Varyâ!
Start by concrete items, and draw your goals for the next 6 months and for the year to come. From there, invest in yourself. The interwebs are plenty of resources and books that can help you get to the next level (we will be sharing them in an upcoming post đ), but reading/listening is not enough if you donât apply practical means to experiment what you just discovered.
LEARN BY DOING should be your motto because practice, good habits, daily coding, and being humble, will make the difference between being an average and an awesome Software Developer!
Currently, we have openings at PICUS for Web Developers đ Feel free to apply for an interview, weâre always looking for great individuals to grow our team!
By the way, if you want to know more about our HR process and how we apply Agile in our Software projects, please check out our two other articles:
David is the Lead Developer of PICUS. He believes that using the right tool for the job is always the best choice for any software project. Therefore, he helped in to build several MVPs that could solve his clientsâ problems at the right product stage.