We protect business data and provides secure connectivity for tens of thousands of the world's fastest growing companies. Thousands of IT service providers globally rely on our combination of pioneering technology and dedicated services to ensure businesses are always on, no matter what.
We are seeking a Sr. Software Engineer to join our Quality Assurance Engineering team. The Quality Assurance team is a highly collaborative organization consisting of engineers with the highest levels of communication, technical depth, testing methodology, skills, and a passion for quality. This is a great opportunity to join a talented, fun and hardworking Software Engineering team! We are also willing to educate and train the appropriate candidate who displays ambition and willingness to learn. As a Sr. Software Engineer, you will be working within the QA Team while playing your role as quality ambassador in an specific agile software development team to maintain a high level of quality in the product and will have potential to make a huge impact within your role as you help create and maintain the experience of millions.
Primary Responsibilities:
- You will ensure that our hardware and software products are awesome and of the highest quality.
- Participate as a Quality ambassador, engineer and eyes of the customer within your specific agile software development team.
- Assist Team Lead with mentoring junior Quality Assurance Engineers.
- Facilitate creative ways to break the products, uncover defects and file them.
- Perform extensive product performance testing, usability and test against/with compatibility
- Assist in reproducing bugs reported outside of QA and triaging them with Team Lead.
- Assist junior Quality Assurance Engineers build detailed test specifications (functional, environments, resources) that transition into various test strategies for existing and new features.
- Assist junior Quality Assurance Engineers write and execute detailed test plans.
- Automate test plans created by junior Quality Assurance Engineers to enhance coverage of end-to-end automated tests.
- Participate in release processes for your assigned project.
- Design any testing strategies concerning releases.
- Maintain strong communication with QA, Engineering, Product and Customer Experience teams about issues, risk, product quality and bugs.
- Assist in educating your peers in QA, Engineering, and Product on testing and QA; work with them to determine product quality goals and measurements.
- Maintain your test environment Maintain and communicate testing time lines, schedules and status reports
- Provide timely updates to the QA Team Lead, Team Coordinator and Product Manager on the status of testing activities in an Agile environment.
- Recommend improvements to the QA methodology. Other duties as assigned by Team Lead and/or Management.
Desired Skills and Experience:
- Bachelor’s degree in Computer Science, Management Information Systems or Software Engineering; or equivalent work experience. 5+ years hands-on experience with manual testing, testing applications, testing sites and automation.
- Knowledge of TCP/IP protocols and networking (e.g., IP addressing, DNS configuration, etc.)
- Knowledge of Linux, Windows and Mac (preferred - strong knowledge of Linux and its command line)
- Experience with any of the following virtualization hypervisors - KVM, VMWare, Hyper-V, VirtualBox, (XenServer a plus)
- Experienced with deploying servers, virtual machines, etc.
- Proficient in two or more of the following languages - Python, PHP, SQL, CSS, JavaScript, HTML, etc.
- Experience with automation testing and automation tools.
- Experience with APIs a plus.
- Experience with Selenium a plus.
- Experience with SCM, specifically GitHub (preferred, link to GitHub/BitBucket profile highly encouraged.)
- Strong documentation minded.
- Ability to provide extreme detail.
- Strong knowledge of testing methodologies and concepts Strong problem solving skills.
- Excellent communication skills.
- Extremely self-motivated; able to find opportunities for improvement and tackle them without external direction.
- Think outside the box and outside of given instructions. Dedicated to quality and collaborative approach at testing. Strong understanding of software product lifecycles.