In my opinion, an SRE should know enough coding to think and work like an engineer rather than just someone writing scripts, but they don’t necessarily need to match a full-time software developer in deep application development. At a minimum, strong scripting skills in languages like Python or Bash are essential for automating tasks, building tooling, and improving system reliability. However, in many modern environments, especially at scale, SREs often need to go beyond basic scripting and be comfortable reading, modifying, and contributing to production-level code, since they frequently work on automation services, observability tools, and reliability improvements. So the ideal level is somewhere between advanced scripting and software engineering, depending on the organization’s maturity. In practice, the more complex and distributed the systems are, the closer an SRE’s coding skillset moves toward a developer’s level, because automation and reliability engineering increasingly rely on building robust software solutions rather than simple scripts.