Embedded Systems Engineer

Shotover

$80K — $110K *
Technical Services
Less than 5 years of experience
Job Overview by Ladders

Qualifications

  • Bachelor's or Master's in Electrical Engineering, Computer Engineering, Computer Science, or related field
  • 3+ years of experience with microcontrollers or control systems for gimbaled systems
  • Eligible for Controlled Goods Program requirements
  • Strong control theory foundation and proficiency in C++ and C programming
  • Experience with embedded systems and device driver development

Responsibilities

  • Design and implement control systems for gyro-stabilized gimbals
  • Develop Embedded Linux software including porting kernel drivers and integrating userspace components
  • Collaborate with hardware engineers to transition schematics to operational systems
  • Debug system issues using oscilloscopes and logic analyzers
  • Work with cross-functional teams to introduce features and support devices
  • Enhance software performance and conduct real-time testing
  • Troubleshoot and improve software quality

Benefits

  • Full-time employment status
  • Opportunity to work with cutting-edge technology in camera systems
  • Collaboration with cross-functional teams in a dynamic environment
  • Potential for travel during testing phases
  • Flexible working hours with occasional evening and weekend work
Full Job Description
Software Designer/Engineer - Embedded Systems

Status: Full-time

Location: Hamilton, ON CANADA

Job Overview:

We are looking for an Embedded Systems Engineer to join our software engineering team in Hamilton, Ontario, working on a state of the art gyro-stabilized camera system. The development team is responsible for all embedded firmware and some associated PC tools which drive the stabilized gimbals. This role will be responsible for designing, implementing, and optimizing control systems to ensure the camera system performs accurately and reliably across its multiple modes of operation. Key tasks include conducting simulations, performing real-time testing, and collaborating with cross-functional teams to integrate control systems with sensors and actuators.

Key Responsibilities

  • Design and implement gimbal control systems
  • Develop Embedded Linux software on application processors - write and port kernel drivers, edit device trees, and integrate userspace components
  • Bring up new boards alongside hardware engineers: turn schematics into a booting, working system
  • Debug across the stack with oscilloscopes, logic analyzers, JTAG, and kernel tracing
  • Work with software, hardware, and test engineers to develop new features and support new devices
  • Debug complex software to improve software quality
  • Profile and enhance software performance

Qualifications:

  • Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field, or equivalent experience
  • 3+ years of experience working on microcontrollers or control systems for gimbaled positioning systems
  • Eligible to meet Controlled Goods Program requirements

Required Skills

  • Strong background in control theory, C++ and C programming, and an interest in camera systems
  • Experience with linear algebra, coordinate frames, rotations and projective geometry
  • System performance optimization and analysis, bode plot generation and analysis
  • Deep understanding of Ethernet/IP Networking including packet level debugging
  • Production experience with FreeRTOS on STM32 (or a closely comparable RTOS / Cortex-M platform)
  • Familiarity with CAN, SPI, I2C, USB, TCP/IP
  • Embedded C firmware and device driver development for microcontrollers and their peripherals
  • Experience with non-blocking, threaded programming
  • Real-time debugging with and without the use of a JTAG debugger
  • Strong skills in object-oriented design
  • Excellent communication, documentation, and people skills to support production and customer service departments
  • Ability to learn quickly, think on your feet and innovate

Desired Skills and Experience:

  • Experience with Linux, GNU & LLVM Tools
  • Strong C, with a working understanding of memory layout, concurrency, interrupts, and the constraints of resource-limited systems (Preferably Misra C experience)
  • Writing or porting kernel drivers, writing/editing device trees, and working with a build system like Yocto or Buildroot
  • Experience with ARM-based embedded linux systems (Nvidia Jetson or similar)
  • Motor control beyond the block-diagram level FOC, sensorless observers, space-vector modulation
  • Familiarity with networking concepts and protocols (IPv4, IPv6, Multicast)
  • Knowledge of version control systems (e.g., Git) and build tools (e.g., Make, CMake), as well as Jira
  • Experience with digital video - processing, encoding, and transmission
  • Knowledge of cameras and optics
  • Experience with GPS and inertial sensors

Schedule:

  • Monday-Friday with occasional evenings and weekends as required to accommodate project deadlines.
  • Travel within Canada and internationally during testing phases.

Similar Jobs

More Jobs at Shotover

More Technical Services Jobs

Find similar Embedded Systems Engineer jobs: