Embedded Software Developer (Saskatoon)

Embedded Software Developer (Saskatoon)

23 Aug
|
Quarterhill
|
Saskatoon

23 Aug

Quarterhill

Saskatoon

Overview We are seeking an Embedded Software Developer to design, develop, test, and support reliable embedded software solutions. The successful candidate will contribute throughout the software development lifecycle, from architecture and system design through implementation, verification, integration, release, and ongoing support.

The role requires strong analytical and problem-solving skills, attention to quality, and effective collaboration with software, hardware, systems, verification, and product teams,

with a strong focus on embedded C development, hardware/software integration, low-level communication interfaces, real-time behavior, and embedded Linux and/or RTOS based platforms.

Responsibilities Contribute to the design and implementation of scalable software and system architectures that meet functional, performance, reliability, and maintainability requirements.

- Investigate, evaluate, and propose alternative concepts, architectures, designs,

algorithms, tools, and development processes.
- Assist in preparing system-level and software architecture and design

documentation.
- Develop, modify, debug, and maintain embedded software based on approved

requirements and designs.
- Develop and maintain software interfaces using protocols and buses such as CAN,

UART, SPI, I2C, Ethernet, TCP/IP, USB, GPIO, or similar interfaces.
- Develop and troubleshoot multithreaded, event driven, interrupt driven, and real

time software where applicable.
- Create and maintain supporting development assets, including scripts, build files,

makefiles, configuration files, deployment tools, and test utilities.
- Support cross compilation, embedded build environments, toolchains, and target

device deployment.
- Perform software, product, and system verification activities as required.
- Prepare technical documentation and supporting materials for design reviews, code

reviews, verification activities, and product releases.
- Prepare for and actively participate in software design reviews, architecture reviews,

and peer code reviews.
- Develop and execute unit, integration, regression, and system-level test procedures.
- Analyze test results, investigate defects, and implement corrective actions.
- Support system integration, troubleshooting, and testing across software and

hardware components.
- Assist with the preparation and execution of customer, regulatory, or internal

acceptance testing.
- Prepare software releases, release notes, installation instructions, configuration

records, and associated technical documentation.




- Assist in developing effort estimates for software design, development, integration,

verification, and release activities.
- Manage, administer, configure, and deploy local and remote development, test, and

production systems, including database servers where applicable.
- Follow established software development, configuration management,

cybersecurity, and quality assurance processes.
- Identify opportunities to improve software quality, development efficiency, test

coverage, and product performance.
- Take ownership of assigned deliverables and ensure they are completed accurately,

thoroughly, and to a high standard of quality. Qualifications Bachelor’s degree or diploma in Computer Engineering, Electrical Engineering,

Computer Science, Software Engineering, or a related technical discipline.

- Experience developing software for embedded systems, real-time systems, or

hardware-integrated products.
- Proficiency in C and/or C++.
- Experience with embedded operating systems, real-time operating systems, or

embedded Linux.
- Good understanding of processes, threads, synchronization, concurrency,

interrupts, timers, and inter process or inter task communication concepts.
- Understanding of software architecture, modular design, data structures,

algorithms, and software development lifecycle practices.
- Experience working with cross compilers, embedded toolchains, and target

hardware.
- Experience with source control and configuration management tools such as Git.
- Experience with build systems, makefiles, scripting languages, and automated

development or test tools.
- Ability to read and interpret technical requirements, system specifications,

hardware documentation, and interface definitions.
- Experience with software debugging, testing, defect investigation, and root-cause

analysis.
- Solid written and verbal communication skills.
- Ability to work independently and collaboratively within a multidisciplinary

engineering team.

Preferred Qualifications

- Experience with microcontrollers, microprocessors, device drivers, board support

packages, or firmware development.




- Experience with communication interfaces and protocols such as SPI, I2C, UART,

CAN, Ethernet, TCP/IP, USB, or similar technologies.
- Familiarity with hardware debugging tools such as oscilloscopes, logic analyzers,

debuggers, and protocol analyzers.
- Experience with continuous integration, automated testing, static analysis, and

code-quality tools.
- Experience with Python, Bash, or other scripting languages.
- Familiarity with databases, server administration, virtualization, containers, or

remote deployment environments.
- Familiarity with containers, remote deployment, and Linux systems where these

technologies are used as part of the embedded development or test environment.
- Experience working within regulated, safety-critical, or high-reliability development

environments.
- Knowledge of cybersecurity principles for embedded devices and connected

systems.
- Understanding of secure coding, authentication, software integrity, secure

communications, and embedded device security concepts is an asset.
- Familiarity with Agile, Scrum, or other iterative software development

methodologies.

Core Competencies

- Strong analytical and technical problem-solving abilities.
- Strong low level debugging and root cause analysis skills.
- Commitment to software quality and engineering best practices.
- Careful attention to detail and documentation.
- Ability to manage multiple priorities and meet project commitments.
- Willingness to investigate complex technical issues and develop practical solutions.
- Ability to communicate technical information clearly to both technical and nontechnical stakeholders.
- Collaborative, accountable, and results-oriented approach to work

Benefits We offer a Total Rewards plan designed with you and your family’s health and wellness in mind that includes:

- Paid days off ( i. e. vacatio n, sick days, bereavement leave)
- Health and Dental plans
- Retirement plans
- Employee and Family Assistance Program (EFAP)
- Employee referral program

We welcome applicants from all backgrounds, regardless of race, color, religion, sex, veteran sta tus, sexual orientation, gender identity, national origin, age, or disabilit y or any other protected characteristics in accordance with applicable federal, state/provincial, and local laws . We 're committed to creating a workplace where everyone feels valued and respected. We appreciate all responses and will acknowledge only those being considered for an interview .

We respectfully request no calls or unsolicited resumes from Agencies .

📌 Embedded Software Developer (Saskatoon)
🏢 Quarterhill
📍 Saskatoon

Reply to this offer

Impress this employer describing Your skills and abilities, fill out the form below and leave Your personal touch in the presentation letter.

Subscribe to this job alert:

Get the latest job offers by email for: embedded software developer (saskatoon) / saskatoon

Subscribe to this job alert:

Get the latest job offers by email for: embedded software developer (saskatoon) / saskatoon