Embedded Software Engineer
Description
Job Location
USA, Louisville, KY
Job Posting Title
Embedded Software Engineer
The Challenge
Join the firmware design team and help develop the embedded controls for the next generation of high-end, consumer friendly, & energy efficient appliances. We provide learning opportunities, challenges, and support for our software engineers. We are applying the latest techniques in software development such as Agile, TDD, Continuous Integration, and Testing Automation to embedded software. Every day, we push ourselves to find innovative solutions, produce higher quality code, and deliver it on schedule.
What you will Do
- Develop software that runs our feature-rich, connected, next-generation dishwashers
- We develop in C (production code) and scripting languages like Lua and JavaScript (tooling)
- Support legacy platforms currently in production as needed
- We work in a resource-constrained environment with (generally) no heap, and primarily run bare metal but some projects use an RTOS
- We use the industry-leading version control system Git
- We are Agile!
- We're heavily invested in Test Driven Development (TDD) which is a great way to work
- We use continuous integration to automate builds and identify issues quickly
- We're invested in continuous learning and our developers have the opportunity to attend training and conferences
- We're doing a lot of work towards making connected appliances - this means creating both highly debuggable platforms for development as well as enabling Internet of Things (IoT) functionality
What you need to Succeed
Minimum Qualifications
- B.S. Electrical, Computer or Software Engineering or equivalent
- 3 or more years Embedded Software Development
- Experience with formal software development process (such as Agile)
- Knowledge of Embedded Software Development Tools & software languages: C
- Knowledgeable of theory and use of Test Driven Development (TDD)
- Passion for software
Preferred Qualifications
- Strong project planning and project leadership skills and experience
- Excellent analytical skills and ability to work in a team oriented environment
- Software Languages: C++, Lua, JS
- Experience working with global software development team
- Experience using emulators, oscilloscopes, simulators and software analysis tools
- Experience developing in a Mac/Linux environment
- Experience with resource limited microcontrollers
- Experience with UL60730 (UL1998)
GE Appliances is an Equal Opportunity Employer. Employment decisions are made without regard to race, color, religion, national or ethnic origin, sex, sexual orientation, gender identity or expression, age, disability, protected veteran status or other characteristics protected by law.