View Our Website View All Jobs

Graphics Software Engineer, Prototyping (9485653)

We want you to join our world-class team of pioneers experimenting with breakthrough technology. We are a group of expert research scientists, mechanical engineers, electrical engineers and other brilliant minds. We build cutting-edge prototypes and create the technology that makes AR/VR universal.

We are building early prototypes of novel graphics systems at the early research incubation stage. Many of these systems use custom developed hardware such as new displays and FPGA logic. You will be interfacing these hardware systems to existing software like graphics frameworks, eyetracking software, and machine perception algorithms. You will be be working with high performance DMA interfaces and low-level graphics interfaces (OpenGL/DirectX) to interface with the hardware we build. In addition, you will be creating software to enable us to test, develop, and troubleshoot this custom hardware. In short, you will be connecting the hardware we build to the existing software that powers Oculus’ immersive augmented and virtual reality experiences.

Responsibilities

  • Interface video/graphics applications to novel custom designed hardware in Windows (Required) Linux (Desired)
  • Develop “hello world“ early bring up applications for custom hardware and systems
  • Write clean readable code, debug complex problems that span systems, prioritize ruthlessly and get things done with a high level of efficiency
  • Learn constantly, dive into unfamiliar technologies, and embrace the ambiguity of AR/VR problem solving

Skills

  • 5+ years C/C++ experience, including C++11 (and up) features and principles
  • 5+ years experience creating software for real-time systems, high performance environments, or games
  • Experience with interfacing application frameworks to device drivers
  • Experience using standard software development toolsets such as source control and continuous integration systems
  • Low systems level C++ development, with some interfacing with CUDA

Additional Desired Skills

  • Experience working with custom hardware development and prototyping
  • Windows/Linux kernel level driver development
  • Python scripting for automation
  • Experience with one or more low-level graphics frameworks, such as DirectX, or OpenGL
  • GPGPU experience, such as CUDA, OpenCL or DirectCompute development
  • Embedded and low-power environments (mobile SoCs, DSPs, etc.)

Education

  • BS degree in Computer Science or a related field
Read More

Apply for this position

Required*
Apply with Indeed
We've received your resume. Click here to update it.
Attach resume as .pdf, .doc, .docx, .odt, .txt, or .rtf (limit 5MB) or Paste resume

Paste your resume here or Attach resume file