- Professional
- Escritório em Victoria
Description
AEM (Advanced Environmental Monitoring) is the global leader in innovative mission critical weather, wildfire and water monitoring and intelligence solutions. We aim to be the world’s essential source for environmental insights – enabling decisive action and positive outcomes for our customers and their constituents. Our family of innovators offers world-class hydrometeorological technologies and services, including sensors, dataloggers, telemetry, and advanced analytics and software. Our technology and services empower the communities and organizations to survive – and thrive – in the face of escalating environmental risks.
We are seeking an experienced TouchGFX developer with strong C++ skills to support the next stage of development for our datalogger platform. The primary focus will be on implementing new user interface screens to support additional telemetry paths, while maintaining consistency with our established design theme.
This role involves close collaboration with Product Management and the Firmware team to ensure that the UI integrates seamlessly with system functionality. The ideal candidate will not only be able to build TouchGFX screens, but also follow and enforce clean coding practices and proper naming conventions to keep the codebase maintainable.
This is a temporary position that is expected to last 4+ months, with the potential of an extension. Preference will be given to candidates who are able to come into the office in Victoria, B.C. as needed.
Job Responsibilities:
- Work with Product Management and Firmware teams to design and implement new TouchGFX screens for three new telemetry paths.
- Translate Figma designs into production-ready TouchGFX implementations.
- Ensure new UI screens follow the established theme and maintain design consistency.
- Apply proper coding practices, including clean architecture, modular design, consistent naming conventions, and maintainable component/widget implementation.
- Review and refactor existing C++ and TouchGFX code for performance, readability, and maintainability.
- Contribute to improving development standards and best practices for embedded UI.
This job description may not be inclusive of all assigned duties, responsibilities, or aspects of the job described, and may be amended at any time at the sole discretion of the Employer.
Job Qualifications:
- 5+ years professional experience with C++, ideally in embedded or resource-constrained systems.
- Proven, hands-on experience with TouchGFX, including implementing multi-screen workflows.
- Strong knowledge of clean code principles, coding standards, and best practices for UI development.
- Experience integrating UI with firmware/device backends.
- Familiarity with Figma-to-TouchGFX workflows.
- Experience with STM32 microcontrollers and FreeRTOS.
- Strong communication skills and ability to work independently in a distributed team environment.
Additional Information:
- This is a hybrid opportunity. Preference will be given to candidates that are able to come into the office in Victoria, B.C. as needed.
- Must be eligible to work in Canada without company sponsorship, now or in the future, for employment-based work authorization. F-1 visa holders with Optional Practical Training (OPT) who will require H-1B status, TNs, or current H-1B visa holders will not be considered. H1-B and green card sponsorship is not available for this position.
Compensation Range: A reasonable estimate of the current salary range for this position is $85,000 - $100,000 CAD per year. As a reminder, this position is estimated to last for 4 months and the salary will be paid accordingly. Please note that the salary information is a general guideline only. AEM considers a wide range of factors such as (but not limited to) scope and responsibilities of the position, candidate's work experience, education, licensure and certifications, key skills as well as other market and business considerations when extending an offer. The disclosed range estimate has not been adjusted for the applicable geographic differential associated with the location at which the position may be filled.
This position will accept applications on an ongoing basis and will be closed once the position is filled.
AEM is an Equal Opportunity Employer.
Candidatar-se agora