Sorry if this is a naive question, but I haven't been able to find much advise other than "Game programmers need to know C++!"
For the past year I've been working at a start-up using Unity 3D and C#. I'd like to move to a larger studio and have been looking to apply as a gameplay programmer at a few different companies. However, all the positions I've found require "strong knowledge of C++."
My question is, why do you need to know C++ as a gameplay programmer? Correct me if I'm wrong, but from the research I've done the most popular engines use some kind of scripting language for gameplay programming, like UDK (UnrealScript), CryEngine (Lua/FlowGraph), and Unity (which treats C#/UnityScript as scripting languages by compiling them behind the scenes). Low-level things like actual engine programming use C++, but that's not really what I'm interested in.
So why does a gameplay programmer need to know C++? I know many large companies write their own engines, but are they that different from the ones publicly available like UDK which uses a scripting language? Or am I just confused about what a gameplay programmer actually does?
Also, as an aside, if anyone has any advice for transitioning from an indie start-up to a large studio, especially when my only game development experience is with Unity, it would be greatly appreciated!