Java Engineer - Incident Prevention & Capacity Planning Team
Locations: Barcelona, Barcelona, Spain
“Ocado Technology, powering the future of retail through sustained disruptive technology innovation...”
Ocado Technology is putting the world’s retailers online using the cloud, robotics, AI, and IoT. We develop the innovative software and systems that power Ocado.com, the world’s largest online-only grocery retailer as well as the global ‘Ocado Smart Platform’. With everything from websites to fully autonomous warehouse that we design in-house, our employees need to be specialists in a wide range of technologies to help drive our business.
We champion a value-led culture to get our teams working at their very best and to help create a collaborative working environment that our people love. Core values of Trust, Autonomy, Craftsmanship, Collaboration and Learn Fast help drive our innovative culture.
The purpose of this job is to support Ocado Technology teams to mature in terms of incident prevention and reliability. We achieve this by creating tools, defining and advocating best practices, as well as providing support for our teams to grow in this area.
At the time being, the main activities are:
- Support the OT teams in their SLO journey (consultancy, hands-on help, accompany on the journey, demos, presentation, training sessions, workshop, develop SRE community)
- Recommend, develop and support the right tools and frameworks to ease the use of SLO, including our internal solution SCARF, but not exclusively.
Role & Responsibilities
This role involves supporting all teams in OT to use and benefit from SLO practices, support our existing tools and being informed on the industry standards and evolutions.
Leading & Influencing:
- Contribute towards technical decisions in your team.
- Help set standards and ways of working in your team.
- Support your team to deliver, contributing effectively to team continuous improvement.
- Responsible for your personal delivery towards team goals, managing and prioritising your workload effectively.
- Actively demonstrate the Ocado Technology Principles in the way you work.
Design for Future
- Actively relates with other observability best practices and tools.
- Contribute to technical discovery, sharing constructive ideas and critique.
- Participate in design activities and capture learning effectively.
- Design solutions with the Ocado Tech engineering principles in mind.
Deliver for Today
- Assess the SLO maturity of teams already using SLO and
- Help the teams in improving their SLO practices, with objectives and hand-in-hand collaboration
- Deliver business value that addresses today’s requirements, contributing to solving the related technical problems.
- Participate in the full product delivery lifecycle.
- Collaborate with, and review the work of others within your team.
- Identify and seek to reduce waste in our ways of working.
- Extract, gather and present data on the operation of your Product. Use this data to support future design and delivery.
Execute with Quality
- Create and maintain documentation, trainings, presentation about SLO
- Familiarise yourself with the team’s domain and ways of working to adhere to and improve your team’s quality standards.
- Research and recommend industry practices that could benefit your team’s delivery.
- Implement and conduct testing in line with team standards.
- Find and fix security vulnerabilities where appropriate.
- Use and enhance diagnostics for your Product, in order to resolve faults.
- Deliver solutions to ongoing support queries, mostly on our own internal tool (TypeScript, AWS Lambda)
- Provide 1st and 2nd line product support.
- Participate in out of hours support rota where agreed.
You may be asked to perform tasks as required by management deemed as a reasonable request. This job description is a summary of the typical functions of the role, not an exhaustive or comprehensive list of possible role responsibilities, tasks and duties and is subject to review. The responsibilities, tasks and duties of the job holder might differ from those outlined in the job description and other duties, as assigned, might form part of the job.
Knowledge, Skills and Experience
- Understanding the core concepts of Reliability Engineering (e.g. SLO, SLI, error budget, etc.)
- Familiarity with observability and monitoring
- Computer Science (or related subject) engineering degree
- Good spoken and written English
- OOP and software design skills
- Experience in Java
- Passionate about developing high-quality enterprise software
- Happy to take an active role in supporting the business needs
- Passion and understanding of TDD and Clean Code
- Experience working in a continuous delivery environment
- Advocacy & Evangelism experience
- Node.js / TypeScript / JS / Serverless
- Knowledge of AWS/Cloud environments
- Knowledge of containerisation technologies (Docker, Kubernetes, …)
What we can offer you
A relaxed, international, talented, creative and friendly environment, where we will provide you with the best tools to develop amazing stuff. We invest in our employees, ensuring we provide them with the best in-house and external training programs available. We also really encourage people to attend conferences and be involved in the local developer community.
- Flexible working hours with short Fridays
- Reduced hours in August
- Private Health Insurance
- Life Insurance
- Ticket Restaurant
- Ticket Transport
- Ticket Kindergarten
- Flexible WFH policy
- Share-saving scheme
- Gym membership discounts
- Fresh fruit, snacks, tea and coffee
- Monthly social events
- Safari Books - O’Reilly account
- Table football, board games and Nintendo Switch
- Tech Talks and internal trainings
- Developer exchange programmes between centres
- English, Spanish and Catalan language courses
We are growing rapidly, making it a very exciting time to join, as we are currently at a brand new office in the [email protected] district - the thrilling tech area of Barcelona.
Ocado is an equal opportunities employer and as such makes every effort to ensure that all potential employees are treated fairly and equally, regardless of their sex, sexual orientation, marital status, race, colour, nationality, ethnic or national origin, religion, age, disability or union membership status.