We are seeking a skilled .
NET Software Engineer to join our core product development team.
In this role, you will be responsible for designing, building, and maintaining high-quality backend and full-stack applications that power our cloud-connected camera platform.
The ideal candidate will have strong experience with .
NET, modern cloud-native architectures, and a passion for writing clean, maintainable, and scalable code.
Key Responsibilities
Design, develop, and maintain backend services and APIs using .
NET 6+
Implement high-quality, maintainable, and testable code following modern engineering standards
Build integrations with Azure services, databases, and third-party platforms
Create and maintain reusable libraries, shared components, and internal tooling
Participate in system design and architecture sessions for new platform initiatives
Apply SOLID principles, domain-driven concepts, and clean architecture practices
Help shape our next-generation unified system and contribute to platform-wide design decisions
Work closely with the cloud engineering team to build reliable, cloud-native services
Assist in implementing CI/CD pipelines and automation in Azure DevOps, GitHub & GitLab
Ensure applications are built for performance, observability, and resilience
Collaborate with cloud engineering, support, and product stakeholders
Participate in code reviews and contribute to team-wide technical improvements
Communicate clearly and proactively around progress, blockers, and technical trade-offs
Write unit, integration, and automated tests to maintain high-quality standards
Troubleshoot issues across environments (local, dev/staging, production)
Help diagnose and improve performance bottlenecks in APIs and services
Required Experience / Qualifications
5+ years of hands-on experience with .
NET (Core 6+)
Strong experience building RESTful APIs and backend services
Solid understanding of C#, async programming, and distributed system concepts, ideally using a microservices-style architecture
Experience with relational databases (SQL Server, MySQL) including EF Core & ADO.NET
Familiarity with message-based or event-driven architectures (Azure Service Bus, Event Hub, etc.)
Experience with CI/CD pipelines and Git-based workflows (branching, pull requests, and code reviews)
Basic caching concepts (Redis, MemoryCache)
Understanding of core networking concepts (TCP/IP, UDP, DHCP, DNS, NAT, VPNs, firewalls) and the ability to troubleshoot connectivity issues between devices, services, and cloud systems
Strong debugging, problem-solving, and performance optimisation skills
Understanding of security best practices for web APIs and cloud applications (e.g. JWT, Identity)
Preferred Qualifications
Familiarity with Kubernetes or containerised environments
Experience working with or building microservices
Experience with any streaming technologies or frameworks (RTSP, WebRTC, HLS)
Experience with front-end technologies (Blazor, React, or similar)
Understanding of video processing, IoT systems, or real-time event-driven solutions
Knowledge of compliance frameworks (ISO*****)
Basic knowledge of Linux
Experience working in small, high-ownership engineering teams
Exposure to other languages such as Java or Python is beneficial
Our Recruitment Process
Application ReviewWe review all applications and shortlist candidates whose experience aligns with the role requirements.
Initial Screening - Phone Interview (1 hour)A conversation to learn more about you, discuss the role, and give you an opportunity to ask questions.
Practical Task / Code Review (1 hour)A short technical task designed to help us understand your engineering approach and problem-solving style.
Feedback on Practical TaskTo ensure fairness and consistency, we provide consolidated feedback after all shortlisted candidates have completed their tasks and the process has concluded.
OfferSuccessful candidates will receive a formal offer.
FeedbackWe genuinely value the time and effort candidates put into our process.
Because we're often reviewing multiple applicants concurrently, we provide individual feedback only once the recruitment process for the role has concluded.
This ensures fairness, consistency, and the ability to give meaningful feedback once final decisions are made.
#J-*****-Ljbffr