Rendering Engineer

58 Minutes 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

W Beyond   - Embedded C

W Beyond

Bengaluru, Karnataka, India (On-Site)
4 Months ago
Fatshark AB - Senior Backend Developer

Fatshark AB

Stockholm, Stockholm County, Sweden (On-Site)
3 Days ago
Riot Games - Staff Software Engineer - VALORANT, Expressions Engineering

Riot Games

Dublin, County Dublin, Ireland (On-Site)
3 Months ago
Netflix - Software Engineer (L4) - Telemetry Collections

Netflix

United States (On-Site)
3 Months ago
Media Molecule - Senior Programmer

Media Molecule

London, England, United Kingdom (On-Site)
3 Months ago
Final Strike Games - Virtual Reality Rendering Engineer

Final Strike Games

Montreal, Quebec, Canada (On-Site)
1 Month ago
Stardock - Senior Graphics Engineer

Stardock

Plymouth, Michigan, United States (On-Site)
6 Months ago
Electronic Arts - Senior Rendering Engineer (C++) - American Football

Electronic Arts

Madrid, Community Of Madrid, Spain (On-Site)
4 Months ago
Ubisoft - Render Programmer [Snowdrop]

Ubisoft

Bucharest, Bucharest, Romania (Hybrid)
3 Months ago
Epic Games - Rendering Programmer

Epic Games

(On-Site)
1 Month ago

Get notifed when new similar jobs are uploaded

Similar Skill Jobs

Microsoft - Senior Hardware Engineer

Microsoft

Bengaluru, Karnataka, India (On-Site)
1 Month ago
Activision - Expert Engineer, Accounts and Authentication

Activision

Dublin, County Dublin, Ireland (Hybrid)
3 Months ago
Game Boost - Tech Artist

Game Boost

Stockholm, Stockholm County, Sweden (Hybrid)
9 Hours ago
Microsoft - Research Intern - Audio and Acoustics

Microsoft

Redmond, Washington, United States (On-Site)
1 Month ago
Zoox - HD Mapping Internship/Co-op

Zoox

Foster City, California, United States (On-Site)
3 Months ago
ION - Software Developer/Engineer - Graduate Development Program

ION

Collecchio, Emilia-Romagna, Italy (On-Site)
4 Months ago
Playrix - Lead C++ Software Engineer (Gameplay)

Playrix

Ireland (Remote)
3 Months ago
Aptiv - Senior Software Engineer- Algo Testing

Aptiv

Bengaluru, Karnataka, India (On-Site)
6 Months ago
ByteDance - Algorithm Optimization Specialist / Machine Learning Engineer- Pico- San Jose

ByteDance

San Jose, California, United States (On-Site)
2 Months ago
Google - Early Career Software Engineer, People with Disabilities

Google

São Paulo, State Of São Paulo, Brazil (On-Site)
3 Months ago

Get notifed when new similar jobs are uploaded

Jobs in England, United Kingdom

Eleven Labs - FullStack Engineer (Frontend Leaning)

Eleven Labs

London, England, United Kingdom (Remote)
6 Months ago
Pragma - Game Services Engineer - Co-Dev

Pragma

United Kingdom (Remote)
2 Days ago
Unity - Senior Partner Engineer - EMEA

Unity

Brighton And Hove, England, United Kingdom (Hybrid)
2 Months ago
Keywords Studios (Player Support) - Mid-Lead Game Designers

Keywords Studios (Player Support)

Portsmouth, England, United Kingdom (Hybrid)
2 Days ago
Cloud Imperium Games - Props Artist

Cloud Imperium Games

Manchester, England, United Kingdom (On-Site)
2 Months ago
Assystems - Mechanical Engineer

Assystems

Derby, England, United Kingdom (Hybrid)
3 Months ago
Bally's Interactive - Fraud & Risk Team Leader

Bally's Interactive

Gibraltar, England, United Kingdom (On-Site)
1 Day ago
Playtech - Platform Engineer

Playtech

London, England, United Kingdom (On_site)
1 Month ago
Assystems - Civil Engineer

Assystems

Bristol, England, United Kingdom (On-Site)
3 Months ago
Assystems - Senior Civil Engineer

Assystems

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

Get notifed when new similar jobs are uploaded

Rendering Jobs

Epic Games - Senior Game Systems Programmer

Epic Games

(On-Site)
1 Month ago
Jagex - Senior Engine Engineer

Jagex

Cambridge, England, United Kingdom (On-Site)
1 Month ago
Next Level Games - Rendering Engineer

Next Level Games

Vancouver, British Columbia, Canada (Hybrid)
3 Months ago
Techland - Rendering Programmer

Techland

Wrocław, Lower Silesian Voivodeship, Poland (On-Site)
2 Months ago
Keen Software House - Senior Render Programmer

Keen Software House

Prague, Prague, Czechia (Remote)
1 Week ago
Keen Software House - Senior Render Programmer

Keen Software House

Prague, Prague, Czechia (Remote)
1 Week ago
Keen Software House - Senior Render Programmer

Keen Software House

Prague, Prague, Czechia (Remote)
1 Week ago
PlayStation Global - Senior Principal Programmer - PlayStation®5 Rendering API

PlayStation Global

London, England, United Kingdom (On-Site)
3 Months ago
N-iX - Senior Unreal Engine/C++ Engineer

N-iX

United Kingdom (Remote)
1 Week ago
2K - Senior Rendering Engineer

2K

San Mateo, California, United States (On-Site)
4 Months ago

Get notifed when new similar jobs are uploaded