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

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.

You are currently using an outdated browser.

Please consider using a modern browser such as one listed below: