Details
1121602
University of Warwick
01/12/2026
Other - See Job
Mon – Friday (maximum of 20hrs per week)
Smart Casual
Pay
£16.79
£2.03
Description
Role
You will connect the University of Warwick's AI-assisted security and safety review tools to the ASTIR workbench, the shared engineering platform being built by an EU consortium for robotics software. The tools review industrial PLC programs, ROS 2 robot software and drone mission plans. Your job is to make them run as dependable, versioned workflows inside the workbench: LangGraph graphs whose every finding can be traced back to its evidence, with mandatory engineer approval steps and deployments that keep partners' confidential code inside approved environments.
ASTIR (AI-Augmented Software Engineering for Intelligent Robotics, Horizon Europe Grant Agreement 101189679) runs from December 2024 to November 2027. You will work with the tool developers at Warwick, the platform integration lead, UNparallel Innovation (UNP), and the industrial pilot partners (KUKA, PAL Robotics and UNP's drone pilot), and you will contribute to the project's interim and final integrated releases in 2027Duties and responsibilities
1. Package the assurance tools as services (about 25%). Turn Warwick's three security and safety review tools into versioned, containerised services with stable command-line and HTTP interfaces and typed Python and C++ clients. Preserve their current deterministic results exactly while wrapping them.
2. Build LangGraph workflows for the ASTIR workbench (about 25%). Implement each tool as a LangGraph state graph with its descriptor for the partner-run workflow registry. Use LangGraph checkpointing on PostgreSQL, human approval gates through interrupts, and resumption that never publishes an output twice. Expose bounded capabilities as A2A agents or MCP tools, and route model calls through the platform's LiteLLM gateway using LangChain model and tool abstractions where appropriate.
3. Define data contracts and provenance (about 15%). Write versioned JSON Schemas for inputs, configuration and results; implement stable evidence identifiers, SARIF-style output and provenance records (model, prompt, configuration and input hashes); maintain golden test fixtures and automated regression tests in continuous integration.
4. Deploy securely and protect confidential data (about 15%). Produce Docker images and Helm charts for Kubernetes, with secrets kept out of images, least-privilege containers and default-deny network egress. Support installation inside an industrial partner's own infrastructure and the use of locally hosted language models (Ollama or vLLM on Warwick GPU servers) so that partner code does not leave approved environments. Test access control and failure behaviour.
5. Integrate, test and evaluate with partners (about 10%). Take part in integration workshops with the platform lead and the pilot companies; run integration and fault-injection tests; measure run time, resource use and reviewer effort; hand findings to the testing and runtime monitoring partners in an agreed format.
6. Document, report and disseminate (about 10%). Write operator and developer guides and release notes; contribute to the interim and final integrated workbench deliverables and to project reports; contribute to research papers and open-source releases where partner agreements allow.
7. General. Follow good research software practice (version control, code review, reproducible builds, records of every experiment run); handle partner data in line with the project's data agreements and University information-security policy; undertake other duties appropriate to the grade, as agreed with the line manager.
Support provided: source code, test suites and documentation of the three tools with test bundles; access to the ASTIR platform test environment (workflow registry, LiteLLM gateway, workflow engine); and time on Warwick GPU servers for locally hosted models and access to regional high-performance computing.
Skills and experience
Essential:
- Degree in computer science, software engineering or a related subject, or equivalent professional experience.
- Substantial experience writing production-quality Python, including type hints, packaging, testing with pytest and code review.
- Hands-on experience building applications with LangGraph: state graphs, conditional routing, checkpointers, human-in-the-loop interrupts and resumption.
- Working knowledge of LangChain (langchain-core): chat model and tool interfaces, structured output, prompt templates and connection to OpenAI-compatible endpoints.
- Experience building LLM-based or agentic software that runs reliably: validating model output against schemas, handling time-outs and failures, logging and tracing.
- Experience with Docker and Linux, and with continuous integration (GitHub Actions or GitLab CI).
- Experience designing JSON or REST APIs and data contracts (JSON Schema or OpenAPI).
- Understanding of secure software practice: secrets management, least privilege and the handling of confidential third-party data.
- Ability to work with distributed partners, agree technical interfaces and write clear technical documentation.
Desirable:
- Kubernetes and Helm; identity and access management (Keycloak, OpenID Connect).
- Agent interoperability protocols: Agent2Agent (A2A) and the Model Context Protocol (MCP).
- LiteLLM or similar model gateways; LLM observability tools such as Langfuse
- Serving open-weight models locally (Ollama, vLLM) on GPU servers, and the factors that affect reproducible output.
- Static analysis and vulnerability reporting: Semgrep or cppcheck, SARIF, the CWE catalogue.
- C++, sufficient to maintain a thin client library
- PostgreSQL, including pgvector or other retrieval stores.
- Domain knowledge in one of: ROS 2 robotics software, industrial PLC programming (IEC 61131-3, Siemens TIA Portal), or UAV mission planning and regulation.
- Experience of collaborative research projects or publications in software engineering or AI.
Location
University of Warwick Campus / Hybrid working by agreement
Additional information
- Start and end date: 01 December 26 - 31 May 27
- Deadline to apply: Thursday 5th November 26
Please provide a CV and cover letter with your application.
Please note upon applying for this role you are consenting to your contact details being shared directly with the hiring manager.
Apply for job