Software Engineer - Java/C++

Leap29

Oxford

On-site

GBP 55,000 - 75,000

Full time

2 days ago
Be an early applicant

A complete application in a minute

Tailored resume and cover letter, ready to send.

Get past ATS filters

Job summary

Leap29 is seeking an experienced Software Engineer with a strong background in Java and desktop application development in Oxford, UK. The role sits within an Agile engineering team responsible for high-performance desktop software used in technical environments.

The ideal candidate will write clean, maintainable code, understand software architecture and design patterns, and participate in the full development lifecycle from design to production support.

Qualifications

  • Strong hands-on Java development experience within complex desktop applications.
  • Excellent understanding of object-oriented programming principles and software design.
  • Strong computer science fundamentals including algorithms, data structures and software architecture.
  • Solid understanding of multithreading, concurrency and synchronisation.
  • Experience applying design patterns and architectural principles in commercial software.

Responsibilities

  • Design, develop and maintain complex desktop software applications primarily using Java
  • Contribute across the full software development lifecycle including design, development, testing, deployment and production support
  • Work within an Agile Scrum team delivering new features, enhancements and defect fixes through iterative development
  • Collaborate closely with Product Owners, Architects, QA Engineers, Scrum Masters and fellow Developers to deliver high-quality software
  • Participate in technical design discussions, solution reviews and estimation sessions
  • Write clean, maintainable and well-tested code following engineering best practices
  • Perform code reviews and contribute towards improving code quality and development standards
  • Investigate, troubleshoot and resolve complex software issues across development and production environments
  • Work effectively with distributed engineering teams across multiple locations
  • Continuously improve engineering practices and contribute ideas to enhance software quality and team performance

Skills

Java
Desktop apps
OOP
Multithreading
Unit testing
CI/CD
Git
Agile
Design patterns
Problem solving

Education

Bachelor's degree in Computer Science

Tools

Eclipse RCP
OSGi
Swing
SWT
GitLab CI/CD

Job description

We are looking for an experienced Software Engineer with a strong background in Java and desktop application development. This role is ideal for someone with excellent software engineering fundamentals, a solid understanding of computer science principles, and experience building complex commercial software applications.

You will join an Agile engineering team responsible for developing and maintaining high-performance desktop software used in technical and scientific environments. Working alongside Product, Architecture, QA and DevOps teams, you will contribute throughout the full software development lifecycle, from design through to production support.

The successful candidate will be passionate about writing clean, maintainable code and have a strong understanding of software architecture, object-oriented design and modern engineering best practices.

Key Responsibilities

  • Design, develop and maintain complex desktop software applications primarily using Java
  • Contribute across the full software development lifecycle including design, development, testing, deployment and production support
  • Work within an Agile Scrum team delivering new features, enhancements and defect fixes through iterative development
  • Collaborate closely with Product Owners, Architects, QA Engineers, Scrum Masters and fellow Developers to deliver high-quality software
  • Participate in technical design discussions, solution reviews and estimation sessions
  • Write clean, maintainable and well-tested code following engineering best practices
  • Perform code reviews and contribute towards improving code quality and development standards
  • Investigate, troubleshoot and resolve complex software issues across development and production environments
  • Work effectively with distributed engineering teams across multiple locations
  • Continuously improve engineering practices and contribute ideas to enhance software quality and team performance

Required Skills & Experience

  • Strong hands-on Java development experience within complex desktop applications
  • Excellent understanding of object-oriented programming principles and software design
  • Strong computer science fundamentals including algorithms, data structures and software architecture
  • Solid understanding of multithreading, concurrency and synchronisation
  • Experience applying common design patterns and architectural principles in commercial software
  • Good understanding of memory management, performance optimisation and application profiling
  • Experience writing unit and integration tests and building maintainable automated test suites
  • Experience working with Git and CI/CD pipelines using GitLab or similar tooling
  • Strong analytical thinking and problem-solving ability
  • Excellent debugging and troubleshooting skills
  • Ability to communicate technical concepts clearly and work collaboratively within Agile teams

Highly Desirable

  • Experience with Eclipse RCP, OSGi, Swing or SWT
  • Experience building rich desktop applications rather than primarily web-based systems
  • Experience developing scientific, engineering or technical software
  • Exposure to geophysics, geology or oil and gas software
  • Degree in Computer Science, Software Engineering or a related discipline
  • Understanding of cloud-native architectures and microservices
  • Exposure to Python or machine learning frameworks such as TensorFlow
  • Experience working within distributed international engineering teams
  • Awareness of AI-assisted software development tools and modern engineering practices

What We're Looking For

We are particularly interested in engineers who have a strong grounding in software engineering principles rather than purely application development experience. Successful candidates should be able to demonstrate practical knowledge in areas such as:

  • Multithreading and concurrent programming
  • Object-oriented programming and SOLID principles
  • Software design patterns and architecture
  • Memory management, performance optimisation and profiling
  • Unit testing, integration testing and test-driven development
  • Continuous Integration and Continuous Deployment practices
  • Complex technical problem solving
  • Mathematical reasoning, including basic calculus and geometry where applicable to scientific or engineering software

What Success Looks Like

  • Delivering robust, high-quality desktop software that is reliable, performant and maintainable
  • Applying strong software engineering principles throughout the development lifecycle
  • Producing clean, well-tested and scalable code
  • Contributing positively within an Agile engineering team
  • Collaborating effectively with cross-functional and distributed teams
  • Continuously improving both technical capability and engineering practices

Software Engineer - Java/C++ Oxfordshire, United Kingdom

Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Senior Backend Developer
Senior Backend Developer

Leap29 • Oxford

On-site
GBP 65,000 - 90,000
Software Developer - C# .NET Desktop
Software Developer - C# .NET Desktop

Interface Recruitment • Lincoln

On-site
GBP 35,000 - 50,000
Salary £35,000 to £50,000
Holiday: 25 days + bank holidays + 3 x
Company pension
+5
Software Engineer, C++, Python, Cloud, Engineering Platform, Manufacturing, COR751
Software Engineer, C++, Python, Cloud, Engineering Platform, Manufacturing, COR751

Corriculo • Oxford

On-site
GBP 60,000 - 90,000
25 days holiday + bank holidays
Bonus scheme
Pension
Senior Software Engineer - Modern C++ & Linux
Senior Software Engineer - Modern C++ & Linux

KO2 Embedded Recruitment Solutions LTD • Oxford

Hybrid
GBP 68,000 - 83,000
Benefits
Hybrid work
Software Engineer (Java / C++)
Software Engineer (Java / C++)

Milton Park • Abingdon

On-site
GBP 40,000 - 60,000
Senior Software Engineer
Senior Software Engineer

Leap29 • Abingdon

On-site
GBP 70,000 - 95,000
Senior Software Engineer - Aberdeen
Senior Software Engineer - Aberdeen

Leap29 • Aberdeen City

On-site
GBP 75,000 - 110,000
Software Developer (C++)
Software Developer (C++)

Origin8tive Ltd. • Cheltenham

On-site
GBP 54,000 - 66,000
Health insurance
Pension
Cycle to work
+1
Software Engineer
Software Engineer

Technify Talent Limited • Morecambe

Hybrid
GBP 50,000 - 70,000
Software Engineer C#/C++
Software Engineer C#/C++

Mbda • Royton

On-site
GBP 55,000 - 85,000