Software Engineering Manager
- Calgary, AB, Canada
Full-time
Applications open in a new tab.
Job details
- Job type
- Full-time
- Apply by
- Experience
- Must have at least 5 years of experience working with software, and embedded systems firmware and hardware (whether industry experience or equivalent relevant academic experience).
- Posting language
- English
- Posted
Original job description
Position: Systems and Software – Manager
About the Company
Our client is a world leader in sensor software solutions that enable navigation and positioning in areas where traditional wireless systems.
About the Job
Our client is a Canadian company seeking a “Systems and Software – Manager” with a background in electrical engineering, computer engineering, or a related field of study. The successful candidate will work on and lead/manage a team working on systems and software for navigation systems using multiple sensors. Work on and lead/manage a team working on software, including applications real-time and offline as well as products’ libraries and SDKs.
- Work on and lead/manage a team working on firmware for embedded systems (on both RTOS and Linux among others).
- Work on and lead/manage a team working on hardware of embedded systems, and also some mechanical hardware. This also include full hardware systems for EVKs, demos, POCs, pilots, as well as internal testing and data collection.
- Lead/manage team members working on Cloud development
- Lead/manage team members working on Mobile apps development (iOS, Android).
Other tasks will include:
- Developing embedded software modules for portable and vehicular navigation and their conversion to ANSI C code (and potentially C++) with optimization, modularization and maintenance.
- Development of embedded software related to positioning for portable and vehicular navigation using multiple sensors and absolute navigation systems such as GNSS/WiFi.
- Implementation of different communication interfaces from I2C, SPI, UART, USB, Ethernet, CAN and porting optimized algorithms from a higher-level scripting language to lower-level embedded C.
- Designing, reviewing and debugging hardware schematics including electrical schematics, PCB layouts, BOMs and component selections based on intended use case and real world scenarios.
- Conducting research and development for enhancing the performance of vehicular navigation for autonomous vehicle and of portable navigation using portable and wearable devices for on-foot navigation or in-platform navigation (e.g. in vehicle) for freely moving portable devices.
- Development of data conversion/analysis/demo tools. Python and/or MATLAB are used.
- Documentation of the different developed modules.
Required Skills & Experience
- Must have obtained at least a Bachelor degree in Electrical Engineering, Computer Engineering, or a related field of study.
- Must have at least 5 years of experience working with software, and embedded systems firmware and hardware (whether industry experience or equivalent relevant academic experience).
- Must have leadership or management experience (whether industry experience or equivalent relevant academic experience).
- Strong C /C++ development and debugging skills required
- Strong skills developing systems in an RTOS environment and in Linux environment
- Knowledge of ARM toolchains and experience working with embedded IDEs such as Atmel Studio, Keil or ESP-IDF
- Experience debugging and resolving hardware issues.
- Strong skills using Linux
- Strong skills using Git.
- Strong Python and/or MATLAB development skills required
- Must be able to work in a small and dynamic team environment.
- Must have a legal working status in Canada (such as Citizenship, Permanent residence or work permit).
Preferred Skills & Experience
- Experience developing web applications using JavaScript and other related languages
- Experience working with Atmel M4 and M7 MCUs, and with Nvidia Jetson series SOCs
- Experience designing and building PCBs to carry signals such as I2C, SPI, CAN, USB, and analog RF (>= 1GHz)
- Good knowledge and understanding of inertial navigation systems with emphasis on MEMS.
- Good knowledge of integrated navigation systems.
- Strong English writing skills and ability to create/modify technical design documents, manuals and release notes.
Compensation:
- Variable, depending on experience
- Company long-term incentive plan
- Group benefits for health and dental, health spending account, RRSP.
Working Environment:
- Small team of about 30 employees in Calgary.
Location of Employment:
- Calgary, Alberta (on-site)
More about this job
Responsibilities
Lead and manage multidisciplinary teams developing navigation systems, software, embedded firmware and hardware, cloud services, and mobile applications. Develop and optimize embedded navigation software, integrate sensors and communication interfaces, debug hardware, conduct research and development, and produce analysis tools and technical documentation.
Requirements
A bachelor's degree in electrical engineering, computer engineering, or a related field and at least five years of relevant software, embedded firmware, and hardware experience are required, along with leadership or management experience. Candidates must have strong C/C++, RTOS and Linux, ARM toolchain, Git, and Python and/or MATLAB skills, hardware debugging experience, and legal authorization to work in Canada.
Skills
- C/C++ Development
- Embedded Systems
- RTOS
- Linux
- ARM Toolchains
- Embedded IDEs
- Hardware Debugging
- Git
- Python
- MATLAB
- Team Leadership
- Firmware Development
- PCB Design
- Inertial Navigation Systems
- Integrated Navigation Systems
- Technical Documentation
Benefits
- Health and Dental Benefits
- Health Spending Account
- RRSP
- Long-Term Incentive Plan
Visa sponsorship
Not detected in the job text
Categories
- Software
- Technology
- Engineering
- Management & Leadership
- Transportation
Keywords
- Navigation Systems
- Sensor Software
- Embedded Software
- Embedded Firmware
- Embedded Hardware
- C
- C++
- RTOS
- Linux
- ARM Toolchains
- Atmel Studio
- Keil
- ESP-IDF
- Git
- Python
- MATLAB
- I2C
- SPI
- UART
- USB
- Ethernet
- CAN
- GNSS
- WiFi
- MEMS
- Inertial Navigation Systems
- Integrated Navigation Systems
- PCB Design
- Nvidia Jetson
- iOS