Embedded Software Engineer (Vision)
Kneron, Inc.
San Diego, United States of America
yesterday
Role details
Contract type
Permanent contract Employment type
Full-time (> 32 hours) Working hours
Regular working hours Languages
English Experience level
IntermediateJob location
San Diego, United States of America
Tech stack
Computer Programming
Software Debugging
Linux
Distributed Systems
Embedded Software
Game Engine
Software Architecture
Real-Time Operating Systems
Software Engineering
Multithreading
Graphics Processing Unit (GPU)
Low Latency
Data Management
Job description
- Design and optimize application software architectures and frameworks for real-world performance while matching or exceeding customer requirements.
- Design and profile efficient mechanisms to improve utilization on computers with multiple heterogeneous hardware engines.
- Working on areas such as component abstraction layers, inter-process data sharing and communication, and process scheduling.
- Collaborate with hardware, platform, testing, performance and algorithmic teams
Requirements
- MS or higher in computer engineering, computer science or related engineering fields, with 2+ years of experience or equivalent experience
- Excellent C and C++ programming skills
- Strong scripting skill with Python
- Experience designing, developing and debugging multithreaded/distributed applications like multimedia systems, game engines, etc.
- Solid understanding on QNX, Linux, Android, and/or other real-time operating systems.
- Thrive on designing low latency, highly performant code
- Excellent communication and analytical skills.
- Self-motivated and a great teammate
Preferred:
- Understanding of embedded and high efficiency software architectures
- Experience with large frameworks like used in ROS, android etc.
- Experience on developing software in heterogeneous architectures, including GPUs and other types of accelerators.
- Be hands-on and work well within a team of algorithm, software and hardware engineers, with a significant level of detail orientation and a penchant for data organization and presentation
- Knowledge of automotive systems, notably ADAS or SLAM systems
- Embedded software programing experience with mobile GPU, DSP
The ideal candidate will have a passion for generating new ideas, be a proactive and quick learner, and be able to demonstrate creativity and innovation.