At a Glance
- Tasks: Lead software maintenance and modernisation of complex systems while mentoring fellow engineers.
- Company: Leading technology consultancy with a focus on innovative software engineering projects.
- Benefits: Competitive salary, flexible working, and opportunities for professional growth.
- Other info: Work in a collaborative environment with excellent career advancement opportunities.
- Why this job: Join a dynamic team tackling challenging codebases and make a real impact in tech.
- Qualifications: Strong Python skills and experience with C/C++ integration preferred.
The predicted salary is between 80000 - 90000 € per year.
We are looking to recruit a MOD DV Cleared Senior Software Engineer for a leading technology consultancy delivering complex software engineering, maintenance and modernisation projects. This is a hands-on senior engineering role focused on maintaining, improving and evolving complex software systems. The role would suit someone with strong Python development experience, ideally combined with exposure to C/C++ integration, performance improvement, refactoring, legacy system modernisation or engineering-heavy environments.
You will work on technically challenging codebases where reliability, maintainability and engineering quality are critical. This will include:
- Investigating complex defects and incidents
- Performing root cause analysis
- Implementing durable fixes
- Refactoring and improving existing software
- Supporting architecture changes as requirements evolve
- Helping modernise codebases, tooling and engineering standards
The role requires someone who is comfortable working across established systems, improving existing code and supporting other engineers through mentoring, review and technical leadership.
Key Responsibilities
- Lead hands-on software maintenance, enhancement and upgrade work across complex codebases
- Investigate defects, incidents and technical issues, carrying out root cause analysis and implementing robust fixes
- Refactor and improve existing software to increase maintainability, reliability and performance
- Support architecture adaptation and evolution as system requirements change
- Work across Python-based systems, including integration with C/C++ components or bindings where required
- Contribute to codebase modernisation, engineering standards, tooling improvements and quality processes
- Support performance analysis and deliver improvements where needed
- Mentor engineers, provide technical guidance and help raise engineering quality across the team
- Contribute to peer review, quality gates and engineering governance
- Produce technical evidence, documentation and supporting material for project deliverables
- Support planning activity, estimation, acceptance criteria and delivery inputs
Skills & Experience
- Strong hands-on software engineering experience in complex technical environments
- Strong Python development skills
- Experience working with C or C++ codebases, bindings, integrations or interoperability would be highly beneficial
- Experience maintaining, refactoring or modernising existing/legacy software systems
- Strong debugging, problem-solving and root cause analysis skills
- Ability to investigate complex incidents and deliver durable, well-engineered fixes
- Understanding of software architecture, maintainability, reliability and performance considerations
- Experience with peer review, engineering standards, quality gates and technical documentation
- Ability to mentor other engineers and provide technical leadership in a hands-on capacity
- Comfortable working in structured delivery environments where evidence, quality and engineering discipline are important
Desirable Experience
- Experience with MATLAB or Simulink integration
- Experience working on scientific, engineering, defence, aerospace, simulation, modelling or complex systems software
- Exposure to performance optimisation, systems integration or software used in high-assurance environments
- Experience supporting architecture evolution or major codebase upgrade programmes
Senior Software Engineer in Fareham employer: Data Careers
Join a leading technology consultancy in Portsmouth, where you will be part of a dynamic team dedicated to delivering innovative software solutions. With a strong focus on employee growth and development, we offer a collaborative work culture that values technical excellence and mentorship. Enjoy the flexibility of a hybrid working model, competitive salary, and comprehensive benefits, all while tackling complex engineering challenges that make a real impact in the defence sector.
StudySmarter Expert Advice🤫
We think this is how you could land Senior Software Engineer in Fareham
✨Tip Number 1
Network like a pro! Reach out to your connections in the tech industry, especially those who work in software engineering. Attend meetups or online webinars to get your name out there and make some valuable contacts.
✨Tip Number 2
Show off your skills! Create a portfolio showcasing your best projects, especially those involving Python and C++. This will give potential employers a taste of what you can do and set you apart from the crowd.
✨Tip Number 3
Prepare for interviews by brushing up on your problem-solving skills. Practice coding challenges and be ready to discuss your experience with legacy systems and modernisation projects. Confidence is key!
✨Tip Number 4
Don’t forget to apply through our website! We’re always on the lookout for talented engineers like you. Plus, it’s a great way to ensure your application gets the attention it deserves.
We think you need these skills to ace Senior Software Engineer in Fareham
Some tips for your application 🫡
Tailor Your CV:Make sure your CV reflects the skills and experiences mentioned in the job description. Highlight your Python and C++ experience, and don’t forget to mention any work with legacy systems or complex software environments.
Craft a Compelling Cover Letter:Use your cover letter to tell us why you’re the perfect fit for this role. Share specific examples of how you've tackled complex defects or modernised codebases in the past. This is your chance to show off your personality too!
Showcase Your Problem-Solving Skills:In your application, emphasise your debugging and root cause analysis skills. We want to see how you approach complex incidents and deliver durable fixes, so share relevant experiences that demonstrate your expertise.
Apply Through Our Website:We encourage you to apply directly through our website. It’s the best way for us to receive your application and ensures you’re considered for the role. Plus, it’s super easy to do!
How to prepare for a job interview at Data Careers
✨Know Your Tech Inside Out
Make sure you brush up on your Python and C++ skills before the interview. Be ready to discuss specific projects where you've used these languages, especially in complex systems or legacy modernisation. This will show that you’re not just familiar with the tech but have hands-on experience.
✨Prepare for Problem-Solving Questions
Expect to face questions that test your debugging and root cause analysis skills. Think of examples from your past work where you identified and fixed complex issues. Being able to articulate your thought process will demonstrate your problem-solving abilities.
✨Show Off Your Mentoring Skills
Since the role involves mentoring other engineers, be prepared to share experiences where you’ve provided technical guidance or led a team. Highlight how you helped improve engineering quality and fostered a collaborative environment.
✨Understand the Bigger Picture
Familiarise yourself with the company’s projects and their impact on the industry. Be ready to discuss how your skills can contribute to their goals, especially in terms of software architecture and performance improvements. This shows that you’re not just looking for a job, but are genuinely interested in their mission.