|
Join Nokia's IP Networking team as a Diagnostics Engineer and play a key role in shaping the future of high-performance networking solutions. You will be responsible for designing, developing, and optimizing cutting-edge boot and diagnostics software for our Ethernet switching and routing products, serving the needs of service providers, data centers, and enterprises. Collaborating closely with a diverse team of product line managers, hardware and software engineers, and manufacturing test engineers, you will contribute to the delivery of innovative, reliable, and high-performance hardware platforms. DCN2025 In this highly visible role as a Diagnostics Engineer, you will:
- Design and develop component and system-level diagnostics software for systems, PCBA, and FPGAs for engineering design validation and for manufacturing testing.
- Author functional diagnostics which provide the highest level of test coverage with fault isolation at the component level.
- Create bring-up utilities to aid in initial hardware validation
- Validate prototype platforms before they are distributed to other cross-functional groups.
- Provide inputs to the hardware team during the design phase and collaborate with HW design, SW development and manufacturing teams.
- Develop and execute detailed test plans to validate diagnostics software.
- Support diagnostics regression testing and diagnostics release testing.
- Contribute to continuous improvement of procedures and practices for high-quality and reliable diagnostic systems.
- Provide diagnostic support for both newly released and legacy products to optimize manufacturing yields.
- Provide diagnostic support for manufacturing test and product sustaining teams.
- BS or MS degree in Electrical Engineering, Computer Science, Computer Engineering, or a related field.
- 5+ years of experience implementing diagnostics for engineering and/or manufacturing test environments.
- Strong test and debug skills, with the ability to analyze and resolve complex technical issues.
- Excellent C/C++ programming skills
- Proficiency in reading product hardware schematics, component specifications and performing digital circuit analysis
- Familiarity with CPU / peripheral interfaces such as I2C, PCIe, SPI, etc.
- Low-level hardware programming, and driver-level or embedded software skills/experience
- Effective communication skills, with the ability to present technical concepts to both technical and non-technical stakeholders.
- Scripting experience in a Linux environment
- Familiarity with test equipment such as oscilloscopes, logic analyzers, and packet test platforms
- Experience with UBoot/Linux low-level software development
- Familiarity with s/w version-control tools like GIT
- Fundamental understanding of Makefiles, compilers, and/or linkers.
It would be nice if you also had:
- OS and Kernel development experience
- Experience in debugging, developing, and testing in the Linux kernel
|