Principal Software Engineer (Lead)
What will the role entail?
- Hands-on technical design and development within a cross-functional and autonomous team using agile methods. Excellent technical competence to work independently on complex ideas through to production.
- Test Driven Development – utilise and advocate TDD best practice within your team and with all software engineers.
- Code Reviews – responsible for performing peer and senior code reviews.
- Deployments – responsible for carrying out own deployments, and for authorising deployments to production.
- Architectural Direction – Work closely with the Head of Engineering and Chief Architect to understand the architectural vision and provide architectural direction for the team.
- Application Performance – ensure performance, scalability and security is considered for all code, and continually identify and reduce technical debt.
- DevOps - Take ownership of DevOps activities required to progress the team’s work.
- Out of Hours Support – provide second-line, out-of-hours production support as required.
- Working with third parties – in some cases working with third party development companies to ensure integrations meet coding and security standards.
- Technical Meet-ups – attend and actively represent OTB at relevant tech meet-ups and conferences, to share and learn about new technologies and engineering ideas.
- Recruitment – taking part in the interview and selection process for software engineers.
Additional leadership and management responsibilities include:
- Work Prioritisation – Work closely with the Product Owner and Business Analyst on the team to consider, prioritise and deliver technical ideas together with business ideas.
- Team Development – provide coaching, mentoring and technical 121’s for software engineers as required. Present relevant new ideas and technologies to wider engineering team. Provide input to Personal Development Plans.
- Team Leadership – Work collaboratively with all stakeholders; Build morale, trust and good relationships within the team; Effective delegation of work and decision-making within the team to minimise bottlenecks and build team knowledge. Collaboratively responsible for ensuring that all development and team processes such as stand-ups and code reviews are adhered to by the team.
- Line Management – Work closely with the Head of Delivery to provide line management duties for software engineers. Responsible for scheduling, planning, preparing for and conducting regular personal development reviews (i.e. 121’s) with assigned software engineers to provide appropriate levels of support, and providing related feedback to management.
- Understanding of MVC, Object Orientation and common design patterns and idioms, where relevant
- Solid command-line skills with extensive knowledge of unix, where relevant
- Git and idiomatic source control workflow
- Good exposure/participation with high-traffic/scalable websites or mobile applications, as relevant
- Programming practices including release procedures and test practices (TDD)
- Excellent debugging skills
- Understand agile practices, including pair programming, stand-ups, retrospectives, etc
- Databases & Search Engines – SQL, MySQL, MongoDB, Elasticsearch, where relevant
- Team leadership and people management experience
- Technical mentoring and coaching experience
- DBA admin and design, where relevant
- Staff discount on holidays
- On-site canteen
- Company social events
- Casual dress code
- Enhanced Maternity and Paternity pay – based on length of service to qualify
- Length of Service awards
- Flexible working
- Free car parking
- Workplace pension
- Share Incentive Plan
- On site badminton court and putting green
- Healthshield - Voluntary health care plan
- Increasing holiday allowance with length of service
- Full time (37.5 hpw)
- Hours - 8.5 hours inc 1 hour lunch, Mon – Fri
- Office relocation to Manchester City Centre Autumn 2018
Apply by sending your CV and covering letter to ITjobs@onthebeach.co.uk