Software Engineer

Software Engineer

Experis UK | Cheltenham, ENG, GB

Posted 16 days ago

Apply Now

Description

Software Developer (Java/C++) - DV Clearance

About the Role

We are seeking an experienced Software Developer to join a dynamic and innovative team. In this role, you will be responsible for designing, developing, and maintaining high-performance backend software solutions using Java and C++ within Linux environments. You will work closely with customers and internal teams to understand requirements, define technical approaches, and deliver robust, reliable, and scalable solutions.

Key Responsibilities

  • Design, develop, and maintain high-performance backend software solutions using Java and C++ within Linux-based environments.
  • Lead the technical design and implementation of software components, services, and APIs.
  • Implement robust, maintainable, and well-tested code with a strong focus on performance, reliability, scalability, and security.
  • Provide technical leadership and mentoring to junior and mid-level software engineers.
  • Support architectural decision-making and contribute to technical strategy and roadmaps.
  • Conduct code reviews and ensure adherence to software engineering best practices and development standards.
  • Investigate, troubleshoot, and resolve complex software defects, including issues relating to customer libraries and third‑party dependencies.
  • Develop and maintain RESTful APIs, microservices, and distributed applications.
  • Integrate and utilise static analysis, profiling, and debugging tools to maintain high software quality and code coverage.
  • Containerise applications using Docker for streamlined deployment and scalability.
  • Contribute to Continuous Integration and Continuous Deployment (CI/CD) pipelines and DevSecOps practices.
  • Collaborate with customers, stakeholders, and cross‑functional teams to understand requirements and translate them into technical solutions.
  • Ensure software quality, performance, maintainability, and security through rigorous testing, code reviews, and adherence to engineering best practices.
  • Utilise version control and collaboration platforms including Git, Bitbucket, and GitLab.

Qualifications & Experience

  • Bachelor's degree in Computer Science, Software Engineering, or a related field (or equivalent commercial experience).
  • 5+ years' commercial experience developing software in Java and/or C++, preferably within Linux environments.
  • Strong understanding of software architecture, design patterns, and object‑oriented programming principles.
  • Experience designing and developing enterprise‑scale backend applications, APIs, and distributed systems.
  • Strong understanding of multithreaded and concurrent application development.
  • Experience analysing, troubleshooting, and optimising software performance within Linux environments.
  • Strong understanding of software debugging and diagnostic tools.
  • Experience with relational and/or NoSQL databases.
  • Familiarity with containerisation technologies such as Docker.
  • Knowledge of CI/CD tools such as Jenkins, GitLab CI/CD, or Azure DevOps.
  • Solid understanding of Git version control.
  • Experience working within Agile software development environments.
  • Excellent problem‑solving and analytical skills.
  • Strong communication, collaboration, and stakeholder engagement skills.

Security Requirement: DV Clearance is required.

#J-18808-Ljbffr