Make your move
The Software Engineer plays a key role in designing a wide range of commercial cooking equipment. The engineer has the opportunity to be involved with implementing and supporting new products, product improvements, product enhancements, customization, and solving customer related problems. In addition, the engineer will design extensions to current product lines to meet the needs of a diverse customer base, as well as finding creative solutions to application problems that occur on our mature and new products.
- Work on moderately complex, less clearly defined projects.
- Conduct and participates in periodic reviews of work output.
- Apply knowledge to identify problems that are not immediately apparent and then take action.
- Prepare detailed technical requirements and specifications to meet product requirements.
- Collaborate with cross functional team members on system level decisions.
- Respond to internal/external inquiries about the technical aspects of our products.
- Improve skills and product knowledge by getting training and continued education
- Implement internal process improvements and facilitates change management.
- Complete tasks that support the overall schedule and clearly communicates status.
- Assist in the development of user/tech manuals as needed.
- Follow best practices and all regulatory procedures for ISO, UL, CE, and others as required.
- Maintain an organized and clean lab/project environment.
- Take additional responsibility for designing and implementing system specifications and formal representations of solutions used to create, modify, test, debug, deploy, and maintain system software that operates hardware and/or interacts with the product user or automated system.
- Troubleshoot, analyze, and revise existing system logic and software as necessary
- Bachelor’s Degree in Computer Engineering or Electrical Engineering
- 1-5 years engineering experience
- Collaborative style and a passion for learning, laughing, and achieving
- Strong verbal and written communication skills with a strong attention to detail
- Competent with source control and Eclipse based development tools
- Experience developing/implementing bootloaders, low level drivers, libraries, and BSPs
- Advanced in C/C++
- Intermediate experience with RTOS and/or embedded Linux
- Strong understanding of state machines
- Intermediate knowledge of what interrupts are and how they work
- Advanced understanding of Boolean and hexadecimal math
- Strong understanding of microprocessor internals
- Strong understanding of digital and analog electronics
- Ability to read and understand schematics
- Ability to perform advanced electronics debugging/troubleshooting
- Ability to use a debugger to perform complex operations
- Ability to develop and debug code for timers, PWM, real-time clocks, PID
- Strong understanding of UART/USART, RS232, RS485, Modbus, CAN, USB, Ethernet, SPI, I2C, Flash, EEPROM, and ADC/DAC
- Ability to effectively use a multimeter and an oscilloscope
- Advanced understanding of HMI programming
Compensation for this position includes full benefits, 401k matching, a generous relocation package, paid vacation, and paid paternity leave.
Share this job with others