Trilliant® empowers the energy industry with the only purpose-built communications platform that enables utilities and cities to securely and reliably deploy any application – on one powerful network. With the most field-proven, globally compliant solution in the market, Trilliant empowers you by connecting the world of things™. We empower our employees to deliver on our commitment to our customers by encouraging passion, accountability, confidence, and energy for excellence. We invest in our people and provide opportunities for employees to grow themselves, their career, and our business.
The Firmware Engineer position requires the skills of a professional with at least a Bachelor’s degree in Engineering, Computer Science, or related field. The complex firmware systems development and related testing that comprises this position requires the substantial knowledge gained through a baccalaureate program. This position requires experience in communications-related firmware development plus background in vxWorks, embedded Linux, or other RTOS. There is hands on work with embedded controller boards and a working knowledge of processors like ARM, PowerPC, MIPS is required.
· Developing firmware for new products as well as supporting existing products.
· Developing new interfaces for all products as required in response to customer requests.
· Documenting the interface protocols between new and existing products and systems.
· Sustaining engineering efforts for legacy products.
· Supporting automated test development for manufacturing as required.
· Acting as a technical resource for both internal and external customers.
· Interfacing with the business development team as required.
· Create, upgrade, and maintain automation scripts.
· Create manual test procedures for new features and automate them when practical.
· Define testing procedures, run scripts and analyze results.
· Enhance and maintain test environment used for development of firmware tests.
· Perform device configuration, system configuration, firmware upgrades and device setup for solutions based delivery.
· Perform performance and transaction timing measurement tests.
· Perform load balance tests across network system, hardware, firmware, and software.
· Perform stress testing (network, devices, head end system) and keep adding load to identify system limits. Investigate where the problem is i.e. network, device, database, software, and/or firmware root cause.
· Develop test plans and work on test case development of/for new features.
· Review functional requirements and related test coverage.
· Review feature/functionality and test coverage.
· Compile test evidence and develop appropriate documentation.
· Execute firmware test plans, collect data in lab testing, and publish results to the wider team.
· Develop automation to test and characterize network, node and firmware products before release.
· Ensure device interoperability across different firmware and product versions.
EDUCATION & CERTIFICATION
· Bachelor’s degree in Engineering, Computer Science, or related field.
· Proven ability to program in C, C++, and assembler for embedded environments.
· Working knowledge of oscilloscopes, logic analyzers, and/or JTAG debugging tools.
· Understanding of 802.11a/g/n, Zigbee, and cellular radio communications principles.
· Solid knowledge of networking and internetworking concepts and technologies i.e. Ethernet, OSI layers, TCP/IP, packet inspection and analysis, application protocols.
· Highly self-motivated, work with minimal supervision, with an attention to detail.
· Ability to set priorities and meet multiple deadlines.
· Ability to understand schematics and debug at the PCB level.
· Good communication skills, both written and verbal.
· Experience in platform porting and BSP development.
· Experience in driver-level wireless protocol development.
· Knowledge and/or familiarity with Atheros 802.11a/g/n drivers.
Soldering and prototyping experience.