Online since 1999 | 10,799 IT Jobs Live NOW
Principal Engineer (Back End)
Premium Job From Sainsbury
Recruiter: Sainsbury's
Listed on: 1st February 2018
Location: London
Salary/Rate: Competitive plus benefits
Salary Notes: Competitive plus benefits
Type: Permanent
Start Date: ASAP
Reference: 17000LNR_expired
Contact Name: Sainsbury’s

This job has now expired please search on the home page to find live IT Jobs.

Sainsbury's are one of the largest retailers of quality food, general merchandise, clothing and financial services in the UK, with an annual turnover of £30 billion and over 26 million customer transactions every week.

We are looking for a skilled Principal Engineer with a specialist interest in back end applications to work across our business on a variety of platforms and technologies. You will collaborate closely with engineers and other colleagues to understand their needs and their constraints so you can help shape our engineering approach through spreading good practice, setting standards, teaching, coaching and mentoring.

We want you to continuously improve the way we work so we can delight our colleagues and customers.

What I need to do
           Lead as a practioner, writing clean, well abstracted and maintainable code, and supporting others to do the same
           Take a test and behaviour driven development approach, and support others to do the same
           Work collaboratively and be an active contributor to continuous improvement across the teams and communities of practice
           Help create an environment where providing honest and open feedback is the norm
           Lead the creation and maintenance of standards
           Contribute to the definition and execution of our technology strategy
           Instill the benefits and practices of a DevOps culture in our engineers
           Ensure there is always an appropriate focus on quality
           Teach, coach and mentor other engineers
           Take the lead in architecting systems and applications
           Facilitate the relationship between engineering and architecture

How I will succeed
           Show that you have an excellent understanding for a number of technical skills, attitudes and behaviours, and can instil them in others
           Proactively seek opportunities to share your knowledge and abilities
           Build strong relationships with engineers and other key roles
           Demonstrate empathy with other people's context and constraints
           Lead and contribute across Communities of Practice
           Be an ambassador for technical excellence

What I need to know
We look for "T-shaped people" - those with broad experience and knowledge, but who also have deep expertise in areas such as mobile, web, back end, quality and operability.

We expect all our Principal Engineers to demonstrate:
           The ability to write clear, maintainable code that is well factored
           Advanced understanding and experience of TDD and BDD
           Advanced understanding and experience of Continuous Integration and Continuous Delivery, including the design and building of pipelines using effective test approaches
           Strong experience of mentoring and coaching team members
           Strong knowledge of a DVCS, ideally Git
           Strong understanding and experience of agile and lean practices, when they are appropriate and why they work
           Experience of leading people, ideally across different teams
           Experience of working with business owners and other stakeholders
           The ability to look at technologies in a strategic context, beyond personal favourites
           Awareness of new technologies and how they may be applied
           Experience of pair programming, and able to articulate the benefits
           Experience of working in a DevOps culture and understanding of the benefits
           Able to present clearly and concisely
           Willingness to challenge the status quo

The back end specialist will also demonstrate:
           Experience of several different programming languages, including both static and dynamic, including at least two of Java, C#, Scala, Python, PHP, JavaScript and Golang
           Experience of high traffic, transactional applications
           Advanced OO design, including SOLID principles
           Advanced understanding and experience of relational and non-relational databases
           Advanced understanding and experience of service-oriented architectures, and knowledge of microservice design and implementation
           Familiarity with web services, particularly REST and caching
           Advanced understanding and experience of framework agnostic development
           Good understanding and experience of Linux administration
           Understanding and experience of network and web server administration
           Experience with cloud infrastructure and services, preferably AWS
           Experience of working with legacy systems, ideally including maintenance and phased decommissioning
           Experience of working with and integrating with COTs products
           Understanding and experience of messaging, ideally across several implementations
           Experience of operating as well as building software

What I need to show
           Communication and Influencing - Uses a range of techniques to influence, adapts to situation
           Analytical Thinking - Pushes boundaries in solving problems
           Aptitude to Learn - Actively seeks feedback from multiple sources and contributes to wider community in own area of expertise
           Team Work - Supports a collective effort to resolve problems, uses strengths of team to deliver increased value, builds strong internal/external relationships and bridges where none existed
           Leadership and Mentoring
           Commitment and Planning - Delivers ahead of expectations

Resources available to me
           Line manager providing on-going support through 121’s and SMART objectives
           Enterprise Architecture team
           Wider development community sharing knowledge and support

What decisions I can make
           Influence technology choices for multiple teams
           Shape the technical landscape using your experience
           Shape tool choices and standards across multiple teams

To find out more and to apply, please click the APPLY button.