Key Responsibilities
Backend Development
- Design and develop scalable backend services, REST APIs, business logic, data-access components and integration modules.
- Develop and maintain enterprise applications using C#, ASP.NET Core, ASP.NET Zero, ABP.io and SQL Server.
- Contribute to ASP.NET Zero-to-ABP.io modernization and migration activities.
- Apply object-oriented design, modular architecture, design patterns, and clean coding practices.
Messaging and Real-Time Integration
- Design RabbitMQ-based asynchronous messaging, event-driven workflows, and distributed processing mechanisms.
- Develop SignalR-based services for alarms, notifications, events, status updates, and operational monitoring.
- Optimize message delivery, event processing, resiliency, fault handling, and system responsiveness.
Platform and Infrastructure Services
- Deploy, configure, and support ASP.NET applications and backend services hosted on IIS.
- Manage security settings, certificates, performance tuning, logging, monitoring, diagnostics, and recovery.
- Support CI/CD pipelines, automated builds, release management, and production deployments.
- Troubleshoot application, server, network, database, and deployment issues.
Device and Protocol Integration
- Develop and maintain C++ services, native libraries, communication modules, and protocol-handling components.
- Use Boost for networking, threading, asynchronous processing, messaging, and system-level operations.
- Integrate controllers, panels, security devices, cameras, and field hardware.
- Resolve protocol, communication, synchronization, performance, and stability issues.
Video and Streaming Services
- Integrate video-management and surveillance systems using RTSP-based streams.
- Develop and support WebRTC services for secure, low-latency browser video delivery.
- Support video monitoring, event correlation, alarm verification, and associated-camera workflows.
- Troubleshoot stream connectivity, conversion, latency, and browser-delivery issues.
Application Support and Collaboration
- Monitor system health, availability, performance, reliability, and scalability; maintain logging, auditing, tracing, and alerts.
- Apply secure coding practices and protect credentials, certificates, tokens, keys, and configuration secrets.
- Perform root-cause analysis and drive corrective actions, technical-debt reduction, and continuous improvement.
- Collaborate with Product Management, Architecture, QA, DevOps, UI/UX, and global engineering teams.
- Participate in design reviews, code reviews, technical planning, testing, releases, and documentation.
Required Skills
Core Backend Development
- 8-12 years of software development experience.
- Strong experience in C#, ASP.NET Core, and REST API development.
- Experience with ASP.NET Zero and/or ABP.io.
- Good knowledge of SQL Server and Entity Framework Core.
- Strong understanding of software design principles and clean coding practices.
Messaging & Platform Technologies
- Experience with RabbitMQ or similar messaging platforms.
- Experience with SignalR, WebSockets, or real-time communication technologies.
- Strong experience in C++ development.
- Experience using Boost libraries.
- Understanding of TCP/IP, networking, multithreading, and asynchronous programming.
Infrastructure & Engineering Practices
- Experience deploying and supporting applications on IIS.
- Experience with Git, Bitbucket, SVN, and Jira.
- Experience working in Agile/Scrum environments.
- Familiarity with CI/CD, automated testing, and code quality practices.
Preferred Skills
- Experience migrating applications from ASP.NET Zero to ABP.io.
- Experience with RTSP and WebRTC technologies.
- Experience integrating controllers, alarm panels, cameras and field devices.
- Exposure to Angular and TypeScript.
- Knowledge of OAuth 2.0, OpenID Connect and secure API design.
- Experience with Windows Services and distributed systems.
- Experience in access control, intrusion, video surveillance, or physical security platforms.
Education
Bachelor's or master's degree in computer science, software engineering, electronics engineering, or a related discipline.