Logo
Ursus Inc

Software Engineer V - C/C++

Ursus Inc, Sunnyvale, California, United States, 94087


JOB TITLE: Software Engineer V - C/C++ LOCATION: Onsite in Sunnyvale, CA DURATION: 12 months PAY RANGE: $99-109/hour TOP 3 SKILLS:

5+ years of experience designing and implementing complex real-time systems using C/C++ for embedded processors. 5+ years of experience in software development for imaging and CV algorithms or related signal processing fields. Solid C/C++ programming and refactoring skills, and able to understand and debug heavily threaded code.

COMPANY: Our client is a Fortune 500 multi-national technology company headquartered in Menlo Park, CA.

Job Description: Our client's mission is to give people the power to build community and bring the world closer together. Our global teams are constantly iterating, solving problems, and working together to empower people around the world to build connections in meaningful ways. Together, we can help people build stronger communities - we're just getting started.

This group focuses on connecting people through Virtual Reality (VR) and Augmented Reality (AR). The compute performance and power efficiency requirements of these products require custom silicon. The Silicon team is driving the state of the art forward with breakthroughs in computer vision, machine learning, mixed reality, graphics, displays, sensors, and new ways to map the human body. We believe the only way to achieve our goals is to look at the entire stack, from transistors, through architecture, to firmware, and algorithms.

We are seeking a Software Engineer with experience in compiler development (such as LLVM or higher-level IR) and code optimization for ISAs like x86, ARM, or RISC-V.

Responsibilities:

Develop optimized software in an embedded environment for vector machines. Build an optimization flow or compiler automation for a SIMD or vector processor.

Minimum Qualifications:

Bachelor's degree in electrical engineering, computer science, or equivalent relevant experience. 5+ years of experience designing and implementing complex real-time systems using C/C++ for embedded processors. 5+ years of experience in software development for imaging and CV algorithms or related signal processing fields. Solid C/C++ programming and refactoring skills, and able to understand and debug heavily threaded code.

Preferred Qualifications:

MS or PhD in EE/CS. Theoretical knowledge in the fields of computer vision, machine learning, and image processing, or ISP sensors. Experience with low-level SW optimization at instruction level, loop optimization, vectorization, data organization and caching Theoretical knowledge of audio pipeline and algorithms: capture, render, codecs. Experience in development of imaging and CV or related signal processing algorithms (e.g. OpenCV, Eigen, Halide, Game physics and 3D graphics, CODECs, or Communication) Prior experience with ARM or RISC-V CPUs, or Tensilica DSP architectures

IND123