x
Get our mobile app
Fast & easy access to Jobstore
Use App
Congratulations!
You just received a job recommendation!
check it out now
Browse Jobs
Companies
Campus Hiring
Download App
Jobs in Singapore   »   Jobs in Singapore   »   Information Technology Job   »   Senior Software Engineer - GPU Programming
 banner picture 1  banner picture 2  banner picture 3

Senior Software Engineer - GPU Programming

Blackmagic Design Technology Pte. Ltd.

Blackmagic Design Technology Pte. Ltd. company logo

https://www.blackmagicdesign.com

Blackmagic Design has grown rapidly to become one of the world's leading innovators and manufacturers of creative video technology. The company creates professional cameras, advanced video editing, color grading and visual effects software, production switchers, broadcast converters and large array of other products for the feature film, post production, and broadcast industries.

Blackmagic Design's founders have a long history in post-production operations and engineering. With extensive experience in high-end film and post, combined with a real passion for perfection, Blackmagic set out to change the industry forever.

"Blackmagic Design is dedicated to allowing the highest quality video to be affordable to everyone, so the post production and television industry can become a truly creative industry." - Grant Petty, CEO of Blackmagic Design

Blackmagic Design has offices in the USA, UK, Japan, Singapore and Australia.

Job description

Role:

Blackmagic Design’s DaVinci Resolve is the world’s most popular and advanced on-set, online editing, color correction, visual effects, audio post and finishing application for macOS, Windows and Linux. DaVinci Resolve is used by well over a million users ranging from enthusiasts to the largest Hollywood studios, and that user base continues to grow rapidly.

https://www.blackmagicdesign.com/products/davinciresolve

DaVinci Resolve has been used in the making of numerous blockbuster films (including The Martian, Avengers: Age of Ultron, Mad Max: Fury Road, Mission Impossible: Rogue Nation), major TV shows (including Game of Thrones, MythBusters, Brooklyn Nine-Nine), TV commercials, music videos and more!

The DaVinci Resolve engineering team is a tight knit group that is constantly innovating and exploring new technologies in order to evolve the product. In keeping with the growing popularity and user base of DaVinci Resolve, we are aggressively growing the engineering team to work on the next wave of exciting features and challenges.

We are looking for Software Engineers/Senior Software Engineers to join the DaVinci Resolve team in Singapore to work in the Algorithms team. This team implements and maintains all the algorithms for video/audio processing in Resolve.

Responsibilities:

· Design, build and maintain efficient, reusable and reliable code

· Learn about the DaVinci Resolve application and understand its features

· Adapt to the existing code base and be able to own and work on new or existing components

· Implement new algorithms in OpenCL and CUDA on modern GPUs

· Improve GPU performance for existing algorithms

· Debug and fix issues with GPU implementation of current algorithms

Qualifications and Educational Requirements:

· Bachelor’s degree in Computer Science/Computer Engineering from a top-tier university

· 5+ years of overall experience with large portion of working on C++ based projects

· Masters/PhD in a relevant field (Optional)

· Stable job history


Required Skills:

· Strong experience with GPU programming, ideally in both OpenCL and CUDA

· Deep understanding of GPU architecture from a performance standpoint

· Experience with OpenGL, Vulkan, Direct3D APIs a plus

· Experience in computer graphics and advanced real-time rendering techniques

· Ability to work well in a team and communicate effectively

· Ability to work independently with minimal guidance

· Ability to work in a fast-paced development environment

Additional Skills:

· Strong proficiency in C/C++ and STL

· Strong C++ programming capability required (experience with boost or C++11/14/17)

· Knowledge of object oriented design patterns

· Good understanding of system software and operating system

· Strong expertise in design and development of complex massively parallel algorithms

· Understanding and experience of working in multi-threaded systems

· Code development experience across Mac, Windows and Linux platforms

Sharing is Caring

Know others who would be interested in this job?