Tech Stack
AnsibleAWSCloudCyber SecurityDockerGoGoogle Cloud PlatformJenkinsKubernetesLinuxOpen SourcePythonUnix
About the role
- Automating test processes for speed, reproducibility, and scalability
- Build system tests, performance tests, integration tests, unit tests and more
- Reviewing feature code and discerning the quality regarding functional and non-functional requirements
- Breaking software systems in creative and useful ways
- Collaborating both within and across teams to deliver quality software
- Building elegant, robust, and reliable solutions for complex technical problems
- Provide visibility into the overall quality of the product through metrics, dashboards, and reports
- Work closely with a team of engineers to support and maintain a culture of high product quality and excellence
- Analyze complex sensor software features, and build effective test strategies and test designs
- Extend our existing codebase utilising C++, Python, and other tools and DSLs (domain specific languages) to increase the testability and debuggability of sensor code
- Design and implement specialized tests for system-wide qualities including performance, scalability, compatibility across multiple OS platforms, and resource utilisation
- Work collaboratively with product and release management to control risk, improve quality, and streamline our release cycles
- Debug complex sensor issues found through testing or customer cases to identify root cause and enhance test coverage
- Lead rigorous product and test code reviews with an eye towards improving the security and robustness of the sensor system
- Leverage your understanding of engineering best practices, including secure coding, testing paradigms, debugging, performance measurement, code reviews, CI/CD and OS internals, to ensure optimal sensor performance and reliability
Requirements
- 5+ years of experience in software testing and quality assurance with a strong focus on test automation
- A computer science background or equivalent experience
- Experience in working with Windows, Linux (various distros) and/or Mac platforms at OS level (e.g. Windows OS internals, components and APIs, Linux/Unix kernel)
- Strong programming skills in Python and ability to read & understand C/C++ code
- Experience with acceptance testing tools, and best practices (e.g. Cucumber, pytest/pytest-bdd)
- Experience with containerization, CI/CD pipelines and tools (e.g., Docker, Kubernetes, Argo, Jenkins, GitLab CI)
- Knowledge of various testing methodologies: behavior, functional, performance, unit, security, contract, etc.
- A good understanding of software development lifecycle and agile methodologies
- Excellent problem-solving skills and analytical skills along with attention to details
- Effective written and oral communication, be a self-starter and highly motivated
- (Bonus) Experience working in the IT Automation or Cybersecurity sectors
- (Bonus) Worked as a C/C++ programmer
- (Bonus) Knowledge of Golang
- (Bonus) Knowledge of PlayWright or Robot
- (Bonus) Experience withTerraform, Ansible, Docker, Cloud certifications on AWS/GCP
- (Bonus) Contributions to the Open Source community