Responsibilities
- Design and develop new advanced security features and products
- Perform constructive code reviews
- Unit-test code for robustness, including edge cases, usability, and general reliability
- Develop a working understanding for the code architecture
- Maintain and fix bugs in existing code base
- Comply with coding standards
- Support SCRUM software development processes
- Update the team on the status of tasks and raise potential blockers
- Take ownership of assigned tasks and ensure timely progress to completion
- Contribute to the success of the team’s objectives
Requirements
- Bachelor’s Degree in Computer Science/ Engineering or any related courses
- At least 5-7 years experience in Software Development
- Mandatory 5+ years of strong C/C++
- C#/.NET coding experience
- Strong software development foundation using OOP and coding best practices
- Solid understanding of Windows Development with Visual Studio (STL, COM, ATL/MFC, multithreading, networking, Win32 API, Windows Internals)
- Strong debugging skills
- Experience with Software Development Lifecycle and shipping commercial software without issues
- Experience in SCRUM/Agile development process
- Experience with development collaboration tools (e.g. JIRA, Git)
- Experience working with remote data via REST and JSON
- Has exposure or knowledge in high-performance computing and low latency development
- Familiar with Jenkins or other continuous integration technologies
- Has experience in analyzing, profiling, and determining bottlenecks for improving reliability and performance
- Relational database experience
- Exposure to anti-virus/anti-malware technology is a plus
- Spoken English
Nice to have
- Excellent problem-solving skills
- Excellent team communication skills
- Resourceful and with a Good Learning Attitude
- Strong verbal, written, and interpersonal communication skills
- Fast learner, the short learning curve
- Can work with minimum supervision