Software QA Engineer
We are a leader in secure, intelligent wireless technology for a more connected world. Our integrated hardware and software platform, intuitive development tools, unmatched ecosystem and robust support make us the ideal long-term partner in building advanced industrial, commercial, home and life applications. We make it easy for developers to solve complex wireless challenges throughout the product lifecycle and get to market quickly with innovative solutions that transform industries, grow economies and improve lives. silabs.com
Silicon Labs is looking for a Software (SW) Developer in Test to plan, develop, debug and automate test scripts to improve the overall quality of the system, drivers, RTOS and the MCU-SDK. This layer abstracts control of MCU peripherals and RTOS functionality from the networking stacks above it to improve usability and allow for quicker adoption of each stack protocol. Since all of the Silicon Labs wireless protocols utilize these drivers and or RTOS, this product provides the foundation of all products utilizing Silicon Labs Gecko SDK SW Product. Most of our customers are focused on building Internet of Things (IoT) products (smart homes, smart metering, smart cities). You will be the primary SW Developer in Test responsible for providing test coverage on each driver and RTOS features as well as maintain build-to-build quality and consistency. The ideal candidate has experience with testing MCU drivers and RTOS and or Bare metal systems. You will frequently interact with the SW Development Team based in Montreal, Oslo and other SQA groups globally. In addition, the ideal candidate shall be proficient in C, Java, and Python. We are looking for creative, flexible, pragmatic, and skilled individuals with superb communications skills and a love of problem solving in a fast-paced team environment.
How the SQA Team works
The Silicon Labs SQA team is a tight group of software professionals, with a broad understanding of Continuous Integration testing initiatives in wireless networks and a passion for innovation, quality, and providing business value through technology. We care about the business we support and take pride in the technology services we deliver and go the extra mile to 'Do the Right Thing' for Silicon Labs and its customers. Members of our team appreciate that we are greater than the sum of our parts.
The IoT SQA Team's Responsibilities
The IOT Software Quality Assurance (SQA) Team at Silicon Labs which is spread across several different geographical locations, focuses on improving the overall quality of the Silicon Labs Gecko SDK Product. The Gecko SDK products contain all the wireless (Bluetooth Low Energy (BLE), Bluetooth Mesh, Zigbee, OpenThread, Wi-Sun, Z-Wave, and proprietary protocols) and 32 bit micro-controller (MCU) software required to build end products for the Internet of Things (IoT) Market. Silicon Lab’s SQA Team works closely with the Software (SW) Development teams to ensure a deep understanding of the product, features and system functionality. Silicon Labs SQA Team utilize an internal test framework to automate all tests for repeatability and stability along with providing detailed test reports on each build of the product to provide our customers with quality assurance. The SQA team has decades of experience in providing high quality embedded SW products to our customers which include the largest names in the industry.
Challenges you will solve:
- Design and execute functional, negative, performance, and stress tests for Silicon Lab’s embedded wireless and MCU products.
- Work closely with development team(s) to debug problems found during the test cycle
- Develop automation tests so they can be run regularly as part of a continuous integration infrastructure
- Assist in resolving customer issues by working closely with the customer support team to answer and reproduce customer-related issues
- Emulates customer environments by working closely with the sales team and field application engineers in supporting customer’s needs and debug customer’s problems
- Build, manage, and maintain a distributed test network
- Simplification and automation of product deployments and platform changes
- Productivity increase of the team through identifying opportunities to automate and script daily tasks and eliminate waste in existing processes
Technologies we use:
- Java, Junit, Python, Jenkins, Docker, Cloud Based Computing, SQL Database, Windows, Linux, Shell, Bash, GIT
- Implement test cases based on test plans.
- Investigate test results in continuous integration systems.
- Write custom embedded applications.
- 3+ years of work experience or Master Degree +2 years experience as a SW Developer or SW Developer in Test
- Experience in RTOS systems (uc-OS, FreeRTOS, etc.)
- Experience in bare metal environments
- Experience in low level drivers (SPI, UART, I2C, etc.)
- Experience with C, Java, and scripting languages such as Perl or Python.
- Communicate well and work well in a small cross-functional team
- Conversation fluency in English.
We consider the following experience as a plus
- Intern experience as a SW Developer or SW Developer in Test
- Experience with continuous integration techniques, Jenkins experience is preferred.
- Conversation fluency in French considered a bonus.
Bachelor degree in Computer Science, Computer Engineering, Electrical Engineering or related field
We are an equal opportunity employer and value diversity at our company. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.
Exciting? We think so!! If you do too, come talk with us!