Organization & Role
The Teradyne Software Engineering team is looking for a highly-motivated, energetic, technically driven Software Engineer to
focus on the development of software systems for products within the Semiconductor Test division. Development occurs in a
dynamic and challenging multi-site development environment.
In this role you will be responsible for development and maintenance of embedded software for various microcontrollers and microprocessors within an automated hard drive test system. Primary responsibilities will include: C/C++ development on Linux. C# development on Windows.
- Ability to read schematics and work with test equipment such as DVMs, oscilloscopes, logic analyzers.
- Background in Hard disk drive and/or test equipment industry.
- Experience modifying and maintaining Linux Kernel, root file system, uBoot, device drivers and cross compilation tools.
- Comfort with all of the following technologies: SPI buses, I2C buses, PID control, fixed point math, async/sync serial bus, DDR, memory, FPGA buses.
- Ability to read and understand IC datasheets and user guides.
- Experience with Intel and ARM architectures.
- GIT source control, Visual Studio,Eclipse IDE, TI Code Composer
Qualifications, Experience & Skills
- 5+ years experience programming in C/C++ for embedded Linux for different microprocessors architectures (ARM, x86, etc).
- Experience developing high performance software.
- Knowledgeable of software performance profiling and high performance software techniques.
- 5+ years experience programming C# on Windows.
- Solid understanding of real time programming, concurrency, multi-threading.
- Development Experience on Firmware.
BS or MS in computer science, computer engineering, or related field from a university or engineering institution
Minimum of 10 years of practical software development experience