NGRAIN Corporation  Company Logo

NGRAIN Corporation

Vancouver, British Columbia - Canada
View all jobs at this company »

Rendering Software Engineer

Description

NGRAIN® provides interactive 3D visualization technology and software based on its patented voxel-based 3D rendering engine. Offering development platforms and authoring tools, NGRAIN enables organizations to accelerate decisions by interacting with the world’s data in 3D. We have offices in Vancouver, Ottawa, and Richmond, Virginia.

Reporting to the Research Engineer, the Rendering Software Engineer will be part of a small team responsible for the NGRAIN render engine. This render engine is currently used in our flagship product Producer and Viewer that run on Windows, iOS and other environments. The main objective for this full time position is to maintain and extend the NGRAIN render engine as well port it to other platforms.

 ESSENTIAL DUTIES AND RESPONSIBILITIES:

·         Responsibilities include, but are not limited to:

·         Extend feature set, optimize and maintain render engine code on multiple platforms

·         Educate the software development team in terms of maintaining and enhancing the render engine code

·         Help design an approach to build application code on top of this render engine

QUALIFICATIONS:

·         5+ years developing applications, with strong software engineering skills

·         5++ years of C++ development

·         3+ years of graphics development experience

·         Experienced in rendering, with performance targeted, low-level coding, including memory models

·         A minimum of a Bachelor’s degree in computer science or computer engineering

 ASSETS:

·         Experience in CPU and GPU optimizations

·         Experience with programmable shaders

·         Knowledge of OpenCL, Objective-C and OpenGL-ES

·         Knowledge of Intel and ARM optimizations

·         Knowledge of the Windows 8 or Android development environment

·         Knowledge in volume graphics

 CORE COMPETENCIES:

·         Strong verbal and written communication skills

·         The ability to work cooperatively within a small team

·         Creativity



This Job is no longer active!