You will be working in our fascinating R&D department, located in Porto, Portugal, contributing directly to the product development from scratch till the market-entry to ensure that the software quality is state of the art.
FARO is different:
FARO innovates and develops fascinating 3D measuring and documenting technology, which is widely used for many technologically advanced industries including the automotive, aerospace, architecture and engineering industries. We have also contributed to many innovative, exciting projects, such as F1, The Red Bull Sage project (extreme skydive), the restoration of archeological sites and many more.
Not everyone is fit for FARO and the challenging role – we are looking for: a natural problem solver with an empathetic mindset, who is looking for a challenging career within a dynamic workplace, where you can let your creativity shine and have the freedom to influence the solutions.
This position requires:
- Educated to a Master or PhD level in computer science or a related field
- Deep knowledge in computer graphics, especially in linear algebra, algebraic curved surface and vector algebra as well as in the development of software algorithms
- Proficient in C# or other object oriented programming language, 3D programing (OpenGL, DirectX, etc.)
- Shader programming using GLSL or HLSL and GPU programming using CUDA / OpenCL / Vulkan are a plus
- Solid complex problem solving skills with the ability to be creative and innovative in providing solutions
- Independent and decisive with leadership competence and strong communication skills
How you will make a difference FARO:
- Research, analyze, design, develop and document computer graphic algorithms as well as resolve computer graphics problems
- Stay up-to-date on the state of the art research being developed
- Provide assistance for correct interpretation and integration of deliverables into existing products or research projects
- Ensure that algorithms work effectively when they are integrated, so that the computer graphics problem being solved has the intended outcome after integration
- Analyze research papers in areas that may be of interest, proactively or by suggestion, and provide reports
- Test algorithms for bugs and keep the code clean as well as write unit tests to operate and test all elements of the algorithms
Are you ready to join the challenges?