Experience designing and maintaining complex/large/growing systems Ability to think about edge cases, failure modes, bottlenecks, migrations, releases, and metrics when reviewing designs or code Love for debugging and finding the root cause of production issues Proactive approach to fixing broken systems or suggesting improvements Ensure systems have sufficient metrics for proper functioning