Leap29
Senior Software Engineer

How your CV stacks up
Upload your CV to see how well it fits this job role
?%
Senior Software Engineer (Java | Desktop)
Onsite in Abingdon 3 days a week
Overview
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
Reasons to use Rodeo
I’m in my final year doing Economics and I don’t know whether to apply for grad schemes now or do a masters first. What do you think?
Honest answer — it depends on where you want to end up. A lot of top grad schemes (Big 4, civil service, banking) don’t need a masters. Let’s look at the ones you’d be competitive for now, and we can decide if a masters actually adds anything.
Also worth knowing: most autumn 2026 applications are open now. Timing matters more than you think.
Start with a chat, not a search bar
Grad scheme, placement, apprenticeship? Not sure what you want yet — that's fine. Your agent talks it through with you and turns "I have no idea" into a shortlist.
Graduate Consultant — 2026 Scheme
Why you're a good match
StrongYour economics background and your summer at a regional bank line up with what PwC looks for on the consulting scheme. Applications close in four weeks.
See breakdownIt searches the market for you
Every day your agent scans the market matching roles against what actually matters to you, not just keywords on a CV.
Why you're a good match
You’ve got the grades and the economics background, and your bank internship is exactly the experience this scheme looks for. Apply soon — deadlines close within the month.
Experience fit
Your summer at the bank plus your econometrics coursework map directly to the day-one responsibilities on this scheme — client modelling, market briefings, and deal support.
Only hits
No noise. No "maybe this fits." Just roles with a clear explanation of why they're right — and where to focus when applying.
Required Skills & Experience
- 3+ years of commercial software engineering 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 synchronization
- Experience applying common design patterns and architectural principles in commercial software
- Good understanding of memory management, performance optimization, 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
- Commercial experience developing in C++
- 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


Get help with your application
Your very own career expert that helps elevate your application to the next level.
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 optimization, 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
If this sounds like an interesting opportunity for you, please do apply with your up-to-date CV.
“It took my CV and asked me questions relevant to understanding what kind of jobs to suggest for me. Suggestions were almost perfect. Jobs were exactly what I’ve been looking for.”
Jessica, London
Skills