Actively learn about the environment in which the software solution will operate in order to articulate risks and constraints
Work with strong problem-solving and debugging skills to determine the root cause of a software defect
Examine and analyze technical documentation from Windows and other products to gain a better understanding of software solutions that interact with system components
Provide high-quality products and participate in all phases of the software development process, including ideation, design, implementation, delivery, and support
Job Requirements:
Bachelor s/Master s degree in Engineering, Computer Science (or equivalent experience)
At least 3+ years of relevant experience as a software developer
Experience with C/C++ and a focus on writing secure, thread-safe, and efficient code is a must
Knowledge of windows driver development is a must
Understanding of kernel/user-mode interactions is required
Experience with Windows service development in the userspace is a must
Experience with Windows desktop development and Windows installer development is a must
Familiarity with test-driven development and unit testing
Basic knowledge of cryptographic terms like Symmetric Key Cryptography, Public Key Cryptography, TLS, etc., is nice to have
Knowledge of client and server-side web application development (JavaScript, REST)