Skip to content

CCG seeks an experienced software consultant to provide an average of one day per week from mid-August  2026 to 31 March 2027 (33 days total) for MOSOX, a specialist Rust component of the wider MOSAIC-Modelling.ai open-source energy-modelling ecosystem. MOSOX parses GMPL models and generates optimisation matrices. An initial version is available; this role will support the development, testing, reproducibility, documentation, integration and curation needed for wider technical adoption, including transition from relevant GNU MathProg-based OSeMOSYS workflows.

You will work flexibly against six agreed monthly outputs. All software, documentation and communications must follow the CCG U4RIA curation guidelines, including proportionate attribution, licensing, metadata, referencing, release, version-control and reproducible-workflow practices. The role requires reliable delivery, transparent issue and decision records, tested outputs, clear documentation and effective communication with technical and non-technical stakeholders.

You should demonstrate relevant senior software-engineering experience, practical Rust capability, experience producing tested and reproducible software outputs, and strong written communication. Experience with energy systems modelling, MPS, MOSOX, open-source technical stewardship, international partner support and research communications is desirable.

Project background

MOSAIC-Modelling.ai is an ecosystem of complementary open-source software components for energy-system modelling. MOSOX is one component within that ecosystem. MOSOX is a Rust package described in its public documentation as a GMPL parser and matrix generator. It loads GMPL model and data files, generates optimisation matrices, writes MPS output and can solve compiled matrices. Within the MOSAIC ecosystem, MOSOX is intended to replace, for relevant workflows, the GNU MathProg-based processing previously used with OSeMOSYS. An initial MOSOX version is available, but further development, testing, documentation and curation are required before it can be adopted reliably by a wider group of modelling teams and international partners.

This role will provide time-limited technical stewardship of MOSOX as part of the wider MOSAIC-Modelling.ai ecosystem. It will combine proportionate code development and maintenance, structured issue handling, reproducible examples, integration-orientated contributions across the ecosystem, adoption support, and development of accessible blogs and papers. All outputs must follow the CCG U4RIA curation guidelines, including appropriate attribution, licensing, metadata, referencing, release management, version control and reproducible workflows. Delivery remains outcome-based: you may adapt methods and sequencing as circumstances change, provided agreed outputs, evidence, U4RIA quality requirements and deadlines are met.

Project objectives

  • Advance MOSOX from an initial working version towards a curated, documented and dependable component that can be adopted within the MOSAIC-Modelling.ai ecosystem.
  • Maintain an organised and auditable flow of issues, technical decisions, code changes, releases and reproducible examples in accordance with U4RIA principles.
  • Enable external users and international partners to test MOSOX, reproduce agreed workflows and provide structured evidence that informs continued development and adoption.
  • Produce accessible technical communications that explain the role of MOSOX within MOSAIC-Modelling.ai, its relationship to existing OSeMOSYS/GNU MathProg workflows, progress, use cases, limitations and next steps.
  • Leave a documented sustainability, adoption and integration plan for MOSOX and its interfaces with other MOSAIC-Modelling.ai components.

Scope of work and activities

Work areaOutcome-focused activities
Technical adoption and issue managementMaintain a visible route for technical questions, test feedback and issue reports; triage and prioritise issues; identify recurring adoption barriers; and escalate decisions requiring project-owner input. This is technical stewardship, not general community management.
Continued code development and curationReview and implement agreed fixes or improvements to move the initial MOSOX version towards reliable adoption; maintain interfaces relevant to other MOSAIC-Modelling.ai components; document decisions, limitations and migration implications for relevant GNU MathProg/OSeMOSYS workflows.
Online reproducible examplesCreate, organise and verify runnable examples that demonstrate key MOSOX workflows, interoperability and migration paths and help diagnose partner-reported problems.
MOSAIC ecosystem contributionProvide technical input, prototypes or code supporting MOSOX integration within the wider MOSAIC-Modelling.ai ecosystem, within demonstrated software/product-engineering competence.
Blogs and papersSupport drafting, technical review and reproducibility evidence for blogs and papers explaining MOSOX, its ecosystem role and adoption pathway, without guaranteeing publication decisions outside your control.
Stakeholder coordinationAttend up to two coordination meetings per month where needed, with an agreed agenda, concise action log and named follow-up actions.

Capability matching

Mandatory criteria ·      

  • Demonstrable professional experience developing, maintaining and improving production-quality open-source software, including version control, testing, documentation, release management and repository organisation.
  • Demonstrable proficiency in Rust, including the ability to work effectively within an existing Rust codebase and provide relevant evidence through a code sample, repository, technical exercise or structured interview.
  • Experience developing or maintaining optimisation, modelling, scientific-computing, data-processing or comparable technically complex software.
  • Experience producing tested, documented and reproducible software examples and repositories that enable other users to install, run, understand and verify technical outputs.
  • Experience contributing to complex research, data or modelling initiatives involving specialist users, multiple technical components, substantial datasets or interdisciplinary requirements.
  • Experience working with international partners, researchers, developers or technical users to gather feedback, support testing, diagnose problems and translate user needs into practical software improvements.
  • Demonstrated experience supporting the adoption and ongoing stewardship of technical software, including issue triage, prioritisation, bug resolution, user support and continuous improvement.
  • Ability to communicate complex software and modelling concepts clearly in written English to both technical and non-technical audiences, evidenced through documentation, blogs, papers, technical notes or equivalent outputs.
  • Ability to work independently within a flexible, part-time consultancy arrangement, coordinate effectively with the project team, and deliver agreed outputs and evidence by specified deadlines.
Desirable criteria
  • Prior knowledge of MOSOX, OSeMOSYS, GNU MathProg or the wider MOSAIC-Modelling.ai software ecosystem, or demonstrated experience becoming productive quickly in a comparable modelling-software codebase.
  • Experience with mathematical programming, optimisation modelling, GMPL, MPS or related tooling.
  • Experience maintaining specialist open-source software and supporting technical adoption by external users or partner organisations.
  • Experience developing reproducible examples, regression tests or continuous-integration workflows
  • Experience supporting international research or development partners.
  • Authorship or substantive technical contribution to peer-reviewed papers, technical reports or public-facing explainers.
  • Prior familiarity with MOSOX, provided this is scored proportionately and does not replace assessment of transferable capability.

Expression of interest

Interested candidates are invited to submit the following:

– A CV outlining relevant experience and qualifications
– A support statement outlining suitability for this position
– Confirmation that you have or are able to obtain a professional insurance cover  

Please submit your expression of interest to Clare McGuire on C.McGuire@lboro.ac.uk by 12.00 (mid-day) on 31 July 2026.