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 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 Argos Tech.
What you will be doing
* Working within a SCRUM-style development team, you will be refining, sizing and delivering user stories for delivering functionality across two functional areas (product information, digital assets)
* Undertaking business as usual development on all aspects of engineering on older product & asset management applications through to building their replacements in new, modern technologies
* Contributing to strategic projects, including migration away from older environments to those that are more modern
* Contributing to efforts to define a best practice strategy for continuous delivery techniques and automated testing
* Maintaining and monitoring quality of code, test procedures and delivery
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 similar professional experience and qualifications
* Experience of systems development in Java (preferably Java 7 and later)
* Knowledge of modern dev ops practices, continuous integration\delivery and Jenkins
* Knowledge of containerisation and orchestration, preferably using Docker
* Knowledge of Apache Mesos
* Experience of working with middleware/message queue environments, especially Kafka and/or IBM Websphere MQ
* Experience of Spring frameworks, Spring cloud and Spring Boot
* Working knowledge of microservice environments and HTTP RESTtful interfaces
* Working knowledge of working within a Linux virtualised environment
* Knowledge of AWS
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 mid-level engineer you’ll have some experience of some of these technologies already, and be able to show direction and offer advice to junior engineers and graduates.