Quality Assurance and Test Infrastructure Engineer

October, 20 2019 - Fulton, MD

Quality Assurance and Test Infrastructure Engineer

About You

As a member of the ClamAV Team your primary role will be developing test infrastructure and test pipelines using Python, Jenkins, and Docker. You will create applications to test and regression test the product in new and more efficient ways. In collaboration with the product developers, you'll automate test plans to test new features or bug fixes. You will work closely with ClamAV developers throughout the development cycle to provide the best quality software possible.

The Team

Our team is a core component of the largest and coolest commercial threat intelligence organization on the planet. Despite that, our team is small and friendly and will be excited for you to join us. At present, we have a small team of software engineers and are looking for another engineer to help us develop and maintain test automation infrastructure and work side by side with us to integrate new tests which may sometimes require new features or entirely new test applications. All three of us work in the Cisco office in Fulton, MD where we occupy a comfortable corner complete with our own snack area and Nerf gun arsenal. And we're not simply legacy software maintainers: we actively design and engineer new features while improving existing ones. If you’re seeking a long-term, head-in-the-sand, maintenance job, look elsewhere. Our team is constantly engaged. From discussing new ways to improve our processes, to opening ourselves to new concepts, our willingness to learn and explore new ideas leads us to write better code, test more effectively, and ultimately build a better product. Do you think you’d be a good fit for the ClamAV Team?

Roles & Responsibilities

  • Collaborate with developers throughout development cycle on test plans for new features
  • Develop new tools and capabilities in Python to perform automated multi-platform regression testing and test result analysis
  • Implement test plans by creating automated tests and performing manual testing
  • Run and manage Jenkins pipelines for automated testing
  • Develop and manage new Jenkins pipelines to meet testing needs
  • Document and communicate bugs to developers
  • Analyze QA processes and make improvements where possible

Minimum Qualifications

  • Experience programming with Python
  • Experience working in both Windows and Linux
  • Solid understanding of test case creation
  • Experience working with Jenkins or similar CI/CD software (TravisCI / CircleCI / GoCD / BuildKite / etc.)
  • Curiosity and strong desire for quality
  • Solid analytical skills and attention to detail
  • Ability to communicate complex technical details

Preferred Qualifications

  • 1-5 years Python software development experience
  • 1-5 years QA experience
  • Solid understanding of QA processes
  • Basic understanding of Docker
  • Experience creating and managing Jenkins pipelines
  • Experience scripting with Bash, and Groovy
  • Experience working with software written in C
  • Strong understanding of Linux
  • Experience working with the Atlassian tool suite (Jira, Confluence, Bitbucket)
  • Experience working with Git
  • Basic understanding of web services development (eg. REST; Python Flask, Sanic. etc.)
  • Familiarity with Elasticsearch
  • Experience working with ClamAV
  • Bachelor’s degree in Computer Science, Cyber Security, or other tech-related degree