Embedded Systems Software Engineer
Toronto, Canada
Located at our Toronto, Canada facility, you will be part of theImage Signal Processing group creating and bringing to market leading-edge image and video processing solutions for GEOs high performance current and next-generation ICs.
You will have the following responsibilities
Design, implement, test and document new system-level features
Optimize system resources and video data path based on product use cases
Integrate new image and video processing capabilities (warping, computer vision) from algorithm teams
Develop, maintain camera control solutions over various interfaces (SPI, UART, CAN, Ethernet)
Interface GEOs camera processor to various systems hosts, integrate with 3rd party middleware
Create and maintain tools for customers and developers
Help bring-up, debug customer systems and issues
QUALIFICATIONS:
BSc in computer science or electrical engineering
3+ years industry experience in firmware development in constrained environments
Strong C programming and debugging skills in RTOS environments
Experience with solving real-time embedded issues including threading, optimization, memory management, interrupt handling, etc.
Experience with scripting languages (Python, Perl)
Familiar with quality software development cycle
Excellent verbal and written communication skills
SKILLS THAT WOULD HELP DIFFERENTIATE:
Experience working with Board Software Packages (BSPs)
Understanding of I2C, UART, SPI and Ethernet protocols
Working knowledge of graphics API such as OpenVG, OpenGL
AUTOSAR system development experience
Software development experience in automotive or other safety-critical industries
Knowledge in various cryptographic authentications, hashing, encryption algorithms, secure key storage technologies
As a GEO team member, you have a passion for quality, leading-edge, robust and reliable products. You are highly motivated, hands-on, technology savvy with excellent interpersonal skills. You are comfortable working in a fast-paced, collaborative and deep technical environment.
Required Knowledge, Skills, and Abilities: (Submission Summary):
1. BSc in computer science or electrical engineering
2. 3+ years industry experience in firmware development in constrained environments
3. Strong C programming and debugging skills in RTOS environments
4. Experience with solving real-time embedded issues including threading, optimization, memory management, interrupt handling, etc.
5. Experience with scripting languages (Python, Perl)
6. Familiar with quality software development cycle
7. Experience working with Board Software Packages (BSPs)
8. Understanding of I2C, UART, SPI and Ethernet protocols
9. Working knowledge of graphics API such as OpenVG, OpenGL
10. AUTOSAR system development experience
11. Software development experience in automotive or other safety-critical industries
12. Knowledge in various cryptographic authentications, hashing, encryption algorithms, secure key storage technologies
13. Must be authorized to work in Canada.