SonicWall - Staff Engineer, Endpoint Security (Windows/Linux)
Requirements
• Bachelor’s degree in Computer Science, Software Engineering, or a related field, or equivalent practical experience. • 5+ years of experience in client-side software development with a deep understanding of one or multiple desktop OS platforms, including Windows, macOS, and Linux. • Strong foundation in computer science concepts including data structures, algorithms, operating systems, networking, and software design. • Proficiency in C/C++ and a solid understanding of object-oriented programming principles. • Exposure to system-level programming concepts and native application development on Windows or Linux. • Familiarity with Windows development technologies such as Win32 APIs, Windows Services, or related frameworks is a plus. • Basic knowledge of Golang or a strong interest in learning and developing applications using Go. • Understanding of operating system internals, processes, threads, memory management, and inter-process communication concepts. • Familiarity with networking fundamentals including TCP/IP, DNS, HTTP/HTTPS, TLS/SSL, proxies, and VPN concepts. • Exposure to frontend technologies such as JavaScript, TypeScript, Vue, React, or similar frameworks is a plus. • Experience with macOS, iOS, or Android development through coursework, internships, personal projects, or professional experience is desirable but not required. • Interest in security, endpoint technologies, operating systems, or networking products. • Strong analytical, problem-solving, and debugging skills. • Ability to learn quickly and work effectively in a collaborative, fast-paced, agile environment. • Excellent communication skills and willingness to seek feedback and mentorship. • Experience using modern developer tools, including source control systems (Git), CI/CD pipelines, and AI-assisted coding tools, is a plus.
Responsibilities
• Design, develop, test, and maintain client applications for Windows and Linux, with opportunities to contribute to macOS and mobile platforms. • Write clean, maintainable, and well-documented code in languages such as C/C++, Golang, and other technologies used by the team. • Collaborate closely with QA, product managers, and designers to deliver reliable and user-friendly experiences. • Debug and troubleshoot issues across client applications, working with teammates to identify root causes and implement solutions. • Participate in code reviews and technical discussions while learning engineering best practices and software design principles. • Contribute to feature development, testing, and release activities throughout the software development lifecycle. • Assist with performance, reliability, and security improvements across supported platforms. • Continuously learn new technologies, tools, and development practices relevant to endpoint, networking, and systems software.
Apply in one click
Upload My Resume
Drop here or click to browse · Tap to choose · PDF, DOCX, DOC, RTF, TXT