Firmware Engineer - Carpentersville, IL
OTTO – designed, manufactured and precision tested, right here in the USA.
Firmware Engineer will have experience with coding in C and C++ and architecting software for consumer, audio, or wireless products. Ability to read and understand electrical schematics. Experience working closely with hardware engineers including evaluating hardware/software tradeoffs, selecting microprocessors and peripheral components, and resurrecting early hardware prototypes. Experience designing RTOS’s, device drivers, applications, as well as interfacing to digital and wireless communications protocols. Strong advocate for structured software development including architecting, documenting, writing modular code, bug tracking, revision tracking, design reviews, validation and regression testing of the software written. Ability to work independently or as part of a team. Opportunity for both new ground-up development, as well as maintaining and upgrading existing products, and integrating and collaborating with OTTO’s design partners.
Specifically, the Firmware Engineer will:
- Selecting Microprocessors – including memory size, speed, I/Os, cost, current draw, etc.
- Planning and Architecting Software
- Coding primarily in C/C++
- Designing Device drivers and boot loaders
- Integrating, debugging, and testing embedded systems
- Designing interfaces to other devices using digital or wireless protocols
- Operating Basic electronics test equipment (oscilloscopes, DVMs, function generators, logic analyzer, etc.)
- Bringing up new SoCs, chipsets, sensors, and products
- Participating in selecting development tools, bug tracking tools, software revision management and archiving tools, etc.
- Participating in new product Ideation and developing new IP
- Designing and executing software test plans
- Updating or adding features to previously written software
- Preparing and presenting regular reviews of the software architectures, test plans, test cases, and test results
- Assist with other related duties as required or assigned
What you’ll need to bring to the table:
- Embedded Software Engineering experience including architecting product platforms as well as hands-on coding in the area of Consumer Electronic Product Development
- BSCS or BSEE - M.S. in computer science or electrical engineering is a plus
- Strong Embedded C and C++ skills, Knowledge of Java, or App Design is a plus
- Understanding of Electrical Hardware including ability to read schematics, evaluate hardware-software tradeoffs, and write minimal code to resurrect early hardware
- Experience with ATMEL and Microchip Microprocessors and associated development tools
- Experience in all phases of software development/engineering, including requirements analysis, software development, installation, integration, evaluation, enhancement, maintenance, testing, and problem diagnosis/resolution
- Experience using Revision Control and Bug Tracking Tools
- Experience implementing Agile/Scrum software development cycles
- Experience designing Real Time Operating Systems (RTOS)
- Experience designing Audio Signal Processing Algorithms is a plus
- Experience implementing Bluetooth and other wireless protocols is a plus
- Strong collaboration and communication skills
- Ability to work independently as well as in a team environment
- Excellent time management with track record for on-time delivery
- Focus on quality and attention to detail
- Excellent resourcefulness and debugging skills
- Medical Insurance
- Dental Insurance
- Vision Insurance
- 401(k) with a company match
- Tuition Assistance
- Life Insurance Benefits
- Competitive Pay
- Profit Sharing Bonus
- Paid Vacation and Holidays
- Company Picnic
- Holiday Party
- AND numerous OTTO celebrations throughout the year!
OTTO Engineering is an Equal Opportunity Employer: Disability/Veteran
OTTO Engineering does not accept unsolicited resumes from third party recruiters, agencies, or similar organizations; any submissions will not be honored.