At a Glance
- Tasks: Develop impactful desktop applications using Java and Swing, contributing to real-world solutions.
- Company: Join Semantics 21, a multi-award-winning UK software company making a difference in public safety.
- Benefits: Enjoy a competitive salary, flexible working hours, and a supportive team environment.
- Other info: Opportunity for career growth and direct influence on product direction.
- Why this job: Make a real impact with your coding skills in a collaborative and innovative setting.
- Qualifications: Strong Java development experience and a passion for building long-term software products.
The predicted salary is between 35000 - 45000 £ per year.
About Us
Semantics 21 is a multi-award-winning UK software company developing specialist desktop software used internationally within public safety and investigative environments. Our technology helps organisations process and review digital evidence more effectively, supporting work that can have genuine real-world impact in areas including child protection and public safety.
The Role
This is a hands-on software engineering role focused on long-term desktop application development - not web development. You will work across both existing and new applications, contributing to software used daily in real operational environments where reliability, usability, and performance genuinely matter. This role is ideal for someone who enjoys building real software products, solving practical engineering problems, and contributing ideas within a smaller technical team where your voice and technical direction genuinely matter.
You will be involved in:
- Desktop application development using Java and Swing, with some JavaFX where appropriate
- Improving and maintaining large commercial codebases
- Performance optimisation and troubleshooting
- Designing intuitive desktop user interfaces
- Database integration using technologies such as MySQL and SQLite
- File processing, reporting, and data handling
- Contributing ideas, innovation, and long-term technical improvements across the wider platform
- Helping guide development standards, architecture decisions, and future technical direction
- Supporting, mentoring, and where appropriate supervising other developers as the team grows
We use modern development tooling and actively support sensible use of AI-assisted development tools, such as Codex, where they improve productivity, code understanding, testing, or development workflow.
Why Join Us
We are a smaller engineering team where developers are encouraged to contribute ideas, improvements, and innovation - not simply complete assigned tasks. Developers work directly with the CEO within a flat management structure. This gives the development team direct access to someone with hands-on software development, architecture, customer, and investigator experience. Your input will directly influence products, workflows, technical direction, and long-term development decisions across the company. This is not an environment where developers are treated as interchangeable resources or isolated from decision-making. Your ideas will be heard, challenged, and where appropriate, implemented. This role suits developers who enjoy building real, long-term software products rather than short-lived web, marketing, or internal dashboard projects.
What We're Looking For
We are ideally looking for someone with:
- Strong commercial Java development experience
- Experience developing desktop applications using Swing and/or JavaFX
- Strong understanding of Core Java and object-oriented programming
- Experience working within larger or long-term codebases
- Good debugging, analytical, and problem-solving skills
- Ability to work independently and take ownership of technical challenges
- Ability to think beyond individual tickets and contribute to longer-term product improvement
- Strong written and verbal English communication skills
Experience with any of the following would also be beneficial:
- Multithreading/concurrency
- MySQL or SQLite
- JasperReports
- Git
- File parsing and processing
- AI-assisted development workflows
Strong personal projects, GitHub work, or demonstrable practical coding ability are valued more highly than formal qualifications alone. Please include links to previous work, GitHub, portfolio projects, screenshots, or other examples in your CV or application where available.
Working Environment
Based from our Stafford (ST18) office. Office-based preferred, though hybrid working may be considered depending on experience and role fit. Shortlisted candidates will be welcomed into the office as part of the process. Full-time, permanent role. Free onsite parking. We support flexible working hours where possible. Most roles are based around a 7.5-hour working day, Monday-Friday, during normal office hours, with start and finish times agreed around team and business needs. Typical patterns may include 08:00-16:00, 09:00-17:00, or 10:00-18:00.
What We Offer
£35,000 - £45,000 depending on experience, capability, and level of responsibility. Long-term stable product development work. Real influence within a growing engineering team. Direct involvement in product and technical direction. Modern development environment and tooling. Sensible use of AI-assisted development tools. Opportunities for progression and increased technical responsibility over time. Friendly, supportive, and low-bureaucracy working environment.
Important Note
This role is specifically focused on Java desktop software engineering. Applicants focused primarily on web development frameworks are unlikely to be suitable for this position. Please include an up-to-date CV. A formal cover letter is not required, but a short note explaining your relevant Java desktop experience, project examples, or links to previous work is welcome. We review applications as they arrive and aim to contact suitable candidates promptly rather than waiting until the closing date. The role may close once we find the right candidate, so early applications are encouraged. Direct applicants only - no recruitment agencies.
Senior Java Software Engineer - Desktop Applications employer: Semantics 21
At Semantics 21, we pride ourselves on being an exceptional employer, offering a collaborative and innovative work culture where your ideas truly matter. As a Senior Java Software Engineer, you'll enjoy the benefits of working in a supportive environment with direct access to leadership, opportunities for professional growth, and the chance to make a real-world impact through our cutting-edge desktop applications. Our Stafford office provides a friendly atmosphere with flexible working hours and a commitment to employee well-being, making it an ideal place for those looking to develop their careers while contributing to meaningful projects.
StudySmarter Expert Advice🤫
We think this is how you could land Senior Java Software Engineer - Desktop Applications
✨Tip Number 1
Get your hands dirty with coding challenges! Brush up on your Java skills and tackle some real-world problems. This will not only boost your confidence but also give you great talking points during interviews.
✨Tip Number 2
Network like a pro! Connect with current employees at Semantics 21 on LinkedIn or attend tech meetups. A friendly chat can sometimes lead to insider tips or even a referral, which can make all the difference.
✨Tip Number 3
Show off your projects! Whether it's on GitHub or your personal portfolio, having tangible examples of your work can really impress hiring managers. Make sure to highlight any desktop applications you've developed using Java.
✨Tip Number 4
Apply through our website! It’s the best way to ensure your application gets seen by the right people. Plus, it shows you're genuinely interested in joining our team at Semantics 21.
We think you need these skills to ace Senior Java Software Engineer - Desktop Applications
Some tips for your application 🫡
Show Off Your Java Skills:Make sure to highlight your strong commercial Java development experience in your application. We want to see your expertise in desktop applications, especially with Swing and JavaFX, so don’t hold back on showcasing your best projects!
Keep It Relevant:When you’re writing your application, focus on your relevant experience and skills that match the job description. Mention any long-term codebases you've worked on and how you’ve tackled real-world engineering problems. This helps us see how you can contribute to our team.
Include Your Work Samples:We love seeing what you can do! Include links to your GitHub, personal projects, or any other examples of your coding work. This gives us a better idea of your practical abilities and how you approach software development.
Be Yourself:While we appreciate professionalism, we also value authenticity. Write in a way that reflects your personality and passion for software engineering. A short note explaining your relevant experience can go a long way in making your application stand out!
How to prepare for a job interview at Semantics 21
✨Know Your Java Inside Out
Make sure you brush up on your Java skills, especially around desktop application development using Swing and JavaFX. Be prepared to discuss your experience with Core Java and object-oriented programming, as well as any large codebases you've worked on.
✨Showcase Your Problem-Solving Skills
Be ready to share specific examples of how you've tackled complex engineering problems in the past. Think about times when you've optimised performance or debugged tricky issues, and be prepared to explain your thought process during those challenges.
✨Demonstrate Your Passion for Development
Bring along examples of your personal projects or contributions on GitHub. This is a great way to show your enthusiasm for building real software products and your ability to think beyond individual tasks. Highlight any innovative ideas you've implemented in your work.
✨Engage with the Team's Vision
Familiarise yourself with Semantics 21's mission and the impact of their software in public safety. During the interview, express your interest in contributing to their goals and how your skills can help shape the future of their desktop applications.