Full Job Description
ecobee is hiring a Staff Embedded Engineer for our Toronto office team.
Who you'll be joining
Our Embedded Chapter is made up of 20+ Embedded Developers with a wide variety of specialties, skill sets, backgrounds, and experiences. They aim to bring their Embedded experience to the cross-functional squads that they are a part of, with a focus on collaboration, learning, development.
As a Staff Embedded Engineer, you will be responsible for helping develop the software that powers our hardware products. These devices run on a multitude of platforms from small, battery operated microcontrollers to full-blown multicore embedded Linux systems.
The embedded team is in a unique position as we own a wide breadth of the technologies that get built into our devices making each day a unique challenge. You may be working on portions of the low-level software/hardware interactions, but equally important is the development of the user applications that run on device. Everything from network protocols, to control algorithms to building enticing graphic UI's.
The embedded team is also responsible for developing the test fixtures used to validate the functionality of each device manufactured. These devices are truly products on their own and no less complex considering the hardware and software systems they must interface with.
Aside from the in-house technologies, the embedded team is often also responsible for integrating third-party services. For example, we developed the device software stack that allowed us to become one of the first Apple HomeKit accessories on the market as well as more recently one of the first third parties to integrate Amazon Voice Services for Alexa functionality built right into a thermostat and on device Siri integration.
To accomplish all of this, at any given time you may be working closely with developers from other teams as well as our QA, Product Management, Manufacturing, Hardware teams and third-party tech companies on integrations.
How You'll Make an Impact:
3 Collaborate with cross-functional teams to develop new products and features.3
3 Improve the sustainability and flexibility of the firmware that powers our hardware platforms
3
3 Conduct performance analysis and optimize system performance.3
What you'll bring to the table
We've built the following list as a guideline for some of the skills and interests we've seen in Embedded Systems Development - but we strive to build our team with members from a diverse background and skill set, so we'd love to chat!
3 Proficiency in C development experience3
3 Knowledge of embedded Linux systems, including tooling such as Yocto3
3 Extensive experience in embedded software application development3
3 Proven track record of leading projects from concept to production.3
3 Provide leadership/mentorship to junior team members3
3 Object-oriented design and coding skills with knowledge of data structures and design patterns3
3 Multi-threaded design and coding practices3
3 Knowledge of ARM architecture-based processors and development tools3
3 Aptitude in programming for reliability and testability3
3 Knowledge of Home Automation, Control Systems or Internet of Things3
3 Just so you know - the hired candidate will be required to complete a background check3
What happens after you apply:
Application review. It will happen. By an actual person in Talent Acquisition. We get upwards of 100+ applications for some roles, it can take a few days, but every applicant can expect a note regarding their application status.
Interview Process:
3 Initial round: A 30-minute phone call with a member in Talent Acquisition3
3 Virtual Interview with Hiring Manager: This one-hour session will encompass technical, behavioral, and situational questioning, aimed at evaluating your qualifications and fit for the role3
3 Technical Assessment Meeting: You will engage in 2hr discussion with members of our team to delve into your technical expertise and experience inclusive of a real-time programming assignment followed by any final questions you or the interviewers has.3
#LI-HR1
Generac is committed to fair and equitable compensation practices. The salary range for this role, based in Toronto, Ontario, Canada, is between $147,700 CAD - $180,000 CAD. This compensation will ultimately be in line with the location in which the position is filled. Final compensation for this role will be determined by various factors such as a candidate's relevant work experience, skills, certifications and geographic location. This role is eligible for variable compensation, including short-term and long-term incentives.
This position includes a comprehensive benefit package that includes medical, dental and vision plans; life, long-term disability, flexible spending and health savings accounts, accrued paid time off, paid Holidays (10 for Ontario, 11 for British Columbia) and RRSP retirement benefits.