Optical Software Engineer

Optical Software Engineer

The main function of the software engineer is to create pipelines utilizing innovative algorithms for optimizing AR/VR devices and automating the process to continuously produce high-performance design iterations.

Job Responsibilities:

  • Develop and maintain internal optical software simulation and optimization pipelines.
  • Create user-friendly applications with both internal and external simulation software to enable designers to optimize optical designs efficiently.
  • Validate the internal simulation pipeline using established simulation solutions.

Minimum Requirements:

  • A Master’s degree in Electrical Engineering, Physics, Computer Science, Optical Engineering, Applied Mathematics, or a related field.
  • Background in optics or photonics.
  • At least 2 years of experience with Python and C++ coding.
  • Experience in using and/or developing open-source software and/or commercial software for computational simulation and optimization.
  • Experience with testing industrial software products and services, including but not limited to writing automated tests, developing testing frameworks, performing manual tests, etc.

Preferred Qualifications:

  • A Ph.D. degree in related fields.
  • Experience in development of optical simulation solutions such as ray tracing, RCWA, FDTD, or similar.
  • Experience with PyTorch, Jax, or a similar machine learning framework.
  • Experience in high-performance computing with CUDA and/or cloud computing environment.
  • Experience working in an industrial research environment with researchers with various backgrounds.

Must-Have Hard Skills:

  • Python (MUST), C++ [Optional]
  • Optic and photonics physics background
  • Experience in development of Optical Simulation Solutions such as Ray Tracing, RCWA, FDTD, or similar

Nice-to-Have Skills:

  • ML experience or background in big tech
  • Optimization algorithms
  • Experience in high-performance computing with CUDA and/or cloud computing environment