Embedded Developer
Who we are:
Who you are:
We are always looking for amazing talent who can contribute to our growth and deliver results! Geotab is seeking an Embedded Developer who will design, write, and test C, C++, and/or Rust code for Geotab’s GO telematics devices. If you love technology and are keen to join an industry leader — we would love to hear from you!
What you'll do:
As an Embedded Developer, your key area of responsibility will be designing, writing, and testing C, C++, and Rust code for Geotab’s GO telematics devices. You will also be responsible for maintaining and improving testing tools and processes, ensuring that new releases perform as expected. You will need to work closely with other embedded systems developers, engineers, and internal technical teams in determining the architecture and constraints of the project.
To be successful in this role, you will be a collaborative and detail-oriented individual with a focus on ensuring high-quality software performance. In addition, the successful candidate will have strong problem-solving skills and the ability to contribute to architectural discussions for embedded systems projects.
How you'll make an impact:
-
Develop an in-depth understanding of the GO device firmware and how all the modules work.
-
Perform firmware development in the required area of expertise (modem, GPS, vehicle data, security, etc) using C, C++ and Rust as per the development standards.
-
Write unit tests and perform integration and system-level testing in both real and simulated vehicles, to demonstrate that new features meet design requirements.
-
Write SQL queries and Python scripts on data from Google BigQuery to determine device health and effectiveness of new functionality.
-
Conduct comprehensive testing and code reviews to ensure that industry coding standards are followed.
-
Debug firmware issues and identify areas for code improvements.
-
Keep up-to-date documentation for all areas of responsibility.
What you'll bring to the role:
-
Bachelors in Electronics, Electrical Engineering, Mechatronics Engineering, or a related field.
-
3-5 years experience in embedded systems design with preemptive, multitasking real-time operating systems.
-
Strong knowledge of programming languages (C/C++/C# ) in an embedded software context.
-
Exposure and/or experience with RTOS and Linux.
-
Exposure and/or experience with SCRUM.
-
Experience in hands-on development and troubleshooting on embedded targets.
-
Experience working with encryption or cryptographic modules.
-
Understanding of underlying electronics to the point where it influences firmware development and debugging.
-
Experience with SQL.
-
Familiar with data structures, algorithms, and design patterns common to embedded (resource-constrained) systems development.
-
Adequate knowledge of reading schematics and data sheets for components.
-
Able to research and solve open-ended design problems.
-
Experience working within a technical or engineering organization, with knowledge of the high-technology/telematics industry is an asset.
-
Strong verbal and written communication skills, ability to communicate and document complex technical systems and decisions.
-
Highly organized and able to manage multiple tasks and projects simultaneously.
-
Ability to work well under pressure and respond to multiple fast changing priorities.
-
Strong team-player with the ability to engage with all levels of the organization.
-
Entrepreneurial mindset and comfortable in a flat organization.
- Well versed in modern scripting languages (e.g. bash, Python, TCL, etc.) is highly valued.
Why job seekers choose Geotab:
Flex working arrangements
Home office reimbursement program
Electric vehicle purchase incentive program
Medical benefits offered to you and family members
Online learning and networking opportunities
Subsidized fitness membership
Co-pay tuition reimbursement
*The above are offered to full-time permanent employees only.
How we work:
Apply for this job
*
indicates a required field