Job purpose
As part of the M&S Software Engineering team, you’ll be joining a well-loved historic brand, working on solutions that serves millions of loyal customers and thousands of colleagues! With ethical values that run right through the company’s core and technology leaders that truly understand software engineers and engineering, it’s an exciting time as we’re redefining ourselves into a digital first and engineering-led organisation, with the quality of our engineering team being a key differentiator.
We are seeking a passionate Principal Software Engineering Manager who will provide technical expertise, ship thoughtfully and operate with excellence. Being creative, curious, and confident, you will be an integral part of our empowered, self-managing, multi-disciplinary engineering teams - designing, building, releasing, and maintaining products. Working as an equal partner with the Product and Delivery teams you will deliver sophisticated and robust solutions to solve daring problems for our customers and colleagues.
You will play a key role in driving our ambition to create a best-in-class software engineering team, environment, and culture. We are looking for people to join our community of engineers to drive this transformation, build a modern digital ecosystem using exciting technologies and do the best work of their careers.
Reports to
Head of Software Engineering
M&s peers
Principal Engineers, Head of Product, Senior Technical Programme Managers
Team
4-8 Engineering Managers (Engineering Managers are responsible for 5-9 Engineers each).
4-8 Squads in a strategic Product Group(50-75 People)
Scope of the role
Scope: Personalisation & Growth
You will be championing Engineering excellence for one of the key strategic areas for M&S, which drives Personalisation and Growth across all our Digital channels using Customer data, AI and ML capabilities and journey orchestrators.
We aim to become global leaders in Personalisation and personalise 5BN Omni channel interactions with our customers.
You will be responsible for:
-
Building and driving tech strategy to scale decisioning and recommendation platform to personalise customer journeys across various channels.
-
Enable Collaboration and ML Ops pipelines with Data science teams to build customer vectors.
-
Scaling Client and Server-side experimentation using A/B testing and Featuring flagging platforms across Web and Mobile Devices.
-
Driving and automating Campaigns through Campaign management tool, Decisioning platforms and orchestration etc.
-
Leading Engineering Excellence and creating culture of innovation.
The Tech Stack is a mix of Python and Java Spring Boot on backend, JavaScript on Frontend, Adobe Target, Optimizely for experimentation, Salesforce Marketing Cloud, Databricks and Azure. You will also be leading the program to migrate frontend apps to modern JavaScript frameworks like React, Next, typescript and Graphql.
Key Accountabilities & Responsibilities
The Principal Software Engineer Manager role is the embodiment of ‘solving problems through technology’ with key responsibilities as follows:
- Lead Software Engineering Managers to build and maintain high quality and reliable software
-
Responsible for the engineering excellence of their Product Group e.g., behaviours, operations, and technical quality
-
Line manage and develop Software Engineering Managers to ensure they have the right skills, development plans and demeanour to learning
-
Maintain and cultivate effective relationships with Product and Delivery teams to prioritise, problem solve & maximise value to market
-
Work with the wider Technology function to implement the technical strategy, adopting the North Star principles
-
Lead the development and improvements to M&S standard frameworks and policies, ensuring that they are understood and adopted
-
Write strategy papers and contribute in designing architecture to drive tech transformation and implementations.
-
Coach, support and guide Engineering managers and engineers to produce clean, quality code through code reviews and pair programming
-
Drive DevOps practices to automate the Product development life cycle and ownership demeanour
-
Foster a culture of experimentation and innovation to drive solutions
-
Ensure products are fully supported by teams and product groups both in and out of hour
-
Lead development of Product Group OKRs and Product health, and demonstrate responsibility for the entire Product Group's objectives
-
Drive the improvement and measurement of Product Group quality and reliability via software engineering standard methodologies and metrics
-
Orchestrate continuous learning and improvement initiatives for the Product(s) and Product Group(s)
- Solve problems collaboratively, communicating decisions to senior customers
-
Lead product planning and roadmap with an agile mind-set focusing on supporting our colleagues
-
Engage with product colleagues to improve value for the customer and to understand ambiguous requirements
-
Demonstrate and champion pragmatism in terms of commercial delivery and software quality
-
Promote technology, innovation, values, and ways of working within the team and wider community
-
Active contribution and leading of Communities of Practice
-
Lead recruitment and new starter on-boarding activities
-
Own and deliver initiatives to take M&S Software Engineering to the next level by challenging the status quo
-
Enhance and implement M&S Engineering talent strategy
-
Foster self-management and accountability at the team level through servant leadership
-
Support recruitment and brand outreach activities
Personalisation & Growth
You will be championing Engineering excellence for one of the key strategic areas for M&S, which drives Personalisation & Growth across all of our Digital channels using Customer data, AI and ML capabilities and journey orchestrators.
We aim to become global leaders in Personalisation and personalise 5BN Omni channel interactions with our customers.
Tech stack-
Python 3
-
JavaScript – React, Node.js and Vanilla JavaScript specific frameworks (will be migrating to Next.Js and Typescript)
-
Java Spring Boot
-
Confluent Kafka
-
Tealium
-
CDP :mParticle
-
Optimizely/Adobe Target
-
Databricks and Azure Data Factory
-
Cloud - Azure
- CI/CD - Azureops and GitHub Actions
-
BDD: Playwright, Selenium, Cyprus
Key Experience – the ideal candidate will have
Essential-
Excellent knowledge in all stack areas, from front-end through to back-end
-
Extensive background in software engineering with several years’ experience in a variety of systems and technologies
-
Consistent track record in delivering, operating, leading, hiring and shifting at Product Group level and above
-
Strong experience of leading successful delivery in a scaled agile software environment
-
Experience building and leading teams of highly skilled, senior software engineers that deliver high-quality software
-
Excellent understanding of system design, software architecture, cloud, and software engineering standard methodologies,
- Expert knowledge and advocate for Continuous Integration and Continuous Delivery
-
Promoter of DevOps: you build it, you run it
-
Strong understanding of testing strategies and reliability engineering
-
Highly organised and able to handle multiple workstreams, lead senior customers and their expectations
-
Excellent people management, interpersonal, analytical, and problem-solving skills
-
Ability to lead and line manage senior engineers, engineering managers and technical partners to a desired outcome, without prescribing it
-
Excellent communication skills, both written and spoken and able to adjust for different, including non-technical, audiences
-
A servant-leadership mentality that is willing to take responsibility
-
Able to influence people at senior levels and from the highly technical to non-technical
Desirable-
Previous polyglot hands-on senior software engineer
-
Leading large product areas with 5+ teams
-
Previous software engineering community leadership experience
-
Presentation delivery at internal and external event.
-
An ambition to be an open-source contributor, technology writer or speaker
-
Knowledge of Software approaches like Domain Driven Design
- Experience in event driven API architectures and associated best practises
-
Advanced experience with cloud engineering
-
Cares about the business and the bigger picture with significant prior examples
-
A senior leadership mentality that is willing to take responsibility
-
Demonstrable entrepreneurship in previous organisation(s)
Works closely with
You’ll be working closely with Heads of Software Engineering, Head of Product, Commercial and Finance, CTOs, Software Engineering Managers, Software Engineers, other Principal Software Engineering Managers and Product Managers to collaboratively tackle problems! There will be day-to-day interactions with Technical Programme Managers, who you’ll work with to constantly evolve your team’s ways of working. Depending on your team(s), you could also interact with other specialists such as Architects, Data Scientists, UX/UI Designers, and analytics authorities.
As a member of M&S Software Engineering, you’ll also work with and learn from other engineers and specialists in the organisation through Business Platforms, Product Portfolios, Product Groups, other teams and Communities of Practice.
#LI-ZF1
M&S is ready to push boundaries to lead the retail industry into a greener, speedier, more inspiring digital era. That’s why we’re revolutionising how we work and offering our most exciting opportunities yet. There’s never been a better time to be part of our team. Marks & Spencer aims to be an inclusive organisation, trusted and admired by our colleagues, customers and suppliers. Join us and make an immediate impact.
We are committed to an active Inclusion, Diversity and Equal Opportunities Policy, which starts with our recruitment and selection process, and we are happy to talk flexible working.
If you consider yourself to require reasonable adjustments to any part of our recruitment process, we invite you to share those requirements with us when completing your application. We will make every effort to ensure your needs are met to provide a fair and transparent process of assessment.