5246 jobs - 512 added today
Recruiting? Call us on 01772 639610
Email me newest jobs similar to this one
about 1 month ago
Sainsbury's
Location: London
Job type: Permanent
Sector: Software Engineering
Category: Management Jobs
We are looking for talented Lead Engineer with app and/or back-end engineering experience to help build strong feature teams within the Sainsbury’s Digital Team.

You will work closely with Software Engineers and Designers across multiple platforms and technologies to create a beautiful application ecosystem that is consistent, highly usable, reliable and performant.

What I need to do

* Pair program regularly
* Encourage regular retrospectives help surface what’s not working so we can fix it, and what we’re doing right so we can improve on it
* Write and encourage the writing of well-structured beautiful clean code
* Assist in architecting systems and applications
* Design smart ways of storing and displaying complex data
* See writing automated tests as a benefit, not a chore, engendering that in your team
* Be an active contributing part of an agile development team
* Define your career path, the career path of your team; give and be given the opportunity to grow and learn
* Benefit from working in a multi-disciplinary team, that uses modern software and product development techniques, and values continuous improvement
* Build good relationships with the Product owner and Agile Coach to ensure good lean agile process so as to drive the best outcomes for the team and the business
* Have a good understanding and experience of architecture, infrastructure and DevOps
* Take an enthusiastic approach to Unit testing (including mocking and behavioural testing); including good Continuous Integration & Continuous Delivery pipelines

How I will succeed

* Good capability at mentoring and manage a team of 5-8 engineers
* Interest in growing your own leadership skills
* Able to help your team of engineers grow in performance and capability
* Strong communication skills and interest in a pair-programming environment
* A good foundation in agile development practices
* A real passion for growing your team’s skills, tackling interesting work and challenging problems
* Good knowledge JAVA (or similar with an interest in learning it) and cloud infrastructure development and open to learning the others. (Don't worry we will help you learn)
* You can write great code. Software design is as important to you as writing the code
* Good use of version control (Git)
* You are open to new ideas and ways of working

What I need to know

* Demonstrable experience of new technologies and know when it’s appropriate to use them
* Architecture and infrastructure and why it’s important to be aware of both
* DevOps and why it’s beneficial to development teams
* Using various tools such as JIRA, Confluence and GitHub
* Object Oriented programming and its advantages and disadvantages in large scale applications
* Unit testing (including mocking and behavioural testing) and Continuous Integration
* Version control systems such as GIT and Continuous Integration pipelines and why we use them
* Relational and non-relational databases and when to use them
* Service oriented architecture and the benefits of taking a micro services approach to development
* Framework agnostic development, knowing when to use frameworks and when not to
* Caching (both at application and platform level), why and when to use caching
* Leading and managing technical teams
The following a beneficial but not essential:

* Experience of pair programming and/or mob programming
* Knowledge of test driven development including mocking and/or behavioural driven development
* Experience of building and/or working with REST services
* Understanding relational and non-relational databases and when to use them
* Production experience of payments systems and/or PCI compliance
* Native app development experience

What I need to show

* Communication and Influencing - Uses 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 and uses strengths of team to deliver increased value
* Leadership and Mentoring - Distributes team workload for optimal performance and values differences
* Commitment and Planning - Delivers ahead of expectations, manages others’ performance to ensure delivery and sets clear/challenges targets for team

Resources available to me

* Line manager providing on-going support through 121’s and SMART objectives
* Agile coach providing on-going support in terms of Agile ways of working
* Other Software Engineering Managers sharing knowledge and support

What decisions I can make

* Lead on decisions regarding technology choices
* Shape the team using your experience
* Lead on recruitment decisions when hiring engineers and peers

Email me newest jobs similar to this one

  Back to the top