Software Engineer
Role: Software Engineer
Department: Engineering
Location: UK - London
Reports into: Lead Software Engineer
About the role:
disguise is looking for a mid-level software engineer who considers themselves a generalist programmer. You will work in a small, highly focused team that is light on process and hands-on by default, writing software for demanding end users in situations where failure is visible to an audience of thousands.
Our products design, sequence and control live productions across film and TV, broadcast, and live events. The code you write runs in front of an audience, often with no second take.
What you will do:
Own delivery of projects: customer projects, large features and internal tooling
Build and help specify new features, working with Product to shape them
Improve, support and maintain existing areas of the product
Write testable, maintainable code, and the unit tests that prove it
Debug methodically, using tools and logging to establish root cause rather than symptom
Review the work of others constructively, explaining the reasoning behind a correction
Work closely with Support so they understand issues in the codebase
Share knowledge of your areas with the wider team
Essential experience we are looking for:
3+ years experience writing C++ in a professional environment
Experience releasing at least one commercial software product
Experience working in a team to create code, review code and fix bugs
Desirables:
Background in high performance, real-time systems
Experience of Visual Studio, Python, Windows, DirectX
Graphics development, Unreal Engine 5, or games industry experience
Media server experience
Skills, behaviour and values we are looking for:
You will have clear communication, both verbal and written
You will have excellent attention to detail, when writing and reviewing code
You will enjoy problem solving complex issues with a curious and inquisitive mind
You will be technically competent and interested in building out a product (ie, what the product should do, what else can make the product great)
You will be collaborative, working with the team to build a product and knowledge share
You will be pragmatic in the way you approach writing code
You will be passionate to expand your knowledge
You will have the resilience to keep experimenting