Phase has built a custom WebGL render engine from scratch, for high-performance interactive design files, which are fully editable.
Our graphics team builds the engine, the graphics editing on top of it, and works with the rest of the engineering team to integrate this with our product's data model and UI. This isn't about using open source WebGL libraries. It's all custom built, from the ground up.
This role is for graphics engineers who go deep.
【Responsibilities】
-Capable of taking ownership in architecting own code, which fits correctly into the larger system architecture.
-Provide useful code review (consistent with our company’s standards) on other engineers’ Merge Requests.
-Proactive participation in group planning, meetings, and other discussions.
-Capable of communicating a detailed explanation of our product vision (broken into specific features).
-Complete a full BDD process (alongside designers, product, and QA) correctly completing the engineering role’s responsibilities in BDD.
【Required skills】
-Experiences in the following
•Developing applications for Web with JavaScript (min ES6+) or TypeScript, HTML5, and CSS
•Developing interactive graphical applications for Web using WebGL or graphical libraries like Three.js, Two.js, PIXI.js, Babylon.js
OR
•Developing GUI applications in C++, C#, Python, Rust, or similar programming languages
•Developing interactive graphical applications, 2d or 3d games using Unity, Unreal Engine, Godot, or similar
-Expert knowledge of vector math and linear algebra
-Expert knowledge of rendering pipeline
-Experience writing high-performance low level graphical applications, middleware or rendering engines using WebGL, OpenGL, DirectX, Metal, or Vulkan APIs
-Extensive experience in writing shaders in GLSL, HLSL, Unity shaders, Unreal shaders, Godot shaders, or similar
-Knowledge of installing, compiling, and bundling web applications with Node.js, Webpack, NPM, or Yarn.
-Experience in using git workflow with code hosting services such as GitHub or GitLab
-Experience writing unit and integration tests for graphical 2D or 3D applications
-In-depth knowledge in the use of profiling tools to optimize 2D or 3D graphics applications (E.g. Chrome DevTools for debugging and performance optimization in Web)
【Recommended skills】
-TDD using Enzyme, Chai, Jest, or Mocha
-Experience in implementing various anti-aliasing algorithms and visual optimizations
-Experience in implementing material-based pipelines and various visual effects in 2D and 3D: masks, blur, transparency, gradients, shadows, glow, depth of field, etc
-Experience in Multi-User Application development and offline support
-Experience in developing multi-tab SPA and handling concurrency issues
-Experience setting up build toolchains for web applications using Node.js, Webpack, NPM, Yarn, or similar
-Working knowledge of leveraging Web Workers
-Experience in building web applications with WebAssembly,
•compiling code into WebAssembly
•setting up WebAssembly build systems and integrating them into the toolchain
•integrating WebAssembly modules into the React / WebGL web applications
Please send your CV to [email protected]
Look forward to meeting you soon!
Phase is building a simple, visual, intuitive Digital Design product that everyone has always dreamed of! We want to help people enjoy being creative!
Designing websites and apps — what we at Phase call Digital Design — is fundamentally different from Print Design. Digital Designs are more about designing screens rather than pages, flow layouts adapting to dynamic websites and apps, advanced element interaction states, along with deep and practical component libraries.
The output of digital design is <Code />. Phase is building exported code with fully customized configurations. We aim to make things like selectors, events, conditions in our Digital Design products with visual and intuitive tools that enable your designs to become reality fast.
Phase team is based in Taipei and Berlin. We come from different backgrounds, among us are ex-hackers, architects, professional jugglers, along with serial entrepreneurs, MMA fighters and robotics experts. We are a team consisting of members who are growth-oriented, user-centric, team players with extreme ownership, and able to look at the big picture.
https://phase.com/