Role Overview
The Senior Software Developer provides technical leadership within the development team, owning architecture and design decisions for their area, setting and upholding coding standards, and acting as the escalation point for complex technical problems. The role mentors junior and mid-level developers, leads code reviews, and represents the development team in solution design discussions with the Solutions Architect and Technical Business Analyst, while continuing to deliver high-quality, well-tested code and contributing to cross-team technical decisions.
Key Responsibilities
-
Owning Architecture and Design for Their Area: Owns technical design and architectural decisions for a defined product area or system component. Ensures designs are scalable, maintainable, and aligned with broader system architecture and non-functional requirements. Documents key design decisions and trade-offs. Balances pragmatic delivery timelines against long-term technical health.
-
Setting and Upholding Coding Standards: Defines, documents, and evolves coding standards and best practices. Leads code reviews and identifies recurring quality issues. Champions clean-code, testing, and documentation practices.
-
Mentoring and Developing Junior and Mid-Level Developers: Actively mentors through pairing, structured feedback, and knowledge-sharing. Supports skills growth and delegates appropriately-scoped work.
-
Acting as Escalation Point for Complex Technical Problems: Serves as the go-to resource for complex technical issues and production incidents. Leads root-cause analysis and balances hands-on problem-solving with enabling others.
-
Contributing to Cross-Team Technical Decisions: Represents the development team in solution design discussions. Provides technical input into cross-team initiatives and surfaces dependencies and risks early.
-
Delivering Working Software to Scope and Specification: Independently delivers complex features. Ensures code meets the agreed Definition of Ready and Definition of Done.
-
Driving Estimation, Planning, and Sprint Delivery: Leads or strongly contributes to estimation sessions and helps the team commit to realistic sprint goals.
-
Driving Continuous Improvement: Leads or drives retrospectives and champions the adoption of improved engineering practices and tooling.