Software Engineer

Software Engineer

Approx. £112,000 (Plus Benefits) | London (Hybrid) | Fixed-Term Contract

As a Software Engineer, you have influence well beyond your individual contributions. You take ownership of your technical domain, self-direct your work, and plan and scope projects end to end. You act as a key point of contact for cross-functional partners, approaching problems with a structured mindset—researching solutions, evaluating technologies, and recommending approaches that balance short-term delivery with long-term sustainability.

Key Responsibilities

Software Development & Code Quality

  • Write high-quality product or system development code with minimal supervision.
  • Design code for testability and maintainability; write comprehensive test cases and documentation.
  • Conduct testing beyond unit tests, including integration, performance, stress, security, load, and fuzz testing.
  • Review peer code and provide constructive feedback to ensure best practices (style, accuracy, efficiency, testability).
  • Identify technical debt and high-risk components; implement or guide improvements to enhance long-term code health.

Project Ownership & Delivery

  • Own projects through to completion, including qualification, deployment, monitoring, and ongoing support.
  • Contribute to end-user documentation, process automation, and customer support where required.
  • Build or improve testing, monitoring, and feedback systems to support engineering excellence.
  • Triage and resolve system or product issues by debugging and analyzing impacts across hardware, network, and services.

System Design & Architecture

  • Design systems within your area of responsibility, breaking down complex problems into solvable components.
  • Assess trade-offs and participate in or lead design reviews to select appropriate technologies.
  • Ensure systems are scalable, maintainable, and aligned with long-term architectural goals.
  • For those with reports, balance hands-on technical contribution with guiding and reviewing team designs.

Leadership & Business Impact

  • Set, communicate, and deliver against team priorities aligned with organizational goals.
  • Partner with stakeholders to make informed decisions and drive business impact.
  • Prioritize work, allocate resources equitably, and define metrics to ensure successful delivery.
  • Navigate change effectively by adjusting plans, removing blockers, and encouraging innovation and thoughtful risk-taking.

People Leadership & Culture (where applicable)

  • Foster inclusive team norms that promote belonging, psychological safety, and respect.
  • Encourage collaboration, open communication, and recognition of positive contributions.
  • Support employee wellbeing through regular check-ins and proactive workload management.
  • Role model company values, policies, and ethical standards.

Minimum Qualifications

Proficiency in the following areas is required:

  • Programming and code comprehension
  • Data structures and algorithms
  • Software and systems design
  • Architecture and systems thinking
  • Test engineering and code/system health
  • Debugging, diagnosis, and issue resolution
  • Data analysis and synthesis
  • Simplification and conflict resolution
  • Team management (for people managers)

Role-Specific Context

The successful candidate will join a team that incubates and delivers new products through structured sprint cycles.

  • Approximately 70% of the role will focus on maintaining and enhancing existing products (including building new features).
  • Approximately 30% will be dedicated to incubating and developing new products.

Job Details

Company
Morgan McKinley
Location
London Area, United Kingdom
Posted