Responsible for analyzing, designing, debugging and/or modifying software; or evaluating, developing, modifying and coding software programs to support programming needs. Maintain and enhance existing code with focus on implementation. Collaborate with and assist team of engineers in writing functional, design and user interface specifications. Follow software lifecycle process when developing software. Help identify solutions to problems encountered in software cycle. Responsible for developing, applying and maintaining quality standards for security products. Develop and execute software test plans. Analyze and write test standards and procedures. Debug software products through use of tests. Maintain documentation of test results to assist in debugging and modification of software. Analyze test results to ensure functionality and recommend corrective action. Develop and extend existing and new C#, C++ and Java based test automation frameworks and test case automation suite. Author and implement software test automation plans, test design specifications, test automation designs, test cases scripts and test case automation suites. Take ownership of product automation components and features. Own and maintain the test automation infrastructure and test case suites. Deliver thorough test automation coverage in a timely fashion to ensure a high quality product release. Provide expertise and leadership in the review and validation of software development and test deliverables ranging from requirements documentation, high level/detailed design, system architecture, test plans, test designs, test automation designs, test cases and test automation suites. Work with cross-functional product development teams (product development, product management, program management, and system QA) to define, refine and execute software test automation to ensure delivery of high quality product components. Not required to supervise anyone.
Employer will accept Master’s degree in Computer Science, Engineering or related technical field and three years of experience in job offered or in a computer-related occupation
Alternatively, will accept Employer will accept Bachelor’s degree in Computer Science, Engineering or related technical field, followed by five years of progressive, post-baccalaureate work experience in job offered or in a computer-related occupation.
Experience must include:
1. Technical/engineering background with the ability to analyze and solve difficult business problems in a complex domain
2. Software product design, and or automation development and testing for software products
3. C#.NET and C++ or Java
4. Designing, developing and maintaining frameworks
5. Developing new application programming interfaces and scripts
6. Lean/Agile software development and testing/automation principles used for high quality software development
7. Windows operating systems
8. Troubleshooting and debugging skills in any programming languages.
9. Algorithms and Data structures
10. Experience developing large scale software products.
Any suitable combination of education, training, or experience is acceptable.