Senior Software Engineer

  • NES Fircroft
  • Abingdon, Oxfordshire
  • 15/06/2026
Full time Information Technology Telecommunications

Job Description

Senior Software Engineer - Abingdon, Oxfordshire - Permanent

Hybrid 3 days on site, 2 days remote

Requirements
  • 5+ years of professional software engineering building & shipping complex, production grade applications - not solely scripting, prototyping, or research.
  • Strong proficiency in C#/.NET; also C/C++; demonstrated ability to work across both languages in a single product ecosystem.
  • Undergraduate (or higher) degree in Computer Science, Software Engineering, or a closely related engineering discipline.
  • Any Eclipse RCP or IDE's nice to have.
  • Comfort & curiosity with AI assisted development tools & a track record of staying ahead of technology trends.
  • Experience with cloud architecture (AWS, Azure, &/or Google Cloud).
  • Proven experience with software engineering fundamentals: object oriented & component based design, design patterns, unit/integration testing, version control (Git), & code review workflows.
  • Hands on CI/CD experience - building, configuring, or maintaining automated build & deployment pipelines.
  • Experience modernizing legacy software - migrating codebases from older languages or frameworks to current platforms, including UI/UX modernization.
Senior Software Engineer Job Duties

This is a hands on software engineering role. My client is looking to recruit an experienced Senior Software Engineer to design, develop, & modernize high performance Rock Physics desktop & cloud applications. Reporting to the Team Lead & working closely with the Product Owner, you will own the technical direction of production software - writing code daily, reviewing pull requests, & driving architectural decisions.

Senior Software Engineer Key Responsibilities
  • Design & build software - Architect, implement, & maintain complex desktop & cloud applications using modern software engineering practices (design patterns, SOLID principles, automated testing, continuous integration/delivery).
  • Modernize legacy systems - Lead migration of mature C/C++ codebases to modern languages, runtimes, & UI/UX frameworks while preserving scientific accuracy & performance.
  • Leverage AI assisted development - Actively adopt AI powered tools (e.g., Copilot, code generation, automated testing assistants) to accelerate delivery & improve code quality.
  • Collaborate on architecture - Partner with the Team Lead & Product Owner to translate requirements into sound, maintainable technical solutions the team can implement & iterate on.
  • Mentor & lead technically - Coach junior & mid level developers through code reviews, pair programming, & knowledge sharing; foster a culture of engineering excellence.
  • Communicate clearly - Escalate risks, trade offs, & progress in a timely, structured manner to technical & non technical stakeholders.
  • Stay current - Continuously evaluate & adopt emerging languages, frameworks, cloud services, & AI/ML tooling relevant to the product.

Self motivated & collaborative; thrives in a team environment & takes initiative without direction. Excellent analytical, communication, & problem solving skills.