Role SummaryWe are seeking several hands-on Senior Software Engineers with strong full-stack expertise across TypeScript/React, C#/.NET and modern cloud-native technologies. You will design, build and deliver software solutions end-to-end, owning the development lifecycle from discovery and technical specification through implementation, testing, deployment and continuous improvement.
As an AI-native engineer, you will use approved AI-assisted development tools and agentic AI workflows to accelerate delivery while maintaining high standards of quality, security and engineering excellence. You will work confidently with ambiguity, ask focused clarifying questions, compare alternative approaches and translate complex business needs into structured, testable solutions.
This is a senior individual contributor role focused on software engineering, implementation and technical delivery rather than people or project management. Success will be measured through engineering impact, delivery outcomes and software quality.
Key Responsibilities
- Design, build, test, deploy and support production-grade software solutions across the full technology stack.
- Develop scalable applications using TypeScript, React/Angular or another modern UI framework,
C#/.NET and related technologies. - Lead technical discovery by asking effective clarifying questions before moving into detailed solution design or implementation.
- Translate ambiguous or complex business requirements into clear, structured and testable technical specifications using Spec-Driven Development principles.
- Evaluate alternative technical approaches and clearly explain the benefits, risks, constraints and trade-offs.
- Break complex problems into manageable engineering tasks and deliver practical, proportionate solutions without unnecessary complexity.
- Write secure, maintainable and high-quality code that follows modern engineering standards and best practices.
- Design and build RESTful APIs, integrations, microservices and event-driven solutions focused on performance, reliability and scalability.
- Deliver solutions spanning frontend, backend and data layers using clean architectural principles.
- Use AI-assisted development tools and agentic AI workflows across requirements analysis, specification, coding, testing, debugging, documentation and delivery.
- Take ownership of reviewing, validating and assuring the quality, security and accuracy of both human-written and AI-generated outputs.
- Develop distributed systems and integrations that support complex workflows and data-processing requirements.
- Implement comprehensive automated testing, including unit, integration and regression testing.
- Troubleshoot technical issues using structured debugging and root-cause analysis techniques.
- Improve CI/CD pipelines, deployment automation, observability and Infrastructure as Code practices.
- Build cloud-native applications using compute, serverless, messaging, storage and identity services.
- Contribute to architectural discussions while remaining actively involved in hands-on coding and implementation.
- Collaborate with product owners, analysts, designers, testers and engineers to deliver effective business solutions.
- Produce clear technical documentation covering specifications, design decisions, operational support and known trade-offs.
- Demonstrate solutions through working software, prototypes, technical documentation and measurable delivery outcomes.
- Constructively challenge requirements and technical assumptions while remaining open to feedback and alternative approaches.
- Identify opportunities to improve engineering effectiveness through AI, automation, reusable components and repeatable patterns.
- Participate in code reviews, share knowledge and contribute to engineering best practice and continuous improvement.
- Undertake any other duties reasonably required.
Essential Experience - Software Engineering and Delivery
- Significant recent hands-on experience in software development and object-oriented programming.
- Proven experience owning complex software solutions from requirements discovery through design, development, testing, deployment and production support.
- Strong experience building scalable full-stack applications using TypeScript/React/Angular or another modern UI framework, and C#/.NET.
- Deep understanding of software engineering fundamentals, including design patterns, SOLID principles, modular architecture, clean code and testing practices.
- Demonstrable experience making pragmatic technical decisions and assessing alternative solution designs.
- Experience working with incomplete or ambiguous requirements and converting them into clear technical specifications.
- Proven experience developing RESTful APIs, integrations, microservices and event-driven systems.
- Experience delivering end-to-end solutions across frontend, backend and data platforms.
- Solid understanding of distributed systems, service communication patterns and complex data flows.
- Strong understanding of secure development practices and software testing methodologies.
- Experience delivering production-grade software within Agile environments.
Cloud and DevOps - Hands-on experience with cloud platforms, ideally Microsoft Azure, although relevant AWS or GCP experience will also be considered.
- Experience with cloud-native services including compute, serverless, messaging, storage and identity management.
- Familiarity with Docker and Kubernetes.
- Experience implementing modern deployment patterns and scalable cloud architectures.
- Experience building and maintaining CI/CD pipelines.
- Knowledge of Infrastructure as Code tools such as Terraform or equivalent.
- Strong understanding of monitoring, observability, cloud operations and production support.
Data and Integration - Strong understanding of database design, optimisation and data modelling.
- Experience working with relational and NoSQL databases.
- Knowledge of data-access patterns, performance optimisation and system-integration design.
AI-Native Engineering - Strong AI literacy with practical experience using AI-assisted development tools within software engineering environments.
- Practical experience applying Spec-Driven Development or a similar specification-led engineering approach.
- Evidence of using AI across requirements analysis, specification creation, coding, testing, debugging, documentation and code review.
- Experience designing or using agentic workflows involving multiple stages, tools or automated actions.
- Ability to critically review, test, secure and improve AI-generated outputs before production use.
- Examples of improvements in delivery speed, software quality, test coverage or developer productivity achieved through AI-assisted engineering.
- Ability to explain the problem addressed, personal contribution, tools used, validation approach and outcome for software delivered using AI-assisted or agentic workflows.
Skills and Competencies - Technical Excellence
- Deep full-stack engineering capability across frontend, backend, data and cloud-native technologies.
- Strong solution-design and architectural thinking, balancing business needs with security, maintainability, reliability and technical quality.
- Expertise in API development, integrations, microservices and distributed systems.
- Strong understanding of DevOps, CI/CD, Infrastructure as Code, deployment automation and observability.
- Solid foundation in database technologies and data-engineering principles.
- Ability to discuss implementation decisions at code, application and system-design level.
AI-Native Mindset - Uses AI tools and agentic workflows to improve productivity, quality and delivery outcomes, not solely to generate code.
- Applies sound engineering judgement, governance and validation when working with AI-generated outputs.
- Maintains accountability and control when using AI to accelerate software development.
- Converts complex requirements into clear, testable specifications that improve delivery speed and quality.
- Remains curious about emerging capabilities while selecting tools and approaches pragmatically.
Professional Skills - Asks focused, relevant questions before moving into detailed design or implementation.
- Demonstrates strong problem-solving and analytical ability.
- Responds constructively to challenge and uses feedback to strengthen technical decisions.
- Communicates technical trade-offs clearly to both technical and non-technical audiences.
- Balances delivery speed with security, maintainability, reliability and long-term value.
- Works effectively with ambiguity using a structured and evidence-led approach.
- Takes accountability for outcomes rather than relying solely on tools, frameworks or AI recommendations.
- Collaborates effectively with stakeholders and multidisciplinary delivery teams.
- Actively contributes to knowledge sharing, code reviews and team-wide engineering excellence.
Candidate Evidence - During the selection process, candidates should be prepared to provide practical examples that demonstrate:
. click apply for full job details