Rendering Engineer

5 Days ago • 5 Years + • Rendering

Job Summary

Job Description

As a Rendering Engineer at Fuse Games, you will collaborate with a team to create visually stunning and engaging game experiences. Responsibilities include developing and configuring player customization systems, optimizing ray tracing for high-quality lighting and reflections, and working closely with VFX, lighting, and technical artists. The role requires strong C++ skills, proficiency in writing performant systems, and experience shipping titles on console and PC. A passion for rendering systems and techniques is crucial, along with excellent communication skills. The position offers the opportunity to contribute your unique perspective to a variety of challenges, embracing a generalist approach within the team.
Must have:
  • Passionate about rendering systems
  • Strong C++ skills
  • Excellent communication
  • Performant system development
  • Shipped console/PC title
Good to have:
  • 5+ years game industry experience
  • Unreal Engine experience
  • PIX, Razor GPU, Nvidia Aftermath
  • HLSL, shader graphs, modern graphics hardware
Perks:
  • Competitive compensation
  • Flexible working hours
  • Hybrid work culture
  • Opportunities for skill development

Job Details

Fuse Games. A love of games and a love of making games.

We understand deeply how games are made from the simple starting point of a one-line idea, through concept, prototyping, pre-production and large scale, multi hundred-person development teams.​

This understanding is underpinned by the huge value of building high performing teams. We work hard to lead, grow, develop and fuse our people together with a clear vision and aligned constraints that are guided by our shared values. Bringing energetic, creative collaboration with a sense of urgency is essential to everything that we do.

At Fuse it’s important for us all to create a space for everyone to feel safe and included in order to be responsibly open, generous and to be their best selves. We encourage curiosity to embrace diverse perspectives, being humble and leading by example.
 
An Exciting Opportunity:

We are looking for creative, collaborative and passionate people with a growth mindset to help us build amazing games. For us, software is key and we need talented folks who are happiest in engine exploring, ideating, sharing and with a sense of urgency.  The games industry is an ever-evolving fast moving one. So, we’d love to have people on board who aren’t afraid to adapt, grow their skills and push both themselves and how we make games at Fuse.

What a Rendering Engineer does at Fuse Games:

As a rendering engineer at Fuse you’ll work with the whole team to help make our games both look and feel amazing to play. In this role, you’ll work on features that ensure every pixel we put on screen shines (unless of course if it’s meant to be in shadow, in which case you’ll ensure it’s appropriately shaded…). This could range from creating and configuring a customisation system to allow the player to express themselves in our game, to tweaking and tuning the ray trace system so our lighting and reflections are affordable and high quality. You’ll report to a manager within our experienced team of engineers and take direction from our leaders in art and engineering. 

We believe that collaboration gets the best results. Our rendering team works closely with other areas such as VFX, lighting and technical artists to create the best possible systems and features. Everyone at Fuse should expect to be a little bit of a generalist – this is especially true as we grow our team – and this gives an opportunity to bring your unique perspective to problems outside your specialty. 

We are looking for talented folks with a growth mindset and must be highly competent in these areas:
  • Be passionate about rendering systems and techniques 
  • Have strong C++ skills 
  • Have good communication skills 
  • Understand how to write performant systems 
  • Have shipped a title on console and PC 
Additional attributes we also appreciate:
  • Have over five years of games industry experience as a rendering engineer 
  • Have professional experience with making games with Unreal Engine 
  • Have experience with PIX, Razor GPU, Nvidia Aftermath 
  • Understand HLSL, shader graphs and modern graphics hardware 
Engineers At Fuse Games

We make video games, not safety critical systems

We aim to entertain. This means our priority should be to make the game better. It’s a useful razor to apply to decision making - if a task doesn’t end up making our games better, it might not be worth taking on.

We can cut corners when it makes sense to - we’re not sending people into space and we don’t have to be worried about never failing. If we can answer a question quickly by hacking in a change, then we can do that as long as we do it knowingly, and appreciating the fact we might need to refactor the approach to build on it.

Proactive and transparent

We don’t wait for the perfect design. We will use our experience to start making the system we expect we will need, knowing that we can change it if our assumptions are wrong.

We inform our team what we are doing so those assumptions can be checked as part of the normal daily business of development. We don’t encourage grand reveals internally and going dark just increases the risk that we’ll turn up with something we don’t really want.

Estimates are just informed guesses, sometime well informed, sometimes stabs in the dark. No-one is expected to be right and estimates are only to be used as a guide to help with scheduling and scoping decisions. We don’t want anyone to lower an estimate to try and please someone else - if you think something is going to take a long time, say so. Expect that if there’s a difference of opinion, that we will discuss that difference. To reconcile misaligned assumptions is a really good thing!

Always playable

The build always needs to be playable so we can review and iterate. Fuse believes the truth of the product is in the software.

This means we need to submit quality code that has been tested before it's been submitted. The systems we create underpin the runtime development of the game. To make sure content and design changes can be tested and reviewed, the game needs to be stable. To test effectively, our engineers need to be aware of what areas are being worked on by the team at large.

Systems also need to be somewhat performant to be enabled by default. Non-performant systems might be available behind debug switches.

Guidelines not rules
  • Our guidelines exist because they aim to make our lives easier. We target:
  • Preventing known mistakes. 
  • Promoting efficient, effective workflows. 
  • Enabling tooling that can make assumptions.
BUT! There can be justified reasons not to follow the guidelines - as long as you make it clear why you take that decision

Build it for now, refactor it for next time

The priority for a system is always the current shipping game. Prefer to solve concrete issues and make your systems cheap to change later, don't solve all hypothetical future problems. Prefer to assert if an unexpected/unsupported input is encountered, don't make your code too defensive to handle all possible scenarios.

You can think about what ways a system might be extended and can build things in a way that makes that easier, but you don't need to actually build the extensible system now if it's not yet needed. It might never be!

Don't gild the lily. When something is good enough, move on to the next great opportunity.

Always debuggable

Every system we make must be able to be debugged in an effective manner. When things go wrong, we need to be able to diagnose the cause. 

Logging pertinent information is critical - any logging is usually better than none. Try to log the causes of behaviour rather than just the symptoms so those symptoms have the context they need .e.g. log that Event A is starting and is trying to spawn X vehicles. We can limit log information behind verbosity settings, so prefer to overcommunicate and then filter that back if it becomes noisy.

Visual debugging is highly encouraged as it can highlight issues difficult to pick up from logs and breakpoints. Visual logging is often useful to communicate an issue to people outside the craft or domain.

Use ensure() and check() calls to catch bad state - especially inputs. It's usually easier to fix an issue when it fails early and when it fails hard.

Audit trails are highly encourage for any pipelines, asynchronous sequences and other multi-frame updates. It is often hard to understand why something has gone wrong when you are missing information about the state of the pipeline along the way.

Don't put up with mediocrity

Our users are developers as well as our players. If the tools are bad, we should fix the tools. Frustrated developers tend to make worse games.

We want key systems to inspire, not just function. We look for opportunities to both excite our players as well as to inspire our designers/artists/fellow engineers. It is impractical to expect everything to be best in class, but we should strive for technical excellence where it matters and execution excellence everywhere else.

Be curious

Understanding more about how things work usually means we can make more effective solutions

Learning is a useful artefact - we don't expect people to have to make up a reason to do work or investigations if the benefit is an increase in knowledge

What’s in it for you? Glad you asked!

We realise it takes world-class people to make world-class games, so we offer competitive compensation packages and a culture that thrives off of creativity and individuality. 

We know we’re making games differently now and understand that family is important so offer flexible working hours and a hybrid culture that allows everyone to find the right work/life balance.

In addition, we want people to grow and expand their horizons so we promote a culture of learning and offer opportunities for people to learn new skills.

We thought you might also want to know:

More about our studio:             
Where are we:                         Guildford, Surrey, UK
APPLY

Similar Jobs

Epic Games - UI Programmer

Epic Games

Montreal, Quebec, Canada (On-Site)
2 Hours ago
PhonePe - Software Engineer - Backend (7-10 years), Pune

PhonePe

Bengaluru, Karnataka, India (On-Site)
3 Months ago
ByteDance - Software Engineer Intern (Applied Machine Learning-Enterprise) - 2025 Summer/Fall (PhD)

ByteDance

San Jose, California, United States (On-Site)
3 Months ago
ByteDance - Machine Learning Engineer Intern (Knowledge Graph) - 2024 Start (PhD)

ByteDance

Seattle, Washington, United States (On-Site)
3 Months ago
ByteDance - Software Development Engineer - Database NoSQL Redis

ByteDance

Seattle, Washington, United States (On-Site)
1 Month ago
Digital Extremes - Senior Graphics Programmer

Digital Extremes

London, Ontario, Canada (Remote)
3 Months ago
Maverick Games - Senior Rendering Engineer

Maverick Games

Warwick, England, United Kingdom (On-Site)
1 Month ago
Epic Games - Senior ML Developer

Epic Games

Montreal, Quebec, Canada (On-Site)
1 Month ago
Keen Software House - Senior Render Programmer

Keen Software House

Prague, Prague, Czechia (Remote)
2 Weeks ago
Epic Games - Senior Mobile Platform Engineer

Epic Games

Cary, North Carolina, United States (On-Site)
1 Month ago

Get notifed when new similar jobs are uploaded

Similar Skill Jobs

Rocket Werkz - GAME PROGRAMMER (UNREAL ENGINE)

Rocket Werkz

Auckland, Auckland, New Zealand (On-Site)
6 Months ago
Omnissa - Senior Member of Technical Staff (C++ Windows)

Omnissa

Chennai, Tamil Nadu, India (On-Site)
3 Months ago
Epic Games - Lead Engineer - Fortnite Online

Epic Games

Cary, North Carolina, United States (On-Site)
1 Month ago
Meta - Research Scientist Intern, Language and Multimodal Research for MetaAI (PhD)

Meta

New York, New York, United States (On-Site)
3 Months ago
SSC Technologies - Senior Contact Center Application Engineer

SSC Technologies

Illinois, United States (Remote)
1 Month ago
ION - Technical Support Analyst, Jersey City - 9781

ION

Jersey City, New Jersey, United States (On-Site)
4 Months ago
Playrix - Lead Unity Software Engineer (Gameplay)

Playrix

Ukraine (Remote)
4 Months ago
Fatshark AB - Test Automation Engineer

Fatshark AB

Stockholm, Stockholm County, Sweden (On-Site)
6 Months ago
PhonePe - Software Engineer (Backend, 5-8 Years) - Financial Services

PhonePe

Bengaluru, Karnataka, India (On-Site)
3 Months ago
Riot Games - Senior Software Engineer - 2XKO - Social

Riot Games

Sydney, New South Wales, Australia (On-Site)
5 Days ago

Get notifed when new similar jobs are uploaded

Jobs in England, United Kingdom

Rocksteady Studios - Senior Core Engine Programmer

Rocksteady Studios

London, England, United Kingdom (Hybrid)
14 Hours ago
Epic Games - Senior Marketing Performance Manager

Epic Games

London, England, United Kingdom (On-Site)
1 Month ago
Netflix - Pan-EMEA Communications Senior Manager

Netflix

London, England, United Kingdom (On-Site)
2 Weeks ago
Warner Bros Games - Technical Advertising Operations Manager EMEA

Warner Bros Games

London, England, United Kingdom (On-Site)
2 Months ago
Electronic Arts - Narrative Designer - FC

Electronic Arts

England, United Kingdom (Hybrid)
1 Month ago
Meta - AI Research Scientist - Generative AI Red Teaming (London or Paris)

Meta

London, England, United Kingdom (On-Site)
3 Months ago
Crunchyroll - Vice President, Regional Marketing

Crunchyroll

London, England, United Kingdom (Hybrid)
3 Months ago
Fabric - Applied Researcher, Cryptography Proof Systems

Fabric

London, England, United Kingdom (Remote)
4 Months ago
Lighthouse Games - Services Engineer

Lighthouse Games

England, United Kingdom (Hybrid)
2 Weeks ago
Blue Zoo Animation Studio - 3D Character Animator - Entry Level

Blue Zoo Animation Studio

London, England, United Kingdom (Hybrid)
1 Month ago

Get notifed when new similar jobs are uploaded

Rendering Jobs

Epic Games - Rendering Programmer

Epic Games

Montreal, Quebec, Canada (On-Site)
1 Month ago
Obsidian Entertainment - Graphics Programmer (Staff/Senior)

Obsidian Entertainment

Canada (On-Site)
6 Months ago
PlayStation Global - Senior Principal Programmer - PlayStation®5 Rendering API

PlayStation Global

London, England, United Kingdom (On-Site)
3 Months ago
SmileGate - [차세대 게임] TA 담당

SmileGate

Seongnam-si, Gyeonggi-do, South Korea (On-Site)
1 Month ago
Virtuos - Lead Engine / Rendering Developer

Virtuos

France (Hybrid)
4 Months ago
ByteDance - Senior Software Engineer, Cross Platform Application

ByteDance

San Jose, California, United States (On-Site)
3 Months ago
Epic Games - Senior Engine Programmer, Framework

Epic Games

Montreal, Quebec, Canada (On-Site)
1 Month ago
Epic Games - Senior Game Systems Programmer

Epic Games

(On-Site)
1 Month ago
ByteDance - Senior Software Engineer, Cross Platform Application

ByteDance

Seattle, Washington, United States (On-Site)
3 Months ago
Epic Games - Research Engineer

Epic Games

London, England, United Kingdom (On-Site)
3 Weeks ago

Get notifed when new similar jobs are uploaded