Embedded Firmware Engineer
What we do:
We make the world’s most extraordinary audio and video solutions. For over 40 years, Biamp has created and innovated professional audiovisual solutions that enable great communication. From the smallest of rooms to the largest of venues, we empower true human connection in every space.
As we grow to meet our customers’ needs and evolve to address the challenges of tomorrow, one guiding principle remains the same:
Biamp connects people through extraordinary audiovisual experiences.
About our company:
We’re growing. In the span of just four years, five companies have joined the Biamp family, increasing our product offerings and expanding our presence within the global market.
We’re global. Installed in thousands of applications in over 100 countries, our products are supported by our employees located throughout 15 Biamp locations worldwide.
We’re empowered. Joining a scaling company means employees have greater opportunities to gain experience while effecting genuine change within the organization.
We’re cutting-edge (but local about it). Initial design, engineering, manufacturing, and testing are all managed within our own facilities, leading to shorter lead times, faster responses, and greater convenience for our clients overall.
Summary:
Biamp Systems is seeking an intelligent and highly motivated firmware engineer to design, implement, test, debug, and maintain embedded software for networked digital audio-visual processing equipment and related accessory products.
Essential Functions:
Analyze product functional requirements to determine required data structures and behaviors
Create written documentation for firmware designs
Design and implement firmware modules using C, C++, object-oriented modeling, and standard design patterns and techniques
Define test cases and write test automation which effectively validate module designs
Help in the design, development and support of common technologies, tools and processes that will be used to build new Biamp products
Work with Applications Engineering to troubleshoot customer field issues, triage defects, and perform preventative maintenance to reduce the ongoing impact of defects for existing products
Other duties as assigned
Qualifications:
The successful candidate will possess the following combination of experience, knowledge and skills:
Bachelor’s degree in Computer Engineering, Computer Science, or the equivalent combination of education and experience
5+ years of experience developing commercial embedded software
Ability to work within a large, established, Object-Oriented application
Experience with non-graphical multi-threaded applications using the Linux operating system
Comfortable working with open source tools/libraries
Knowledge of C & C++ programming languages, and C standard and C++ standard template libraries
Experience using debuggers such as gdb (or equivalent) to debug embedded applications
Experience working in revision control systems such as Subversion or Git
Working knowledge of Microsoft Office applications
Proficient written and verbal communication skills
Experience working with various network protocols such as TCP/IP, UDP, Ethernet etc. preferred
Experience working with Wireshark or other network traffic analysis tools preferred
Experience developing Linux kernel mode device drivers preferred
Knowledge of Universal Modeling Language (UML) preferred
Knowledge of one or more scripting languages, Python preferred
Benefits and Perks:
Medical, Dental, and Vision
401(k) + matching
Employer-paid base life insurance, short, and long-term disability
Health savings accounts (with Biamp contribution) and flexible spending accounts
Tuition reimbursement
Discretionary profit-sharing
Referral bonuses