You can't design software you don't work on

Engineers clap back: Gatekeeping or hard-earned wisdom

TLDR: The piece says only engineers deep in the code should design big systems. The comments exploded: some called that gatekeeping, others said seasoned architects can design without coding, and moderates argued generic guidelines help new projects—crucial because it decides who gets to shape tech decisions.

An essay claiming “only engineers who work on a system can design it” set off a comment-section cage match. Fans of the piece cheered the author’s focus on real-world constraints, but critics shouted gatekeeping and called the article guilty of its own sin. One commenter snapped, “It’s generic advice that might not be appliable to specific situations,” while another fired back, “you absolutely can design a large application without touching the code.” The mood: spicy, divided, and very online.

In the middle, a chorus argued generic guidance still matters—if only to set direction and give teams shared language. The meme of the day was “the map is not the territory”, with brick emojis flying as people debated whether you need to “lay bricks” (write code) to draw the plans. A structural engineering analogy chimed in: great designers don’t place every brick, but they’ve been on-site and know how the mortar dries.

Pragmatists warned it’s unrealistic to cleanly split “architecture” from “implementation” because real requirements always get messier—cue the imaginary Amazon checkout drama. The hot take scoreboard: purists want hands-on designers, veterans insist experience can substitute, and moderates just want consistent, shared terms. Verdict: the comments stole the show, again.

Key Points

  • Design effectiveness in large systems depends on engineers with detailed, hands-on knowledge of the codebase.
  • Generic software design advice is typically not useful for practical decisions in established systems.
  • In large codebases, internal consistency and safety constraints often outweigh abstract notions of “good design.”
  • Productive design discussions are led by small groups of engineers familiar with concrete system details, not general principles.
  • Generic advice is useful for new projects and for tie-breaking among comparable concrete design options.

Hottest takes

“the map is not the territory” — skydhash
“It’s generic advice that might not be appliable to specific situations.” — narag
“you absolutely can design a large application without touching the code.” — austin-cheney
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.