
// Open Role at DNEG
Join DNEG's BRAHMA AI 2D Technology team as a Software Developer to create and enhance tools for high-quality visual effects workflows in film and television production.
Open Position:- Software Developer – 2D Generalist ( India )
Important Note: Please review the Job Description (JD) thoroughly before proceeding with candidate screening. The specified technical skills and hands-on experience are mandatory requirements for this position. Candidates must demonstrate practical, hands-on expertise in these areas, and the relevant skills and experience must be explicitly documented in their resumes.
Candidates who do not meet these mandatory technical requirements or whose resumes do not substantiate the required competencies will be rejected during the initial screening stage.
These requirements are critical to meeting the current business needs and ensuring alignment with the role's technical expectations.
Eligibility Criteria: This position is exclusively open to Indian citizens only. Candidates currently residing in India will be given preference, in alignment with the role’s location-specific hiring requirements and operational needs.
BRAHMA AI’s 2D Technology team supports Digital Compositing departments that create high-quality visual effects to combine live-action footage with CG imagery. Artists work with elements such as rotoscoping, matte paintings, plate preparation, and motion graphics to produce photorealistic content for film and television.
To support these workflows, the 2D Technology team develops tools and pipeline integrations that enhance productivity and streamline complex compositing tasks. We’re looking for a seasoned software developer with real world experience in CG production.
What You’ll Do
Develop and maintain tools that support compositing, rotoscoping, matte painting, and motion graphics workflows
Integrate and extend industry-standard software (e.g. Nuke) within proprietary pipeline systems
Build automation tools to reduce repetitive tasks and improve artist efficiency
Design user-friendly interfaces for asset management, compositing templates, and data sharing
Contribute to image processing tools, including advanced techniques such as deep image data
Collaborate with artists, product owners, and stakeholders to deliver practical solutions
Participate in the full software development lifecycle, from design to deployment and support
Work within agile teams to continuously improve tools and workflows
Must have:
Degree in Computer Science, Engineering, or relevant professional experience
Programming experience in Python and/or C++ authoring production ready code
Experience with software development in a Linux environment
Basic knowledge of Nuke
Nice to have:
Experience developing machine learning models
Experience developing AI-based solutions
Experience with source control systems and developing collaboratively as part of a team
Experience with unit/integration testing
Experience developing multi-threaded software
Experience with Qt, Boost,
Knowledge of the core principles of digital photography and compositing
Experience with OpenGL, OpenCV, OpenImageIO, OpenColorIO
Experience with the Nuke C++ NDK and Photoshop javascript
Equal Opportunity Statement
We believe exceptional work is built by diverse, inclusive, and collaborative teams. BRAHMA IA is committed to fostering an environment where individuals from a wide range of backgrounds, cultures, and perspectives can thrive, working together at the forefront of creative and technical innovation.
Develop and maintain tools supporting compositing, rotoscoping, matte painting, and motion graphics workflows. Integrate and extend industry-standard software like Nuke within proprietary pipeline systems. Build automation tools to enhance artist efficiency. Design user-friendly interfaces for asset management, compositing templates, and data sharing. Contribute to advanced image processing tools, including deep image data. Collaborate with artists, product owners, and stakeholders to deliver practical solutions. Participate in the full software development lifecycle, from design to deployment and support. Work within agile teams to continuously improve tools and workflows. A degree in Computer Science, Engineering, or relevant professional experience is required, along with programming experience in Python and/or C++ authoring production-ready code. Must have experience with software development in a Linux environment and basic knowledge of Nuke.