Some of your day-to-day responsibilities will be:
-
Help design and develop new test frameworks and automated test systems for use across the Aurora Endpoint Defense Engineering organization.
-
Maintain and support the automated testing systems in use by the agent endpoint team.
-
Active participation in work decomposition and quality assessments.
-
Creating new test framework features and plan.
-
Documents test outcomes for use in quality reports.
-
Write clear, well-tested code that meets our quality standards. Writes test cases and/or automation.
-
Review peer-written code to ensure accuracy and quality.
-
Understand and work on complex issues where analysis of situations or data requires an in-depth evaluation of variable factors.
-
Contribute to and provide feedback on architectural design documents and data flow diagrams.
-
Display ownership of complete solutions from requirements-gathering to product delivery.
-
Interact with other teams to troubleshoot issues, gather requirements and feedback, etc.
-
Exercise judgment in selecting methods, evaluating, adapting of complex techniques and evaluation criteria for obtaining results.
We value a culture of sharing, so every team has the opportunity to share their work with the entire department during our regular R&D Demos. Once a year we hold a department-wide Hackathon, teaming up across all R&D teams over four days to collaborate and build cool ideas outside the normal project scope. While innovation is the focus, some of these ideas do make it into our products.
Comprehension of software testing best practices is a must. We require software engineers who are interested in developing testing tools and infrastructure and will work alongside product developers to help build testability into our product suite as well as ensure quality at every level of the Software Development Life Cycle.
About You
You re an experienced software engineer with 5+ Years of experience, who has the ability to perform programming tasks and large engineering projects with independence and expertise. You demonstrate mastery over software development practices, and easily develop reusable design patterns.
You have built test frameworks and evolved test automation strategies. You bring a software engineering approach to testing. You are a champion of quality code.
You have worked closely in a global team of professionals with different cultures and backgrounds to form one unit with a strong sense of purpose. You will learn as you teach, making the whole more than the sum.
Here are some of the core technologies we use and teach on the team. You should have experience in these or similar technologies:
-
Experience with different CI/CD patterns and tools.
-
Experience developing software in a high-level programming language. Experience with Python and pytest is preferred.
-
Experience with containerization, such as Docker and/or Kubernetes.
-
Experience with virtualization, such as vSphere.
-
Experience interacting with cloud services, such as AWS.
-
Understanding of software testing and coding best practices.
-
Understanding of various OS flavors and architectures across Windows, Linux, and/or Mac.
-
Experience architecting, designing, developing, maintaining test automation and/or testing frameworks.
-
Experience with packaging toolchains.
-
Experience with Git for version control and branching strategies.
-
Experience creating automations via GitHub Actions, Jenkins, or a similar tool.
-
Experience utilizing Infrastructure as Code and tools such as Ansible.
-
Prior experience with an endpoint software is preferred.
You have a history of delivering successful projects, as well as some lessons learned from failures. Even if you haven t worked with all our specific technologies, you bring a diverse knowledge base that you use to help the team solve complex technical problems. You ll receive all the security training you need during our onboarding process and through additional training on the job.