Senior Software Engineer – Abingdon, Oxfordshire – Permanent
Hybrid 3 days on site, 2 days remote
Required
- 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++ with 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 (eg, 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.
#J-18808-Ljbffr…
