Visual effects (VFX)

Software developer

Also known as: Research and development (R&D) programmer

Software developer

What does a software developer do?

Software developers produce the technology required for a visual effects (VFX) project. They create the systems which technical directors (TDs) can use and modify to suit the specific needs of their VFX artists. They also design new digital tools and make sure they fit into existing software systems. This enables the efficient passing of assets from one VFX process to the next.

This is a research and development role, which means that it involves working out ways to improve how well digital processes works. Software developers must stay informed about software and technology relevant to their field and beyond. They find innovate ways to enable the artists within the pipeline to complete their work as fast and as well as possible.

What's a software developer good at?

  • Communication and teamwork: communicate well with pipeline technical directors as well as directly with a variety of staff at different levels to understand their needs and assist with technical issues, work well as part of a team to develop solutions, present a plan to and take direction from supervisors
  • Problem-solving: think analytically to come up with creative and efficient solutions, using the most up-to-date technology to find ways to overcome obstacles and achieve a creative vision
  • Programming and coding skills: have advanced knowledge of programming in Python and C++ with a very high level of technical ability using a variety of relevant software used across VFX projects, such as Maya, Houdini and Nuke
  • Knowledge of all parts of the pipeline: have a strong understanding of all jobs within VFX pipelines, their responsibilities and needs
  • Planning: create an appropriate development plan and stick to a timescale, understand how to breakdown a project into tasks

Who does a software developer work with?

Software developers work most closely with technical directors throughout the VFX pipeline.

How do I become a software developer?

To become a software developer, you will need very strong coding skills as well as a detailed understanding of the VFX pipeline. A degree in computer science or a related field is often needed, although the most important thing is a high level of technical skill using coding languages Python and C++.  A good route in through an assistant technical director role.

At school or college: 
You can take A-levels or Highers in computer science, maths and physics. Or you might want to take a level 3 vocational qualification in computing, games, animation, digital design or digital media. Look at what your local college offers and what qualifications are offered by training providers such as Pearson, UAL, OCR, NCC Education and T Levels.

Get an apprenticeship:
Apprenticeships are jobs with training. They’re a great opportunity to earn while you learn. You might want to enter the VFX industry through an apprenticeship as an assistant technical director. These involve a lot of learning on the job working in a VFX company.

Check out  What’s an apprenticeship? to learn more about apprenticeships and Find an apprenticeship to learn how to find one in your region, or approach companies directly. Go to ScreenSkills information on VFX apprenticeships for the main apprenticeship schemes in VFX.

Get a degree:
VFX companies or studios generally prefer it if you have a degree in graphic design, or another VFX-specific course for this role. Have a look at ScreenSkills’ list of recommended courses and select one in VFX. We recognise courses with our ScreenSkills Select award where they offer training in the relevant software, dedicated time to building a portfolio and have strong links with the VFX industry.

Build a portfolio:
If you intend to get into this role through being a VFX artist, you will need to create a portfolio. Learn how to use, and then experiment with, VFX programs and create a showreel that you can show to admissions tutors or employers. Go to Build your VFX portfolio to learn how. It’s really important to develop your appreciation for VFX. Make sure you’re familiar with what’s out there.

Watch a lot of films:
As well as technical skill, it’s really important to develop an appreciation for VFX and animation. Make sure you’re familiar with what’s out there in the industry.

Search for jobs:
Look at the ScreenSkills jobs board. Research VFX companies you’d like to work for. Go to their websites and check if they are advertising for junior roles the art or pre-production departments. Even if they aren’t, send in your CV and showreel and ask them to bear you in mind for future roles or work experience. Keep looking on job websites too. 

Meet people in the industry: 
Go to  ScreenSkills’ events, follow your local film office and any local community arts and media organisations and attend their events. Go to  how to network well  for some tips.  

Network online: 
Create a LinkedIn profile. See if there’s a Facebook page or other social media group for people making films or videos in your area. Join it and take part. Create a  ScreenSkills profile.   

Explore ScreenSkills Resources: 

ScreenSkills careers information: 
The your career hub has a wealth of resources designed to help you start or progress your career. 

ScreenSkills e-learning: 
ScreenSkills has a suite of  free e-learning modules  for those who are over 18  which  can  improve  your  knowledge. The  ScreenSkills Passport  modules also prepare you as they are essential for some production roles. Some modules are available for those under 18.  For anyone wanting advice about first steps, the  Getting into the screen industries  modules are very useful.   

ScreenSkills skills checklists:  
If you would like more detail about the tasks, responsibilities and skills required for many key roles in film and TV drama, children’s TV and unscripted TV you can look at our  skills checklists.  

You might also be interested in...

Being a pipeline technical director (TD) or an effects (FX) TD.

Further resources