Senior Software Developer
NSD
Gloucester, United Kingdom
yesterday
Role details
Contract type
Permanent contract Employment type
Full-time (> 32 hours) Working hours
Regular working hours Languages
English Experience level
Senior Compensation
£ 78KJob location
Gloucester, United Kingdom
Tech stack
Java
API
Agile Methodologies
Azure
C++
Static Program Analysis
Profiling
Software Quality
Code Review
Software Debugging
Software Design Patterns
Distributed Systems
Linux System Administration
NoSQL
Object-Oriented Software Development
Performance Tuning
Software Architecture
Software Engineering
Web Services
Software Organization
Multithreading
Backend
GIT
Linux Development
Gitlab-ci
Information Technology
REST
Software Version Control
Devsecops
Docker
Jenkins
Microservices
Job description
- Designing, developing and maintaining high-performance backend software using Java and C++.
- Leading the technical design and implementation of software components, APIs and services.
- Building secure, scalable and maintainable applications within Linux environments.
- Mentoring and supporting junior engineers through technical guidance and code reviews.
- Contributing to software architecture, technical strategy and engineering roadmaps.
- Developing RESTful APIs, microservices and distributed applications.
- Investigating and resolving complex software defects and performance issues.
- Using profiling, debugging and static analysis tools to maintain software quality.
- Containerising applications using Docker.
- Supporting CI/CD pipelines and DevSecOps practices.
- Collaborating with customers and multidisciplinary teams to deliver technical solutions.
- Using Git-based version control platforms to support collaborative development.
Requirements
This role is ideal for an experienced engineer who enjoys solving complex technical challenges, mentoring others, and contributing to the design of secure, enterprise-scale systems., * Commercial experience developing software with Java and/or C++ (5+ years).
- Strong Linux development experience.
- Excellent understanding of object-oriented programming, software architecture and design patterns.
- Experience building enterprise-scale backend applications, APIs and distributed systems.
- Experience with multithreaded and concurrent application development.
- Strong debugging, troubleshooting and performance optimisation skills.
- Experience with relational and/or NoSQL databases.
- Familiarity with Docker and containerised applications.
- Experience using CI/CD tools such as Jenkins, GitLab CI/CD or Azure DevOps.
- Strong knowledge of Git and modern software development practices.
- Experience working within Agile development environments.
- Degree in Computer Science, Software Engineering or equivalent commercial experience., * Strong leadership and mentoring capabilities.
- Excellent analytical and problem-solving skills.
- Strong communication and stakeholder management abilities.
- A collaborative approach with a passion for delivering high-quality software.
- Commitment to engineering best practices, continuous improvement and secure software development