Software Engineer - Unity, VR/AR

Employer

Job Description

Summary

ImmersiveTouch is at the forefront of medical virtual and augmented reality solutions. The company’s unique immersive VR and AR platform enables surgeons to determine the safest, minimally-invasive pathway for complex surgical procedures. ImmersiveTouch’s proprietary technologies combine 3D visualization and interaction of medical imaging with tactile experience of tissue feedback, and create an ultra-realistic experience for surgical planning, patient consultation and surgical education. Frost & Sullivan awarded ImmersiveTouch as the most innovative surgical simulation technology in North America. ImmersiveTouch’s products and services have been widely adopted by various leading medical centers across the United States.


Qualifications

Required

  • Bachelor's degree or above in Computer Science or a related field, or equivalent experience.
  • 3 years or more of solid experience in C# programming.
  • Solid hands-on experience with Unity 3D or other game engines.
  • Experience in VR/AR/MR software development, knowledge of Oculus VR; OpenVR; OpenXR; Microsoft Mixed Reality Devices.
  • Familiar with version control systems such as Git.
  • Strong 3D math skills (matrix/vector math, trigonometry, linear algebra, etc.).
  • Proven track record of developing complex systems from initial definition to post-deployment maintenance.
  • Ability to quickly pick up and own new concepts and to contribute with innovative solutions.
  • Ability to plan for code reusability across multiple products.
  • Values clarity and simplicity in code.
  • Team player with exceptional conversational & written communication, negotiation, & presentation skills.
  • Strong work ethic and personal accountability.


Preferred (one or more of the following):

  • Solid understanding of software algorithms and design patterns.
  • Experience in asynchronous programming and / or parallel computing.
  • Experience in real-time computer graphics, knowledge of DirectX, HLSL, OpenGL.
  • Experience in multi-user networked software / game development.
  • Knowledge of digital image processing.
  • Knowledge and experience of developing software as a medical device.


Responsibilities

  • Work as an individual or with a small; task oriented team to develop software products and services for the medical industry.
  • Analyze technical requirements involved in the implementation of new features or modification of existing features.
  • Produce code that is consistent, readable, and maintainable by others.
  • Follows the software development lifecycle.
  • Perform peer code-reviews, write technical design documents, and participate in technical design discussions.
  • Identify weaknesses in existing code base, and refactor to improve resilience, maintainability, scalability, and performance.
  • Make complex modifications to existing software to fit specialized needs and configurations.
  • Troubleshoot and resolve issues in applications.
  • Work with project owners to complete issues in a timely manner.
  • Work with the deployment team to finalize products for shipment.
  • Protects operations by keeping information confidential.


Competitive compensation package, Please contact us for more information.