How do you design firmware that must operate under strict performance, memory, and safety constraints?