Software Engineer

Contract: 12 Months+

You will be working on validation and benchmarking framework components, AI compiler and runtime, and tooling to accelerate telepresence deployment on the current & next generation of AR VR hardware platforms. You will work closely with AI and telepresence researchers to analyze deep learning models and validate them efficiently on ARVR hardware. You will also partner with platform teams to integrate inhouse compute silicon for high performance benchmarking. You will apply software development best practices to design features, optimization, and performance tuning techniques. You will gain valuable experience in developing product driven compute solutions and will help in driving next generation hardware software codesign for AI domain specific problems.

Responsibilities:

  • Development of SW stack for compute validation and benchmarking, compiler integration, and deployment on the next generation of ARVR platforms.
  • Analyze deep learning networks and export optimized models.
  • Performance tuning and optimization of compilers and software stack components.
  • Validate and benchmark our industry-leading telepresence solutions to balance distortion and latency.
  • Collaborate with telepresence research team to guide compute and power analysis for product architecture design and accelerate the next generation of telepresence solutions.

Minimum Qualifications:

  • Bachelor's degree with 3+ years’ experience in Computer Science, Computer Engineering, relevant technical field, or equivalent practical experience.
  • Proven C/C++ and Python programming skills
  • Familiar with embedded systems, Linux OS and driver development, and basic knowledge on Android application development.
  • Experience on deployment and performance optimization for image processing, computer vision, and deep learning applications.
  • Experience with frameworks like PyTorch, Caffe2, TensorFlow, ONNX, TensorRT and accelerating deep learning models on hardware architectures.
  • Experience in system performance optimizations such as runtime analysis of latency, memory bandwidth, I/O access, compute utilization analysis and associated tooling development.

Preferred Qualifications:

  • Master's degree in Computer Science, Computer Engineering, relevant technical field.
  • Knowledge of GPU, CPU, or AI hardware accelerator architectures.
  • Experience with CUDA programming, OpenMP / OpenCL programming or AI hardware accelerator kernel programming. Experience in accelerating libraries on AI hardware, similar to cuBLAS, cuDNN, CUTLASS, HIP, ROCm etc is a plus.
  • Experience with compiler optimizations such as loop optimizations, vectorization, parallelization, hardware specific optimizations such as SIMD. Experience with MLIR, LLVM, IREE, XLA, TVM, Halide is a plus.

Experience on programming graphics pipeline with OpenGL is a plus