Ivanti is a global leader in IT systems and security management solutions, experiencing significant growth worldwide. The company is seeking a highly skilled Windows low-level software engineer to develop and maintain Windows kernel-mode and user-mode device drivers and services across multiple security products within the Secure Unified Endpoint Management portfolio.
Responsibilities:
- Design, develop, and maintain security Windows device drivers and services
- Modernization to adopt the latest Windows driver models, frameworks, and APIs
- Port drivers to new hardware platforms as required (e.g. Windows on ARM)
- Optimize existing drivers (storage, networking, etc.) for performance and reliability
- Manage Windows logo and certification pipelines (WHQL, SVVP, etc.) to ensure seamless installation and operation
- Collaborate with Product Managers and Technical Support to address technical issues across Ivanti’s wide customer base; triage and address incompatibilities, help define future feature capabilities as required
- Develop and maintain a framework for service and driver stability across multiple products ensuring continuous delivery capabilities with known high quality
- Ensure the broadest possible support for plugin hardware devices, networking and PC platforms throughout product offerings
Requirements:
- Bachelor's degree in Computer Science or related engineering field
- 10+ years of Microsoft Windows software development experience
- 5+ years of experience with Windows device driver development (including Kernel-mode, and Windows Driver Model Drivers, Windows Driver Kit)
- Strong experience developing Windows services
- Windows kernel mode experience
- Advanced Kernel-level debugging skills (live systems and using crash dump analysis using debug/PDB files, WinDbg, Static Driver Verified and other related tools)
- Strong expertise in Windows Internals such as memory management, interrupt handling, I/O mechanisms, Kernel/ user mode boundaries, and multi-threading programming
- Strong team player with excellent communication skills
- Proven ability to design and architect solutions for enterprise environments
- Experience using Microsoft Azure DevOps (ADO) for tracking work items, bugs, and test cases
- Programming languages: C language, plus object-oriented programming language experience such as C++
- Platforms/Runtimes: Windows x86, x64, ARM architecture & .NET
- Technologies: Windows application development, Microsoft SQL, Microsoft Visual Studio, GitHub
- Strong grasp of secure code development practices
- Unit testing & automation testing
- 2+ years of Cloud services/SaaS with Azure or AWS
- Technologies: IIS, Web Services, Web Development, Jira, TLS
- Experience with Agile methodologies (Scrum or Kanban)
- Windows Kernel debugging, memory dump analysis, malware & rootkit analysis, reverse engineering (WinDbg, IDA)
- Extensive knowledge of Windows NT internals (both documented and undocumented)
- Procedural programming with C