Senior Embedded Platform Software Engineer PureWave Networks
The PureWave Software Team is responsible for the implementation and integration of all software into our highly innovative and cutting-edge 4G Base Stations. The roles and responsibilities of a Senior Embedded Platform Software Engineer include:
Software architecture design
Software development and maintenance within an embedded, real-time environment
Bring up new embedded hardware platforms under U-Boot and Linux.
Testing and troubleshooting at all levels of the software and product development process
Development and maintenance of technical documentation
Help to evaluate 3rd party software IPs
Serve as subject-area expert for the rest of the team
Mentor less senior team members
Close team work with the engineering team as a whole
This is a full-time position.
REQUIRED EDUCATION AND SKILLS:
The ideal candidate will have at least a Bachelor of Science or the equivalent in Electrical Engineering, or a related field, and at least 8 years of relevant industry experience.
Strong experience in the design, development, and debugging of real-time embedded software.
Strong knowledge of C is required. Knowledge of C++ is a plus.
Software development experience for networking devices,strong knowledge of IPv4/IPv6, VLANs, and related networking protocols.
Good understanding of OS, RTOS, multithreading and intertask/interprocess communication.
Expert level knowledge on Linux processes, start up, boot environment and interprocess communication, as well as Linux device drivers, such as Ethernet, SPI, I2C, etc..
Strong experience with device tree, register level programming of on-board resources.
Fluency with build process, build tools, ARM tool chains and version control systems (git, svn)
Software design and programming experience on multi-core architectures.
Familiarity with ARM cores and CPU architecture.
Knowledge of software design methodologies, ability to communicate and document software requirements and design in a clear and well-structured manner.
Ability to use test equipment such as oscilloscopes, logic analyzers, etc.
Strong debugging skills, capable of proactively driving troubleshooting process to completion.
Ability to read hardware schematics to identify hardware addresses, communication signals, etc.
Experience with wireless protocols such as WiFi, 2G, 3G, and 4G (WiMAX and/or LTE) is a plus.
||Santa Clara, CA |