> Markdown version of [/jobs/ext/2107536-software-engineer-java-c](https://www.wearedevelopers.com/jobs/ext/2107536-software-engineer-java-c). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Software Engineer - Java/C++ - **Company:** Developmentcollaborate - **Location:** Oxford, UK - **Contract:** Permanent contract - **Skills:** Clean Code Principles, Java (Programming Language), Agile Methodology, Artificial Intelligence, Software Applications, Acceptance Test-Driven Development, Automation of Tests, C++ (Programming Language), Cloud Engineering, Software Quality, Code Review, Continuous Delivery, Data Structures, Software Debugging, Software Design Patterns, DevOps, Memory Management, Eclipse (Software), Swing (Java), Python (Programming Language), Object-Oriented Software Development, Commercial Software, Performance Tuning, Scrum Methodology, Software Architecture, Software Tools, Tensorflow, Scaled Agile Framework, Software Engineering, Web Applications, Multithreading, Concurrency, Gitlab, Git, Integration Tests, Information Technology, Osgi - **Published:** August 19, 2026 - **Apply:** https://www.apply4u.co.uk/jobs/x/44501168/ ## About the Role ExperienceStrong hands-on Java development experience within complex desktop applicationsExcellent understanding of object-oriented programming principles and software designStrong computer science fundamentals including algorithms, data structures and software architectureSolid understanding of multithreading, concurrency and synchronisationExperience applying common design patterns and architectural principles in commercial softwareGood understanding of memory management, performance optimisation and application profilingExperience writing unit and integration tests and building maintainable automated test suitesExperience working with Git and CI/CD pipelines using GitLab or similar toolingStrong analytical thinking and problem-solving abilityExcellent debugging and troubleshooting skillsAbility to communicate technical concepts clearly and work collaboratively within Agile teamsHighly DesirableCommercial experience developing in C++Experience with Eclipse RCP, OSGi, Swing or SWTExperience building rich desktop applications rather than primarily web-based systemsExperience developing scientific, engineering or technical softwareExposure to geophysics, geology or oil and gas softwareDegree in Computer Science, Software Engineering or a related disciplineUnderstanding of cloud-native architectures and microservicesExposure to Python or machine learning frameworks such as TensorFlowExperience working within distributed international engineering teamsAwareness of AI-assisted software development tools and modern engineering practicesWhat We're Looking ForWe 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 programmingObject-oriented programming and SOLID principlesSoftware design patterns and architectureMemory management, performance optimisation and profilingUnit testing, integration testing and test-driven developmentContinuous Integration and Continuous Deployment practicesComplex technical problem solvingMathematical reasoning, including basic calculus and geometry where applicable to scientific or engineering softwareWhat Success Looks LikeDelivering robust, high-quality desktop software that is reliable, performant and maintainableApplying strong software engineering principles throughout the development lifecycleProducing clean, well-tested and scalable codeContributing positively within an Agile engineering teamCollaborating effectively with cross-functional and distributed teamsContinuously improving both technical capability and engineering practices ## Description Software Engineer (Java)Onsite in Abingdon 3 days a weekOverviewWe 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 ResponsibilitiesDesign, develop and maintain complex desktop software applications primarily using JavaContribute across the full software development lifecycle including design, development, testing, deployment and production supportWork within an Agile Scrum team delivering new features, enhancements and defect fixes through iterative developmentCollaborate closely with Product Owners, Architects, QA Engineers, Scrum Masters and fellow Developers to deliver high-quality softwareParticipate in technical design discussions, solution reviews and estimation sessionsWrite clean, maintainable and well-tested code following engineering best practicesPerform code reviews and contribute towards improving code quality and development standardsInvestigate, troubleshoot and resolve complex software issues across development and production environmentsWork effectively with distributed engineering teams across multiple locationsContinuously improve engineering practices and contribute ideas to enhance software quality and team performanceRequired Skills & ## Related Videos - [How a Small Team Shrank a Microsoft Monorepo by 94%](https://www.wearedevelopers.com/videos/1236-how-a-small-team-shrank-a-microsoft-monorepo-by-94) - [WeAreDevelopers LIVE - Modern DevOps for IoT Devices and More](https://www.wearedevelopers.com/videos/1805-wearedevelopers-live-modern-devops-for-iot-devices-and-more) - [Navigating the Corporate Jungle: Life as a Developer in a large Company](https://www.wearedevelopers.com/videos/621-navigating-the-corporate-jungle-life-as-a-developer-in-a-large-company) - [Git for Code Reviews](https://www.wearedevelopers.com/videos/429-git-for-code-reviews) - [From Punch Cards to AI-assisted Development](https://www.wearedevelopers.com/videos/611-from-punch-cards-to-ai-assisted-development) - [Enabling automated 1-click customer deployments with built-in quality and security](https://www.wearedevelopers.com/videos/83-enabling-automated-1-click-customer-deployments-with-built-in-quality-and-security) ## Related Articles - [Is Software Engineering Hard?](https://www.wearedevelopers.com/magazine/448-is-software-engineering-hard) - [Best Countries for Software Engineers](https://www.wearedevelopers.com/magazine/267-best-countries-for-software-engineers) - [Is Software Engineering Over-Saturated?](https://www.wearedevelopers.com/magazine/418-is-software-engineering-over-saturated) - [The 12 Best Jobs for Software Engineers](https://www.wearedevelopers.com/magazine/401-the-12-best-jobs-for-software-engineers) - [The Ultimate Software Engineer Career Path Guide for 2023](https://www.wearedevelopers.com/magazine/146-the-ultimate-software-engineer-career-path-guide-for-2023) - [Where To Find Software Engineering Jobs](https://www.wearedevelopers.com/magazine/396-where-to-find-software-engineering-jobs)