Senior Software Development Engineer
The imagining, building, operating and evolving of great technology is the engine of growth for Argos. Argos Technology is responsible for the website, Apps, our in-store digital experience, supply chain and distribution, order management and the data behind all of this. We are the engine making everything work; solving problems, building software, fast, with the aim of creating an unrivalled user experience for our customers.
We are changing our technology platform from a monolithic architecture to microservices, based on Java, React.js, Machine Learning and Cloud computing. We are looking for engineers with a strong belief in agile delivery and who believe in fully testable and maintainable code. We are looking for engineers with a strong belief in agile delivery and who believe in fully testable and maintainable code who can help us build systems to manage and improve the data quality and digital assets (images, videos, PDF user manuals) for the thousands of products available to Argos customers.
On top of that we want like-minded Engineers who are able to talk about what they have done, how we develop our technology and importantly shape our engineering culture here at our Technology hub in London.
What you will be doing
* Be the technical lead of a functional team focused on delivering bespoke product data management applications as we re-engineer Argos
* Being seen as the go-to technical expert in the technologies you use and evangelise
* Working in an agile environment cooperating with Product Managers and business stakeholders to design, develop and build microservices that would remove some of the legacy dependency
* Working closely with DevOps to establish an independent continuous integration and deployment approach for these new services
* Bouncing off design ideas among team members to achieve a scalable solution
* Performing the role of a design authority within the team with the ability to perform peer reviews and providing constructive improvements/feedback
* Mentoring the junior and graduate engineers within the team on best practices
* Working with the wider engineering team to influence new technology, methods and frameworks, for example through organising and delivering information and knowledge sharing sessions
* Applying best engineering practices with other team members, and maintain code quality across applications
* Leading and influencing team members on technical decisions and design
* Introducing new technology, methods and frameworks to the software development organisation
* Liaising with other agile teams to unblock issues and get things delivered
* Ensuring suitable testing is planned and executed and directing automated test engineers
* You WON’T be expected to line-manage anyone. This is a technical role with technical authority but no line management requirement
How (the most important)
* Spring framework – including Spring Boot
* TDD / BDD
* Integrating with 3rd-party systems
* CI/CD based on Jenkins
How (the nice-to-have)
* ELK stack
* Mesos/Marathon or Kubernetes
* Degree in computer science or other technical programme with exposure to programming – or significant relevant engineering experience & qualifications
* Sound software development experience in a technology organisation with history of delivering at least 7 or more software systems and platforms
* Experience implementing scalable software systems and platforms
* Experience with software optimisation
* Expert knowledge in building REST APIs
* Exceptional problem solving skills
* Familiarity with the workings of retail back end systems would be advantageous
* Ownership and pride in what you do
* Gain credibility quickly amongst technical colleagues
* People love working with you
At Argos we are no longer just about the catalogue. We have an awesome range of thousands of products for our customers, many only available online. In fact argos.co.uk is the busiest website of any UK multichannel retailer, and we are growing our engineering teams to make it even better.
Managing all the data and images for our products is an exciting technical challenge. Different types of products need different types of information storing about them to enable customers to make choices easily as ultimately we want to make their decision to buy as straightforward for them as possible. The product data and images need to be up to date and accurate, and so the systems that manage this data need to make it easy for Argos colleagues to get this right. Great data quality leads to a great experience for our customers.
In Product Information and Digital Asset Management Engineering we work with some off the shelf packages but are increasingly building our own bespoke software as we believe this is the best way to differentiate Argos from our competitors in a digital world. We’re literally breaking out of the old Argos technology stack and building great new systems and services around modern, predominantly open source technologies. If working with technologies such as Microservices, AWS, Docker, Mesos/Marathon, Spring Boot, Swagger, the Netflix tech stack, Kafka, NoSQL (MongoDB), and helping to give our customers a great shopping experience with us interests and excites you then we’re interested in you joining this team as a mid-level or senior engineer as we build up our capability and migrate away from monolithic platforms and systems.
As a senior engineer you’ll get to be a technology leader and help set technical direction, making key technology decisions as we go and bringing engineering colleagues along with you. Although we’re looking for technical leadership, we don’t expect our engineers at any level to manage other colleagues leaving you free to focus on the technology. In addition you’ll have a supportive, technically-minded development manager who is just as interested in the technology as you are.