Does a genuine "full-stack" developer truly exist ?
- Publish Date: Posted over 5 years ago
- Author: Jonathan Moran
Understanding developer seniority
Day in, day out, developers describe themselves as junior, mid-level or senior to indicate their level of experience.
However, without an agreed industry standard, job titles and experience do not always align with how skills and project exposure are interpreted across the wider market.
What we would consider the most widely accepted benchmarks for junior, mid-level and senior developers can often be very different from what we see on applications.
This guide looks at the experience developers may need to demonstrate at each level.
Why job titles matter
This way of classifying experience is relatively unique to software development and is not something we see to the same extent in many other industries.
Our aim is to help developers understand how they may be perceived when applying and interviewing for roles.
Recognising how your experience compares with market expectations can help you:
• Identify the skills and experience employers value most
• Present your experience more effectively
• Apply for roles at the right level
• Recognise when you may be ready to progress
Correctly assessing your experience can also help address concerns around imposter syndrome, particularly for developers who are excelling but remain uncertain about their readiness for the next step.
Junior or graduate developer
Junior developers do not always recognise their own potential or market value.
Opportunities to progress within technology are considerable, so moving towards a mid-level role should be achievable for developers who are eager to learn and take on more responsibility.
After around a year of commercial experience, a developer with strong interpersonal skills and exposure to different stages of the development process may already be ready to move into a mid-level position.
We regularly meet junior developers who appear to be operating at mid-level without receiving the corresponding title or salary.
Progression and workplace culture
Promotions based primarily on age or length of service, rather than skills, performance and ambition, can prevent developers from progressing as quickly as their experience warrants.
When progression is dependent on colleagues moving first, newer employees can find themselves waiting behind others, regardless of their own ability or commitment.
Not every business operates this way. Other employers may recognise your potential and provide the opportunity, support and responsibility needed to move forward.
Self-taught developers
Self-taught developers can sometimes be viewed as junior because they have limited experience within a commercial environment.
This can happen even when their technical ability is comparable with people who have worked in the industry for several years.
Developers entering the profession through a self-taught route may initially be placed within the junior category. However, this should not prevent them from progressing quickly once they understand the standards, procedures and collaborative practices required within a professional development team.
Developing your coding approach
Junior developers can sometimes take a different approach to writing code than more experienced colleagues.
Their enthusiasm may lead them to produce detailed or elaborate solutions that create an immediate impact.
However, this can make projects less scalable, harder for other developers to understand and more difficult to troubleshoot.
As experience grows, developers often learn to prioritise code that is clear, simple and easier for others to maintain.
Mid-level developer
Experience of working on projects from beginning to end is usually a strong sign that someone has progressed beyond junior level.
Mid-level developers will typically have experience of debugging issues and a solid understanding of recognised development practices.
This often enables them to write simpler, clearer code that can be understood and maintained by other members of the team.
They can also be trusted with tasks that require less supervision than a junior developer would need.
This makes mid-level professionals some of the most sought-after developers in the market.
What is expected at mid-level?
Mid-level developers should usually be able to:
• Take ownership of defined tasks
• Work with less day-to-day supervision
• Contribute across different stages of a project
• Identify and resolve common technical problems
• Apply recognised development practices
• Produce code that is clear and maintainable
Junior and mid-level developers will often still receive support from senior colleagues, with some allowance made for mistakes and development.
At more senior levels, expectations around judgement and accountability are usually considerably higher.
Senior developer
Senior developers are generally expected to demonstrate more than strong technical ability.
They should possess:
• A growth mindset towards solving problems
• The ability to communicate effectively with clients and end users
• Leadership and mentoring skills
• The ability to support junior and mid-level colleagues
• A high standard of clear and efficient coding
The role of a senior developer can vary considerably between organisations and often follows one of two routes, technical specialism or team leadership.
Developers will commonly need around five years of experience before moving into a senior role, although this is not an absolute rule.
Technical expertise and leadership
Senior developers are often responsible for tackling the most difficult technical issues while leading by example and supporting the development of less experienced colleagues.
The ability to manage projects from inception through to completion with a high degree of independence is one of the qualities that commonly separates senior developers from those at mid-level.
Even when they are not required to use every skill regularly, senior developers should understand the full development process and know when they need to adapt, learn something new or bring specialist expertise into the team.
They should also be able to help keep projects on schedule and within budget.
Different routes at senior level
Expectations at senior level vary between businesses, particularly when it comes to leadership.
Some senior developers prefer to focus on complex technical work without taking responsibility for managing a team.
This may limit access to some senior opportunities, but it does not make further progression impossible.
Developers who want to access a wider range of roles should consider building their leadership and management capabilities.
Those who prefer to remain technically focused should seek specialist opportunities where people management is not a core requirement.
Understanding your position in the market
Job titles alone do not always provide an accurate reflection of your experience or potential.
The most useful approach is to consider the projects you have worked on, the responsibility you have taken and the level of support you require.
When you understand how your experience compares with market expectations, you can present your skills more confidently and make better decisions about your next move.
For advice on how to categorise your experience or discuss suitable opportunities, contact Jonathan Moran, Director of Better Placed Tech.