As a Senior Software Engineer, you would be responsible for designing and building maintainable code, ownership of projects, designing and writing tests, managing CI/CD pipelines and production releases, addressing technical and design requirements and providing mentorship to other team members. You will have the opportunity to work with other talented engineers in small, supportive teams with all the right tools and clear requirements to help you get your best work done.
1. Coding, Quality and Architecture
● Deliver high quality, maintainable code
● Maintain a codebase and keep frameworks up to date, identify tech debt and improvements proactively
● Ensure testing meets any compliance requirements e.g. PI and GDPR
● Review and promote new testing tools and techniques
● Manage pull request approvals
● Apply a risk based approach to assessing all security aspects of a system/application
● Follow DevOps best practices and keep up with modern tooling
● Able to set architecture direction to integrate new architectural components
● On-call support
2. Continuous improvement & best practice
● Follows industry best practices with particular attention to maintainability, reusability, extensibility and clean code
● Ensure team adoption of coding, quality, accessibility and secure code standards
● Encourage innovation and foster an environment of continuous improvement
● Maintain a test and learn mindset with curiosity, collaboration and care.
3. Collaboration & Mentorship
● Ability to collaborate across different teams, and across all levels of seniority
● Provide coaching and mentoring to other team members
● Lead all interactions with trust empathy and clear communication
● Lead the team in the absence of the Technical Lead
● Actively participate in team collaboration sessions e.g. tech forums, brown bags, strategy meetings
● Able to communicate with both technical and non-technical stakeholders