Senior/Staff Software Engineer – Silicon Engineering Platform

Company: Imagination Technologies Group
Apply for the Senior/Staff Software Engineer – Silicon Engineering Platform
Location: Kings Langley
Job Description:

Overview

You will build and own the application-layer orchestration for a modern silicon engineering platform. You’ll transform monolithic pipelines into small, reusable building blocks with strong observability and robust failure handling. The role centers on scalable, data-driven workflow orchestration, integrating with deployment, security, and networking, while maintaining high code quality. You’ll work with cross-functional teams to enable predictable, end-to-end execution and product-like developer tooling. This is a chance to shape the architecture of a high-impact platform used to accelerate silicon and software IP delivery.

Responsibilities

  • Design and implement orchestration logic using a modern workflow engine, decomposing pipelines into reusable units
  • Apply SOLID and separation-of-concerns principles to keep code maintainable
  • Define strongly-typed data contracts between pipeline stages (e.g., Pydantic)
  • Design retry, checkpoint, and resume mechanisms for long-running jobs
  • Implement human-in-the-loop patterns for review and rerouting
  • Write thorough automated tests (unit, integration)
  • Build observability into the application layer (structured logging, metrics, status reporting)
  • Collaborate with infrastructure lead to consume secrets and env config via clean interfaces
  • Participate in code reviews to promote readability and pragmatic simplicity
  • Contribute to technical documentation and onboarding materials

Key requirements

  • Strong command of Python (preferred) or equivalent strongly-typed language
  • Understanding of SOLID, OOP, and composition-based architecture
  • Ability to write testable code with dependency injection and mocking
  • Experience building composable software with small, well-scoped modules
  • Comfort with asynchronous programming (e.g., Python asyncio)
  • Experience designing data models/schemas and using type checking
  • Solid error handling and failure-mode design (retries, idempotency)
  • Familiarity with Git, CI/Pipelines, and pytest
  • Experience Linux environments and safe use of CLI/subprocesses
  • Excellent communicator and collaborator
  • Curious, solutions-oriented problem solver
  • Customer and stakeholder-focused
  • Python (strong typing)
  • SOLID and OOP design, composition-based architecture
  • Dependency injection and mocking

…

Posted: October 10th, 2026