Remotery

Performance Engineer

Posted 1 hour ago

This is a fully remote position, open to applicants in Canada.

πŸ“‹ Description

β€’ Lead the development of essential systems and performance initiatives from the planning and design stages through to implementation and optimization.

β€’ Collaborate closely with engineers and cross-functional teams, providing technical leadership and ownership of features.

β€’ CPU & Game Thread Optimization (~25%): Analyze and enhance the game thread, render thread, and RHI thread in Unreal Engine β€” identify cross-thread bottlenecks, tick overhead, and inefficiencies in the task graph.

β€’ Troubleshoot and resolve hitching issues: address garbage collection pauses, streaming stalls, async loading conflicts, and spikes in physics simulation.

β€’ Minimize tick overhead: identify UObjects and ActorComponents with unnecessary tick enabled, excessive work in critical paths, and incorrect tick group assignments.

β€’ Optimize gameplay and engine code at the C++ level β€” not only profiling but also implementing and deploying the fixes.

β€’ Implement custom profiling markers (SCOPE_CYCLE_COUNTER, CSV_SCOPED_TIMING_STAT, custom Unreal Insights channels) for ongoing regression detection.

β€’ GPU & Rendering Pipeline Optimization (~25%): Analyze rendering performance using RenderDoc, PIX, NSight, Xcode GPU Frame Capture, and Unreal's GPU Visualiser β€” isolate draw call overhead, overdraw, shader complexity, and GPU memory bandwidth.

β€’ Collaborate with the rendering team to improve material pipelines: reduce shader permutations, tune LOD, optimize occlusion culling, and enhance distance field shadows.

β€’ Identify and alleviate GPU memory pressure: manage texture streaming configurations, render target pooling, and VRAM budget per platform.

β€’ Possess a deep understanding of rendering architecture to distinguish between CPU-bound, GPU-bound, and bandwidth-bound frames and implement the correct fixes.

β€’ Address platform-specific GPU constraints: recognize the significant differences in GPU architecture between PS5/Xbox Series and PC; be aware of the unique thermal and bandwidth profiles of mobile (Adreno, Mali, Apple GPU).

β€’ Memory Profiling & Leak Detection (~20%): Ensure memory budget compliance on client projects: monitor resident set size, texture memory, audio memory, and engine overhead against platform limits.

β€’ Detect and eliminate memory leaks in C++ using automated tools (ASan, Valgrind on non-console platforms, custom allocator hooks) and Unreal's LLM (Low-Level Memory tracker).

β€’ Manage memory fragmentation: comprehend pooled allocators, custom memory arenas, and when Unreal's default allocation strategy leads to fragmentation during prolonged sessions.

β€’ Console memory challenges are particularly demanding: operate within fixed RAM ceilings without swap capabilities. Experience in shipping under these constraints is essential.

β€’ Develop memory regression tests that run in CI β€” ensuring ongoing compliance, not just one-time snapshots.

β€’ Networking / Latency Diagnostics (~10%): Analyze and optimize Unreal's replication system: identify bandwidth-heavy actors and components, adjust replication frequency, and prioritize replication effectively under load.

β€’ Assess client-server latency: differentiate network latency from server frame time and client simulation costs β€” do not conflate the two.

β€’ Familiarity with NetStat, Unreal's network profiler, and packet-level capture when necessary.

β€’ Scope: support multiplayer engagements where networking poses a performance challenge β€” not the primary focus on pure networking architecture.

β€’ Profiling Tool Development & Automation (~20%): Create internal profiling tools in C++ (UE plugins) and Python β€” automate performance validation scripts, integrate regression detection with CI, and establish custom Unreal Insights data channels.

β€’ Write automated performance regression tests: capture baselines, set threshold alerts, and visualize trends β€” ensuring regressions are detected during the build process, not during client reviews.

β€’ Enhance developer-facing profiling UX: simplify the process for other engineers to identify their own bottlenecks without requiring specialist support.

β€’ Document profiling methodologies and tool usage: enable other engineers to replicate analyses without the need for knowledge transfer sessions.


⛳️ Requirements

β€’ A minimum of 5 years of professional game engineering experience, with at least 3 years in a dedicated performance, engine, or low-level systems role.

β€’ At least 2 commercially released titles where performance was a clearly defined area of ownership β€” not a general engineering role with some profiling involvement.

β€’ Proficiency in C++ at a deep level: understand memory layout, cache efficiency, branch prediction, SIMD, and the impact of compiler optimization decisions on runtime behavior.

β€’ Expertise in Unreal Engine 5 profiling: fluent in Unreal Insights, Stat commands, LLM, and GPU Visualiser β€” not just familiar but experienced in using them to identify real problems in actual projects.

β€’ Cross-platform experience: have shipped on at least two types of platforms (PC + console, or console + mobile) and comprehend the distinct constraint profiles.

β€’ Proficient in Python: able to write automation scripts, integrate with CI, and process data for performance telemetry β€” not a Python developer but capable of handling Python-related tasks.

β€’ Structural fix mindset: capable of profiling, identifying root causes, and implementing C++ fixes. Does not stop at merely providing recommendations.

β€’ Able to articulate a performance issue to a gameplay engineer or producer without requiring them to understand the intricacies of the GPU pipeline.

β€’ **Preferred**

β€’ Experience with console certification performance submissions: has prepared and successfully passed performance gates for Sony/Microsoft.

β€’ Mobile performance experience on Android (Adreno/Mali/Dimensity) and/or iOS (Apple Silicon GPU) β€” knowledgeable about thermal throttling, tiling architecture, and bandwidth constraints.

β€’ Experience with custom allocator or memory pool implementations in C++.

β€’ Knowledge of shader authoring: HLSL/GLSL fluency sufficient to read shaders and identify unnecessary ALU or texture sampling costs.

β€’ Familiarity with Tracy, Optick, or custom in-house profiling frameworks beyond Unreal's built-in tools.

β€’ Experience optimizing Nanite, Lumen, or other UE5-specific rendering features at an engine-level depth.


🏝️ Benefits

β€’ This is a full-time employment position offering standard benefits in the province of Quebec.

People also viewed

Zelis1 hour ago

Cost Engineer

US flagMassachusetts OnlyFull-timeEngineer$95k – $120.7k/year
ApplyView job
Resilient Co.1 hour ago

Okta Engineer

AR flagArgentina OnlyFreelanceEngineer
ApplyView job
OpenRouter1 hour ago

Forward Deployed Engineer

US flagUnited States OnlyFull-timeEngineer
ApplyView job
Avenga1 hour ago

Performance Engineer, JMeter, K6

PL flagPoland OnlyFull-timeEngineer
ApplyView job
Endava1 hour ago

IAM Engineer – PingFed

US flagUnited States OnlyFull-timeEngineer
ApplyView job
Thrivent1 hour ago

Senior Engineer

US flagWisconsin OnlyFull-timeEngineer$104.1k – $140.8k/year
ApplyView job

Never miss a great job!

Get handpicked remote jobs straight to your inbox weekly.

Trusted by 7,400+ designers