The Waverserver product development team’s mission is to develop simple and easy to deploy high-capacity interconnect solutions that meet evolving density and power requirements. Scalable solutions for the Data Center Interconnect market range from Metro to Ultra-long haul distances. The design of the product must not only provide a wealth of services but at the same time must be simple to use and manage. Our team is looking for an energetic software designer that is eager to participate in the design and development of leading edge management and control software solutions and services.
The desired candidate should have strong software engineering skills, including communication protocols, object oriented design and best practices in software engineering. Experience developing real-time embedded software in C/C++, Python on the Linux Operating System and platform software is desired for this position. The candidate should be enthusiastic, innovative, self-motivated, a good problem solver with leadership and good communication skills. Several opportunities are available which can be aligned with the candidate’s interests and skills.
Responsibilities will include:
• Developing real time embedded C/C++ software which will include enhancing existing software, creating new features, and supporting new hardware introduction for rapid time to market.
• Participating in all stages of software development - requirements analysis, design and prototyping, implementation, testing, and eventually maintenance support.
• Troubleshooting hardware and software integration as well as performance issues. Work with hardware, software, verification and system engineering teams to identify root causes for issues.
• Field support, helping investigate and collect information to resolve performance or other issues found in current or previous designs.
• Software development expertise, particularly large-scale embedded software development in C/C++ and Object oriented design
• Familiarity with developing software on multi-processor, concurrent systems (good knowledge of mutual exclusion, synchronization, inter-process communication, scheduling, resource management, etc.)
• Strong problem solving skills with the ability to troubleshoot and perform fault isolation and usage of source code debug tools and analyzers
• Familiarity with Embedded Linux, open source packages and experience with scripting languages
• Experience identifying issues and quality improvements through test driven development, automated unit testing, code analysis and comprehensive integration testing.
• Strong written and verbal communications skills to present ideas and coordinate troubleshooting.
• Strong organization skills to manage time, resources and priorities.
• Ability to work in a lab environment and integrate software onto custom hardware.
• Independent self-starter and committed to delivering on aggressive deadlines but also comfortable working in a team environment.
- Bachelor’s degree in Engineering, Computer Science or equivalent