Job Summary
The candidate for this position will be responsible for developing and maintaining cross-platform system and networking components (Linux/Unix and Windows) for Arcserve’s flagship High Availability and Disaster Recovery product.
The role involves building high-performance replication and failover mechanisms operating at the filesystem, network, and OS levels.
This position requires exceptional C/C++ skills and a strong understanding of OS internals, networking, and concurrent systems. The candidate must have extensive, proven experience developing cross-platform system and networking codebases.
The candidate will join a distributed Agile team and work on the implementation of new product features and platform certifications. Responsibilities will also include research and proof-of-concept (POC) activities, performance analysis and optimization, as well as investigating and resolving complex customer issues.
Required Qualifications
• A bachelor’s degree and 15 years of professional work experience (or a master’s degree, or equivalent experience) is required.
• 10+ years of continuous hands-on experience with cross-platform development using C/C++, with strong familiarity with development toolchains and OS internals on both Windows and Linux.
• Strong proficiency with object-oriented programming, algorithms, design patterns, and data structures.
• Extensive experience developing system-level and networking software.
• Strong experience with multithreaded and concurrent system design, including synchronization primitives and performance considerations.
• Experience with low-level networking and socket programming (TCP/IP).
• Experience with POSIX APIs and Linux system programming, as well as Windows system APIs (Win32).
• Strong debugging and troubleshooting skills using tools such as gdb, lldb, perf, or Windows debugging tools.
• Programming experience with at least one popular database system (e.g., MSSQL, SQLite, MySQL, Oracle).
Preferred Qualifications
• Experience developing kernel-mode drivers or low-level OS components (Linux kernel modules or Windows drivers).
• Experience with filesystem or block-level replication technologies.
• Experience in storage, backup, disaster recovery, or virtualization platforms.
• Experience with high-performance networking systems or distributed systems.
• Experience diagnosing and optimizing performance issues in large-scale system software.
• Experience working with large C++ codebases and maintaining complex cross-platform systems.
