Software Developer
Role details
Job location
Tech stack
Job description
- Design, develop, test, deploy, and maintain enterprise-grade applications and services.
- Translate business and technical requirements into scalable, secure, and high-performance solutions.
- Contribute to system architecture, design patterns, and technical strategy decisions.
- Develop RESTful APIs, microservices, distributed systems, and event-driven architectures.
- Ensure clean code principles, SOLID design, and industry best practices are followed.
- Conduct peer code reviews and enforce development governance standards.
- Implement secure coding practices and address OWASP vulnerabilities.
- Optimise application performance, scalability, reliability, and resilience.
- Develop and maintain CI/CD pipelines and automated deployment processes.
- Work closely with DevOps teams to support infrastructure-as-code and cloud-native deployments.
- Implement logging, monitoring, and observability practices.
- Collaborate effectively with Business Analysts, Architects, QA engineers, and Product Owners.
- Participate actively in Agile ceremonies including sprint planning, stand-ups, and retrospectives.
- Support system integrations, API gateways, and enterprise service bus implementations.
- Contribute to database design, optimisation, and data integrity management.
- Provide production support and root-cause analysis for complex technical issues.
- Lead technical improvements, refactoring initiatives, and technical debt reduction.
- Mentor junior developers and promote engineering excellence.
- Maintain comprehensive technical documentation and release artefacts.
Requirements
Do you have experience in xUnit?, Do you have a Bachelor's degree?, We are seeking a highly skilled and results-driven Software Developer to design, develop, and deliver robust, scalable, secure, and enterprise-grade software solutions. The role requires deep technical expertise, strong architectural understanding, and the ability to contribute to full software development lifecycles within complex digital transformation and enterprise modernisation programmes., Key Skills, Qualifications and Experience Needed [The candidate must demonstrate these in all stages of assessment]
- Bachelor's degree in computer science, Software Engineering, Information Technology, or related discipline.
- 6+ years of proven experience in enterprise software development environments.
- Advanced proficiency in C#, .NET / .NET Core, Java, Python, or modern JavaScript frameworks.
- Strong expertise in ASP.NET Core, Spring Boot, Node.js, Angular, React, or equivalent frameworks.
- Deep understanding of Object-Oriented Programming (OOP), SOLID principles, Clean Architecture, and Domain-Driven Design (DDD).
- Strong experience designing and developing RESTful APIs and microservices architectures.
- Expertise in distributed systems, event-driven architectures, and message brokers (e.g., Kafka, RabbitMQ).
- Strong knowledge of multithreading, concurrency, asynchronous programming, and performance tuning.
- Experience with relational and NoSQL databases (SQL Server, PostgreSQL, MongoDB, etc.).
- Advanced SQL optimisation, indexing strategies, and database performance tuning.
- Strong understanding of cloud-native development in Azure, AWS, or Google Cloud environments.
- Experience with containerisation (Docker), orchestration (Kubernetes), and microservices deployment.
- CI/CD pipeline implementation using Azure DevOps, GitHub Actions, Jenkins, or similar tools.
- Infrastructure-as-Code knowledge (Terraform, ARM templates, CloudFormation).
- Strong understanding of API security, OAuth2, JWT, OpenID Connect, and identity management.
- Experience implementing secure coding practices aligned with OWASP Top 10.
- Familiarity with system integration patterns, enterprise service bus, and middleware technologies.
- Strong debugging, troubleshooting, and root-cause analysis capabilities.
- Experience with automated testing frameworks (xUnit, NUnit, JUnit, Jest, Cypress).
- Test-Driven Development (TDD) and Behaviour-Driven Development (BDD) expertise.
- Strong knowledge of version control systems (Git) and branching strategies (GitFlow).
- Experience with monitoring and observability tools (Application Insights, Prometheus, Grafana).
- Strong understanding of scalability, resilience, caching strategies (Redis), and load balancing.
- Experience working within Agile, Scrum, SAFe, or hybrid delivery frameworks.
- Knowledge of secure SDLC, governance, and regulatory compliance requirements.
- Strong documentation skills including technical design documents, architectural diagrams, and deployment guides.
- Experience contributing to enterprise architecture discussions and technical roadmaps.
- Ability to lead technical design sessions and provide architectural recommendations.
- Proven ability to mentor junior developers and promote engineering best practices.
- Strong ownership, accountability, and delivery-driven mindset.
Other Key Skills:
- Exceptional analytical and complex problem-solving abilities.
- Strong systems thinking and architectural mindset.
- High attention to detail with a strong focus on quality, performance, and security.
- Strong stakeholder communication and cross-functional collaboration skills.
- Ability to influence technical decisions and challenge constructively.
- Strong adaptability within fast-paced, high-change environments.
- Proactive risk identification and mitigation capability.
- Strong documentation discipline and traceability management.
- Excellent time management and prioritisation skills.
- Continuous learning mindset with awareness of emerging technologies and trends.
- Strong customer-centric and business-aligned delivery focus.
- Ability to lead by example and foster a culture of engineering excellence.
Qualifications: Bachelor's degree or above in the UK or equivalent.