Principal Software Automation Engineer
Imagine the future you could help us build.
Teamwork, not just tech work. We are tech futurists and business geniuses. Together, we solve problems to make daily life easier. We are looking for a few more great minds to join our team as we continue to grow one of the world's leading consumer robot companies.
Together, we empower people to do more.
iRobot delivers innovative robots that are making a difference in people’s lives. From cleaning floors to disarming explosives, we constantly strive to find better ways to tackle dull, dirty and dangerous missions—with better results.
iRobot is seeking a Principal Software Engineer in Test. This software test engineer will create test plans and define test approach, lead and execute test efforts and help enable automated test developers by working with the software development team to design and implement software test approaches/mechanisms as well as develop and automate tests for continuous regression testing. A successful candidate will have a passion for quality, testing, delivering great products – all, while inventing the future.
Software Test (SWT) – Mission Statement -- Plan and execute software focused testing to quickly identify defects early in the development and integration process, reduce regression and configuration testing time through automation, and confirm that the product functions as intended.
Essential Functions/ Job Duties:
- Develop and enhance automated tests and frameworks.
- Influence software design to maximize testability and automation potential.
- Partner closely with software building team to assist in automating releases
- Work side-by-side with developers and functional testers to create test specifications from user stories/requirements and transform selected tests into an automated test suite.
- Triage defects and effectively communicate parameters to developers for rapid reproduction and fix.
- Develop test plan and procedures for testing new products and sustaining efforts.
- Install / setup of test environment.
- Prioritize automation and manual efforts.
- Effectively communicate results and issues to developers, managers and program through direct communication, use of bug tracking system, triage abilities, etc.
- Provide mentorship and coaching to test execution resources for running tests (manual and automated) and collecting results.
- Promote and implement automation capabilities throughout the entire software development lifecycle including, functional, performance, scale and stress
- 7+ years’ experience in software test and test automation.
- Proficient test development skills – Python, C/C++, etc.
- Familiarity with software build and delivery process.
- Experience with test automation and frameworks.
- Proficient in Windows and Linux -- system & network management, troubleshooting.
- Familiarity with testing and automation of firmware and embedded code.
- Familiarity with mobile app testing and automation.
- API automation testing including working experience with test frameworks
- Strong analytical and problem solving skills, and attention to detail.
- Ability to lead and set direction for software test projects.
- Adaptive fast learner – able to ramp up quickly on domain area.
- Self-motivated, flexible with a passion to make a difference.
- Excellent verbal and written communication and documentation skills.
- Proficient using MS Office productivity packages – Excel and Word.
- Willingness and ability to mentor others.
- BS, MS or equivalent experience in Computer Science, Electrical Engineering, or related field.
- Experience in Agile methodology a plus
- Team engagement, able to bridge the gap between software developers and software test engineers.
Familiarity with any of the following applications and technologies is a plus:
- Robotics: embedded systems for control, navigation, manipulation, sensors, video.
- Communications: Ethernet, wireless, Bluetooth, TCP/IP..
- Testing of WiFi enabled solutions.
- Experience with Test Management Systems
iRobot is an Equal Opportunity Employer.