Attributes of a Senior Level Software Engineer
High Technical Competency
A senior software engineer is expected to be highly technically competent from both coding and system design perspective.
S/he should exhibit proclivity for learning and knowledge sharing targeting inculcation of technical information that goes beyond the day-to-day grind and is geared towards a broader conceptual understanding of domain knowledge.
Ability to Take on End-to-End Feature Development
S/he should be able to take ownership of feature development from being able to write design documents to writing code that actually implements the feature.
Be the Go-To Technical Expert
S/he should be the go-to person for technical questions within the team. Even if s/he does not have the answer all the time, s/he should be knowledgeable enough to point the person in the right direction.
Mentor Junior Developers
S/he should be able to mentor junior developers and help them ramp up technically.
Collaborate Across Teams
S/he should have broad knowledge of inter-dependencies between teams to be able to collaborate on work items that entail cross-team effort.