Functional Testing Engineer
Responsibilities:
- Testing and silicon debug, including writing the necessary testing code, testing platform setup, and silicon screening and debugging
- Design, develop, and maintain embedded software, including drivers and application code, to support device functionality and performance benchmarks.
- Identify and document test scenarios and conditions for the functional testing of embedded software, ensuring comprehensive evaluation of both firmware and hardware interfaces.
- Contribute to testing methodology and setup including probe card, packaged chip, and PCB testing
- Analysis of signal integrity, noise, power, and other design issues
- Record and document results, compare them with expected outcomes, and log defects in the defect tracking system
- Reproduce and isolate issues within embedded systems, providing detailed documentation for troubleshooting and resolution.
- Work closely with the hardware and design teams to verify embedded system features and to help debug issues at the firmware and driver levels.
- Help with product demo setup and running different demo benchmark/showroom projects as needed
- Hardware development on circuit board, system and user interface
Requirements:
- Bachelor’s degree in Electrical Engineering, Computer Engineering, or a related field.
- Strong background in embedded programming with proficiency in C/C++ for driver and firmware development.
- Solid programming skills in Python and familiarity with MATLAB for test automation and analysis.
- Understanding of basic I/O protocols (SPI, I2C, UART, GPIO) and experience with DMA and interrupt handling in embedded systems.
- Working knowledge of microcontrollers (Arduino, Raspberry Pi) and/or FPGA (Xilinx or Intel)
- Working knowledge of testing instruments such as oscilloscopes, digital multimeter, function generator
- Basic knowledge of electronic circuits and semiconductor technology.
- Ability to work in a startup environment and to work both independently and as a team player
- Familiarity with test management and defect tracking tools (e.g., JIRA, Bugzilla).
- Proficiency in version control (Git, BitBucket)
Experience in one or more of the following areas is considered a strong plus:
- Working knowledge of in-memory computing and non-volatile memory
- Experience with RISC-V CPUs and related embedded architectures.
- Working knowledge of machine learning and neural networks
- Working knowledge of data converter systems (DAC, ADC)
- Working knowledge of analog circuits (OpAmps, bandgap, temperature sensors)