I think that depends on the organization. A Senior Software Engineer at one company might not be Senior in another.
At a startup (less than 25 people), generally Senior Software Engineers (Individual Contributors) are:
- great at breadth and depth of knowledge (domain knowledge)
- knows a lot about how the business operates and its customers
- knows a lot about legacy parts of the product
- knows a lot about latest frontend and backend practices
- great at planning, executing, deploying, and maintaining software
- authoring technical design docs
- providing feedback on other design docs
- providing technical feasibility analysis to product managers/project managers
- providing estimates
- updating kanban/agile boards to keep stakeholders in the know of how things are going
- providing code reviews and feedback
- rallies the team to make improvements on developer workflows (finding out better ways of shipping, better tools and technologies, gets the team excited and bought-in)
- innovates on the developer experience (reducing build times, simplifies tooling and onboarding) which increases the output of the team
- great at interviewing and hiring developers
- sourcing devs through outbound on linkedin/past connections
- sourcing devs through inbound by writing company devblogs
- great at onboarding new developers
- training sessions (sync),
- screen recordings (async)
- updates and maintains documentation on systems and processes
- great at gluing/coordinating with other disciplines (designers, project managers)
These are just a few responsibilities when it comes to a small tech startup, there's probably way more that in different companies though.
Cheers,
Jaime