Hi! We are Ocado, a world-leading tech company in the heart of Sofia.
We are on a mission to change the way the world shops for good.
We are a global, technology business redefining e-commerce, fulfilment, and logistics in online grocery and beyond.
We have created the Ocado Smart Platform (OSP), an end-to-end online shopping platform, that harnesses the power of artificial intelligence, robotics, and automation to solve the unique demands of online grocery.
Job Purpose:
The Simulation Orchestration team is responsible for developing the tooling that supports the configuration and execution of large-scale, complex simulations. This tooling is essential to the productivity of simulation analysts and developers, enabling high-quality, repeatable, and traceable analysis at scale. The platform supports various teams and use cases, including DASH, Routing, CFC Flow for SLTO, Cubing, Supply Chain, ISF, and Auto* simulations.
The key stakeholders of Simulation Orchestration are:
Simulation Research Engineers – To generate input data for simulations; to configure and run complex pipelines of simulations; to access the results of simulations and perform automated common aggregations; to enable the traceability of historic analysis
Simulation Developers – To evaluate new features or algorithms in Simulation; for CI testing of Simulation Projects.
DASH Developers – As part of the CI test process for DASH release candidates; to evaluate new features or algorithms in simulation
Site Definition Users – To access site definition files via Write Once.
Data Scientists, Analysts and Product Managers – Consumers of simulation outputs for analysis and decision-making.
Roles & Responsibilities:
The roles and responsibilities of this role include:
Design, build, and maintain software solutions across the full technology stack.
Collaborate with cross-functional teams to understand requirements and deliver high-quality features.
Contribute to code reviews, testing, and deployment processes.
Support the reliability, performance, and maintainability of existing systems.
Continuously improve development practices and stay up to date with industry trends.
Understand user needs and help shape solutions that provide real value.
Knowledge, Skills and Experience:
Essential
Experience in coding in at least one programming language (e.g., Python, Java).
Enthusiasm for working in a collaborative, team-oriented environment.
Eagerness to learn and grow within a complex technical domain.
Desirable
Experience in software engineering principles and practices.
Familiarity with cloud services (e.g., AWS, GCP).
Exposure to containerisation (e.g., Docker) or CI/CD tools.
Interest in simulations, distributed systems, or infrastructure tooling.
Some experience with version control systems (e.g., Git).
Awareness of accessibility, performance, and security best practices
By enabling them, you help us to develop and deliver better services in the way that's most convenient for you. For information and settings, see our Cookie Policy.