Overview of DO repeat yourself! (Interview)
This episode of The Changelog features Sean Geddes (staff software engineer at GitHub, based in Melbourne) in a wide-ranging conversation about engineering craft, blogging, organizational influence, code review, software taste, mental fitness, and the growing role of AI/agents. Sean explains how and why senior engineers should engage in organizational politics, how to avoid “worry-driven development,” what constitutes “good taste” in engineering, how to influence product/technical direction at scale, and practical tips for writing widely read technical posts.
Episode metadata
- Guest: Sean Gedeke (staff engineer at GitHub; prolific tech blogger)
- Host: Jared (The Changelog)
- Format: Interview, ~long-form discussion
- Core themes: influence inside large orgs, blogging strategy, code review, taste & values, mental fitness, AI/agents impact
Key topics covered
- Blogging and audience-building: habits, drafts, tone, how to reach Hacker News
- Organizational politics: why senior engineers should engage and how to influence locally
- Code review best practices and common mistakes
- Taste in software engineering: mapping taste → values → fit to project
- Emotional/mental fitness: avoiding worry-driven development and the productivity impact of emotional regulation
- AI and agents: where code generation helps, what skills gain value (specs, review, taste), and tooling improvements (tool-calling, situational awareness)
- Leverage and “getting the main thing right”: impact vs. hours worked
Main takeaways
- Senior engineers must be involved in organizational politics. Contributing technical judgment to decisions is part of the job; opt-out is a dereliction of duty.
- Confidence matters: be willing to represent the best technical answer even when uncertain — organizations need decisive guidance.
- Influence is often local. At large companies you rarely steer the whole company; instead prepare multiple proposals and deploy them when timing is favorable (e.g., after an incident when leadership is prioritizing that domain).
- Good blog posts come from having “something to say” (experience + point of view) and iterative practice; drafts are idea incubators.
- Code review value is mostly high-level: focus on system-level gaps and a small number of meaningful comments (aim for ~6 or fewer), not dozens of low-level nitpicks.
- “Taste” is best understood as a set of engineering values (reliability, readability, performance, etc.); good taste = values fit to the project and the ability to flex those values to the situation.
- Emotional regulation and mental fitness strongly impact engineering effectiveness. Worry-driven development makes engineers avoid risk and under-contribute.
- AI agents are changing what technical skills matter: execution-by-hand declines for some tasks, while taste, spec-writing, review, and tooling (tool-calling) increase in importance.
- High leverage work often outweighs hours. Doing the “main thing” right is frequently more valuable than grinding longer in the wrong direction.
Notable quotes & insights
- “Senior engineers specifically ought to be heavily involved in the politics of their organization.”
- “A huge part of the job is being more confident than you feel internally.”
- Good taste = “an expression of your values” and the ability to fit those values to the project.
- “The most interesting and useful comments you can give in a code review are not about the diff — they’re about the code that wasn’t written.”
- On AI agents: tooling that lets models call reliable tools is a huge multiplier; you don’t need the model to be good at everything if it can call better tools for specialized tasks.
Practical action items & recommendations
- Influence in large orgs:
- Build a “stable of ideas”: keep ~10–15 short proposals ready.
- Wait for the right moment (leadership focus, incident aftermath) to champion the proposal.
- Improve your code reviews:
- Limit comments — target ~6 meaningful items.
- Prioritize system-level suggestions: point out missing integrations, existing higher-level solutions, or architectural alternatives rather than line-level nitpicks.
- Strengthen taste & decision-making:
- Write down your engineering values for a project (e.g., latency, reliability, maintainability) and check trade-offs against them.
- Practice adapting values to the product context (small app vs. large platform).
- Blog for impact:
- Write from experience — “have something to say.”
- Use a tone that’s readable and slightly academic; craft titles that are punchy but not purely clickbait.
- Aim to attract amplifiers (readers who will upvote/reshare) so the post reaches quality readers.
- Work habits & leverage:
- Focus efforts on the highest-leverage tasks (one genuinely useful contribution can beat many low-value hours).
- Don’t mistake long hours for right direction — assess impact and adjust.
- Mental fitness:
- Learn to spot worry-driven avoidance (deploy fear, over-caution).
- Build emotional regulation skills; these matter as much as technical skill in career growth.
- AI & agents:
- Start using agents where they are effective, but retain ownership of prompts/specs and review outputs carefully.
- Consider investment in tooling that gives agents situational awareness and reliable tool-calling.
Sean’s recommended/mentioned posts (good follow-ups)
- How to ship projects (post that hit Hacker News; about shipping ≠ just closing JIRA)
- Avoiding Worry-Driven Development
- What is Good Taste in Software Engineering
- 95% of projects fail — context on base rates for large enterprise IT projects
- Mistakes I See Engineers Making in Their Code Reviews
- How I Influence Tech Company Politics as a Staff Software Engineer
- (Also mentioned: “Impressing People You Don’t Respect” — advice on audience & tone)
Why this episode matters
- Practical leadership: Sean gives concrete, repeatable tactics for influencing technical direction without needing executive authority.
- Career signal: Emphasizes non-technical but career-defining skills — confidence, persuasion, emotional regulation, and system-level thinking.
- Near-future relevance: The discussion about AI/agents and taste helps frame which engineering skills will retain or gain value as automation accelerates.
- Actionable takeaways: clear, implementable steps for code reviewers, individual contributors aiming for influence, and technical writers seeking reach.
If you want a quick checklist to apply today:
- Write down 5 project-level values and verify one active decision aligns with them.
- Prep 3 short proposals for near-term problems (1 paragraph each).
- Next code review: leave at most 6 comments and at least one system-level suggestion.
- Draft one blog post from a recent irritation or corrective insight — publish it.
