Marks and Spencer's

Senior Software Engineer (Full stack JavaScript engineer)

Software Developer in London, ENG

Posted 2019-09-19
Description

We are looking for a passionate Senior Software Engineer to help design, develop and deploy software for our solutions. The successful candidate will be able to build high-quality, innovative and fully performant software in compliance with best practise coding standards and technical design. Help to drive better working practises and become a valued member of the engineering department.

What will I be doing:

Collaboratively solves problems; communicates technical decisions through tech-talks and white-boarding sessions
Can work completely independently, without having to rely on other ream members to make progress
Inducts new team members; provides coaching and mentoring to other engineers
Responsible for participating in the recruitment process in their discipline, including sitting on interview panels, and reviewing technical tests
Evangelizes clean, quality code within the team
High level of engagement when architecting and developing new software. Constantly looking at challenging the status quo, and improving our platform
Takes accountability for the technical quality of team’s output as a whole, both through code review and through continuous architectural and system design review of output generated as part of new feature development
Drives engineering conversations. Always speaks with confidence and is seen as a thought leader by the team
Actively seeks to work with the wider technology organization, engages in cross functional engineering forums and displays genuine interest to learn more about the big picture of our platforms
Takes responsibility of the team’s backlog as a whole
Takes full accountability of the technical state of the product. From development, over deployment and into operational mode
Consults business stakeholders on the best approach for delivering complicated feature, both in how it can be split and sequenced, and in terms of potential improvement to the functional requirements
Senior developers help drive engineering sessions, and naturally put themselves forward for challenging tasks
Inducts new team members; provides coaching and mentoring to other engineers

What experience do I need:

Essential skills:
Experience building distributed web applications
Expert level JavaScript (Vanilla)
Strong experience with CSS/SASS
Experience with build automation tools (Webpack, nodemon, gulp etc.)
Strong experience with testing frameworks and libraries such as Mocha, Chai or Webdriver.io
Expert understanding of build configuration and automation in a CI environment
Experienced working within a cloud environment, and is comfortable provisioning IaaS and PaaS services within such an environment
Strong understanding of containerisation (preferably Kubernetes)
Have delivering end-to-end web-applications within a product team following the DevOps methodology, and thus are comfortable deploying and maintaining all infrastructural and application services required by the web-application within a cloud environment
Experience working within an Agile environment such as Scrum or Kanban
Experience with NodeJS
Familiarity with ES6 / CSS3 syntax's
Ability to mentor and provide constructive feedback to members of the team
Proficiency with TDD & BDD
Expert understanding of software architecture and design principles (e.g. OO, DRY, SOLID)
Experience with full-stack development and devops
Experience with distributed version controls systems like Git
Experience with pair programming
Experience working with CI tools (Concourse, Jenkins)
Understanding of Accessibility best practices
Experience with using templating engines (Handlebars)
Experience with Express

Desirable skills:

Experience working within a Continuous Delivery environment
Contributions towards open source software or organize or speak at software-related meetup groups
Good SEO knowledge

Ready to be seen?

Apply now to have the opportunity to be considered for similar jobs at leading companies in the Seen network for FREE.

Company summary

Building a faster, lower cost, more commercial M&S :
Head office is where it all happens. The ideas, the imagination, the strategy, the vision. Everything, in fact, that makes M&S what it is today: a global multi-channel retailer which sets the standards others follow.
Working here means you’ll be at the forefront of our industry. So you’ll need to excel at what you do and share our passion for excellence, innovation and inspiring our customers.
We’re a big business with a huge range of opportunities for sharp, savvy commercial thinkers – and as we continue to evolve, there’ll be ever more ways for you to develop and grow
 
Transformation:
It is imperative that we simplify our culture – as this is the only way to drive change right through our business. We need to change our organisation, move on from the structure of a single business led by functional directors. This created a top-heavy business that was inward looking and too “corporate”.
All of our businesses sit under the M&S brand and are united by a common set of values, trading style, shared infrastructure and draw on the same customer data. Our focus remains to be an own brand retailer with quality, innovation, traceability and trusted value at our core. At the centre we are building a streamlined corporate team including a very strong data analytics and customer insight function.

Perks

Felxible Working
Car Allowance (Depending on level of role)
20 Percent Employee Discount (Even on sale products)
Up to 28 days statutory holiday. Holiday increases with length of service.

Tech Stack

The Browse Team Technology Stack:
We work on a modern JavaScript and NodeJS platform, using Concourse for CI, Mocha and Chai for developer-driven testing and we genuinely believe in the DevOps methodology, and that empowering engineers to influence and make decisions, will lead to accountable teams.

The Find Team Technology Stack:
From a technology point of view, the team are empowered to chose the right technology for the job, with existing components built using Java, Spring, Mongo, JavaScript, HTML, Node and Express. CI/CD is performed via Concourse to a Docker/Kubernetes/Azure environment.

The Core API Technology Stack:
We build RESTful APIs using Java with Spring, Concourse for CI, Junit and Mockito for developer-driven testing. New APIs are created to provide the data required for M&S product teams. Data resides in various systems across the M&S estate. Our APIs are cloud-based and need to be scalable, performant and secure. We are moving toward an event-driven architecture.

The iOS Team Technology Stack: 
We currently use Swift 5. For source version control we use git and our current CI platform is Bitrise. For quality assurance we use XCUI Tests. We try to choose the best tool for the job and not just what’s the flavour of the month even though we do take the taste into consideration.

The Tuesday Technology Stack:
Currently large Ruby monolith. Will be expanding this while abstracting away where appropriate.
Running on Heroku, including elements on Azure, Kubetnetes etc. Lots of personalisation, machine learning and categorizing of products

Interview process

1.CV Review
2. Recruiter Telephone Conversation (20 minutes)
3. Hiring Manager Telephone Conversation (30 - 1 hour depending on the level of role)4.
4.Face to Face Assessment ( Coding, Problems solving, System Design and Culture. Depending on level of role)

Be seen in a new Software Developer job

Skip the search

Zero stress and one profile that can connect you directly to 1000s of companies.

Best-fit jobs—for you

We’ll take it from there. After you tell us what you’re looking for, we’ll show you off to matches.

Free Career Coaching

Boost your interview skills, map your tech career and seal the deal with 1:1 career coaching.

You get tech. We get you.

Join now and be seen.