IC roles, just like people management roles, have significant contributions to the company’s success. ICs can spur growth, innovation, and creativity within an organization, in addition to their coding.
Table of Contents
- Exploring the Individual Contributor Verse in Software Development
- Who is an Individual Contributor?
- What Are the Differences Between ICs and People Managers?
- What Are the Pros and Cons of Being an IC?
- Is Being an IC a Dead-End Career?
- How Companies Can Better Support ICs
- In Conclusion
Exploring the Individual Contributor Verse in Software Development
You are the most experienced person on the team, making you the default team lead. You are knowledgeable in your stack and can prioritize and help the team to accomplish its goals. You perfectly fit the tech lead job description. However, you prefer not to handle the ‘people’ side of things.
However, parts of you keep reminiscing about your Individual Contributor(IC) days, and you keep thinking about the pros and cons.
- Comp – one of the ICs in your team has the same comp as you, even if you are the tech lead
- Skills – your tech lead skills are very similar to your ICs, only that they don’t have direct reports
- Company culture – your company’s culture supports both ICs and people managers
And the list goes and on. So one day, you have a team meeting and decide to relinquish the tech lead position in exchange for an IC role. And voila! One of your team members wants to try the people thing. You are relieved. But you wonder, is being an IC a dead-end path?
In this article, we explore the concept of the IC, the individual contributor – who is an individual contributor? How do they differ from people managers? What are the pros and cons of being an IC? Is being an IC a dead-end career path? What is the typical IC career path? And how can companies better support ICs?
Who is an Individual Contributor?
An Individual Contributor (IC) is a Senior Software Engineer with significant technical experience. They are an expert in their tech stack and opt not to manage a team, but to only focus on their coding. ICs are the only members of their teams and have no direct reports.
What Are the Differences Between ICs and People Managers?
How do IC roles differ from people management roles?
Management is more abstract. As a people manager, your success is measured by the team’s success. You need to ensure that you have the right resources to ensure the team’s success and that everybody on the team is pulling their weight.
On the other hand, as an IC, you are the master of your own fate. Your day-to-day might look like transforming user stories into code. You might work with other teams too when you need their input.
The following table summarizes these two roles.
An IC | A People Manager |
Has no direct reports | Has regular check-ins with the team they are leading |
Is less rewarded for their leadership and organizational skills | Is more rewarded for their leadership and organizational skills |
Ensures that they achieve the set goals within the set time frames/sprints if using Agile | Ensures that their team achieves the set goals within the set time frames/sprints if using Agile |
Is less likely to move quickly through the ranks | Is more likely to move quickly through the ranks |
Is knowledgeable and experienced about the technical domain they are working in | Is knowledgeable and experienced about the technical domain they are working in (but don’t usually technically contribute to product) |
Influences product and design much more later | Influences product and design much sooner |
Prioritizes projects/features | Prioritizes projects/features |
May find it more easier to change companies/divisions at the same pay grade | May find it more difficult to change companies/divisions at the same pay grade |
Works with various teams to ensure that the set goals are achieved | Works with the various stakeholders to ensure their needs are met |
The two roles are quite similar, with the main difference being that ICs have no direct reports and that people managers deal with fewer stakeholders. However, as ICs advance through the ranks, their skills are more akin to those of people managers.
What Are the Pros and Cons of Being an IC?
What really are the pros and cons of being an IC? Let’s explore them below:
Pros
- ICs have developed effective strategies and processes that ensure consistent quality in delivery.
- ICs may move faster through projects/features/user stories/debugging as they will not be held back by the back and forth of consulting with other people.
- Flexibility – as an IC, you have more flexibility in determining what projects/ aspects of your project you deem most important and prioritize accordingly.
- As an IC, you end up being the thought leader in your tech stack.
- You are an asset to the company you work for. From the company’s perspective, when an IC transitions to management, they will need to have the IC talent replaced, as the ‘people’ roles will have less time to contribute technically to proje
Cons
- It’s harder to rise through the ranks as an IC.
- There may be less ‘prestige’ associated with IC roles.
- IC roles may not be as ‘noticeable’ as people management roles (until a very complex problem that needs the IC’s expertise arises)
- IC roles may not be as ‘noticeable’ as people management roles (until a very complex problem that needs the IC’s expertise arises)
The following graphic summarizes the pros and cons of taking the IC route:
Is Being an IC a Dead-End Career?
We are going to map what a typical IC career path could look like. However, before we do that, let’s explore some unique ways in which ICs can spur growth, innovation, and creativity within an organization.
- ICs are able to ship a hackathon idea into a working product that can generate revenue for your company.
- ICs can help fix code inefficiencies that might have been costing the company time or money or both.
- ICs can help bring insights into the hiring process, as they can help with tech interviews, streamline the technical part of the interview process, or even specify the skill sets that would work best for their tech stack
- They can help mentor other developers/engineers to ensure best practices and increase productivity.
- They can help design tools to speed up development time.
- ICs can be Diversity, Equity, and Inclusion DEI champions within the organization.
- ICs are able to innovate within your company in their own capacities.
The Typical IC Career Path
Your IC career path is highly dependent on your company’s structure and appreciation of IC roles. As a result, the titles we will bring to the fore will differ from company to company.
We have graphics for you that will help you understand the various senior IC roles (note that we have focused on senior IC roles as they are comparable to people management roles)
Distinguished Engineer
Engineering Fellow
Principal Engineer
Staff Engineer
Here is an Engineering Fellow Job Description from Gitlab
How Companies Can Better Support ICs
How then should companies work towards better supporting their ICs?
A Focus on Impact
Rather than measure the monetary value or ROI you get from an IC, how about measuring impact? We looked at the various ways an IC can contribute to the company, in addition to their coding skills/technical expertise.
Companies need to define what ‘impact’ will look like for them. Impact might look like refactoring a crucial part of the codebase – making it easier for everyone on the software team to read and understand, coming up with a faster way to run tests, mentoring other developers, and teaching them best practices like SOLID principles, or even raising your company’s flag high by speaking at events.
Provide Opportunities for Growth
People in IC roles need to have the flexibility or liberty to contribute creatively – you might end up with astounding innovations!
Growth opportunities might also look like matching up ‘management training programs’ with IC training and development, paid for by the company, where need be.
Create a Culture that Appreciates IC Roles
If your company’s culture leans heavily towards people management, for example by offering people managers better compensation or perks, it might be time to rethink IC compensation and perks too. People manager roles and IC roles are quite similar to warrant a cosmic difference in comp and other benefits.
In Conclusion
IC roles, just like people management roles, have significant contributions to the company’s success. If you have not given people in your company an option to take a different career growth route, apart from management, you might be surprised to learn that they would prefer and thrive in IC roles.
On the other hand, if you already have some IC roles, maybe it’s time to find ways to better appreciate and support them.
And if you are a senior developer who has been wondering whether the people management route is for you, we hope that you have seen that it is possible to grow through the ranks too