Responsibilities for a typical software/firmware engineer may include many of the following:
- Work with customers and project lead to refine requirements
- Assist with system architecture and high-level hardware design
- Develop software, embedded software and firmware per requirements on a variety of platforms, from embedded systems, to Microsoft Windows, to Linux
- Assist with hardware bring-up
- Integrate software/firmware with customer’s hardware platform(s)
- Produce design release packages for delivery to customers, including external documentation of source code and protocol specifications
- As required, meet with customer(s) to discuss project status and to resolve problems
The following is a list of skills and experiences that Wavetrix finds attractive in candidates.
- BS in Computer Science, Computer Engineering, Electrical Engineering, or related engineering discipline, MS degree preferred
- Minimum 7 years software/firmware development experience
- Must be proficient in C/C++
- Experience with hardware/software integration in embedded systems
- Thorough understanding of networking protocols and techniques
- Hands-on experience with logic analyzers, oscilloscopes, etc
- Strong written and oral communications skills
- Excellent troubleshooting/diagnostic capability
- Experience with and discipline in using revision control systems
Because the skill sets needed for each project vary, Wavetrix expects all candidates to be able to learn new skills and adapt to quickly-changing technology. If you have experience across a number of these technologies, we want to talk with you:
- Processors
- TI MSP430 microprocessors
- Microchip PIC microprocessors
- Freescale/Motorola Coldfire and PowerPC microprocessors
- ARM 7/9 microprocessors
- Intel x86 microprocessors
- TI Power-efficient and high-performance DSPs
- Operating Systems/Languages
- Windows
- Visual Studio 6.0 through 2013 (both MFC and .Net)
- Mobile
- Linux
- Java, Perl, CGI, PHP, XML
- MySQL and PostgreSQL database applications
- Web-based GUIs
- Device drivers
- Eclipse
- Windows
- Embedded
- Platforms including NetBurner and Rabbit
- Developing and implementing DSP algorithms
- Programming of CPLDs and FPGAs