Skip to main content

On This Page

Humans in the Loop: Engineering Leadership in a Chaotic Industry

2 min read
Share

These articles are AI-generated summaries. Please check the original sources for full details.

Transcript

Michelle Brush discussed the evolving landscape of engineering leadership in the age of AI/ML, highlighting the counterintuitive effects of automation on job demand and complexity. She argues that while AI promises increased productivity, the Jevons Paradox will ultimately drive more software development, while the Ironies of Automation will make the remaining engineering work harder.

Why This Matters

The current excitement around AI/ML often overlooks the fundamental reality that automating tasks doesn’t eliminate complexity – it shifts it. While automation can handle routine tasks, it creates new challenges around monitoring, maintenance, and responding to failures in those automated systems. This increased complexity, coupled with the potential for rapid system growth, poses a significant risk of outages and escalating costs if not proactively addressed.

Key Insights

  • Jevons Paradox: Increased efficiency in resource use leads to increased demand for that resource (Brush, 2025).
  • Ironies of Automation: Automating parts of a job makes the remaining human work more difficult and requires higher-level skills (Bainbridge, 1987).
  • Shift in Skillset: The focus is moving from writing code to understanding systems, managing complexity, and enabling effective automation, necessitating a renewed investment in junior engineering talent.

Working Example

# Example: Simplified Latency Injection Test (Conceptual)
import time
import random

def call_api(data):
    """Simulates an API call with potential latency."""
    latency = random.uniform(0, 0.5)  # Introduce random latency up to 0.5 seconds
    time.sleep(latency)
    return f"API Response for: {data}"

def process_data(data):
    """Processes data using the API."""
    result = call_api(data)
    print(result)

# Simulate processing multiple data points
for i in range(5):
    process_data(f"Data Point {i+1}")

(This example illustrates the concept of injecting latency to test system resilience, as discussed in the talk. A real-world implementation would be far more sophisticated.)

Practical Applications

  • Netflix: Uses Chaos Engineering principles (intentional failures) to proactively identify and address weaknesses in their distributed systems, ensuring resilience.
  • Pitfall: Over-reliance on automation without adequate monitoring and fallback mechanisms can lead to cascading failures when the automation malfunctions, increasing recovery time and cost.

References:

Continue reading

Next article

Rejection: The Gateway to Growth

Related Content