> Markdown version of [/videos/1992-thoughts-on-modern-software-development-observations-from-a-21-year-journey?t=2867](https://www.wearedevelopers.com/videos/1992-thoughts-on-modern-software-development-observations-from-a-21-year-journey?t=2867). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Thoughts on (Modern?) Software Development - Observations From a 21-Year Journey Are AI tools creating 10x developers, or a dangerous 10x dependency? Uncover how cognitive biases and organizational culture truly shape modern software architecture in this 21-year retrospective. - **Speakers:** [Alex Thurow](https://www.wearedevelopers.com/@alex-thurow) - **Event:** World Congress 2026 Europe - Virtual Stage - **Published:** July 2, 2026 - **Duration:** 59:38 - **URL:** https://www.wearedevelopers.com/videos/1992-thoughts-on-modern-software-development-observations-from-a-21-year-journey ## Summary Drawing on observations from a 21-year career, this talk explores the inherent complexity of modern software development, reframing coding not as a deterministic science, but as a discipline continuously navigating incomplete requirements and shifting technology hype cycles. By dissecting concepts like essential versus accidental complexity and Conway's Law, the presentation illustrates how organizational culture directly shapes technical architecture and codebase health. At the core of the discussion is the human element of software engineering. Leveraging the Dreyfus model of skill acquisition, the speaker contrasts the rigid, rule-based approach of novices with the intuition and focused context of true experts. Cognitive limitations—particularly the curse of knowledge, automation bias, and anchoring bias—are exposed as hidden obstacles that regularly subvert rational engineering decisions and team communication. These human vulnerabilities are especially concerning in the era of artificial intelligence and large language models. The speaker challenges the promise of the "10x developer," warning instead of a growing "10x dependency" on tools like GitHub Copilot. If junior developers outsource foundational problem-solving to AI, they miss crucial learning milestones, risking an industry-wide expertise deficit. Furthermore, relying on AI models threatens to inject hallucinated, inherently average, and potentially "groomed" code into mission-critical systems. Ultimately, solving complex problems requires prioritizing cognitive load management and psychological safety over chasing the latest technological trends. Engineering teams are encouraged to champion simplicity and resist overly clever, hype-driven architectures, remembering that "technology does not solve problems; humans do." **Keywords:** software development culture, essential complexity, accidental complexity, dreyfus model of skill acquisition, cognitive biases, automation bias, anchoring bias, hype-driven development, github copilot dependency, large language models, llm grooming, conway's law, agile methodologies, cognitive load management, code complexity architectures, ai code generation risks ## Chapters 1. **Charting a professional journey through software development decades** (00:00) — Reflections on transitioning from a traditional developer to a technical mentor and culture consultant. 1. **Navigating essential and accidental complexity in software engineering** (02:26) — How inherent domain difficulties combine with technical implementation choices to exponentially shape project complexity. 1. **Overcoming the illusion of competence in software engineering** (04:21) — Recognizing the widening gap between perceived expertise and actual foundational knowledge as careers progress. 1. **Applying the Dreyfus model to developer skill acquisition** (09:03) — Transitioning from rigid rule-based learning to context-driven intuition changes how developers perceive codebases safely. 1. **Mitigating hardwired cognitive biases in technical decision making** (16:24) — How systematic irrationality and the curse of knowledge silently undermine team communication and architectural planning. 1. **Balancing contradictory project requirements and external developer stressors** (18:32) — Managing the tension between rapid delivery expectations and long-term codebase maintainability limits internal friction. 1. **Reframing software estimates and requirements as imprecise guesswork** (21:26) — Acknowledging human imprecision helps teams navigate unpredictable business logic and unreliable requirements gathering. 1. **Understanding organizational culture and historical pressure in codebases** (26:00) — Recognizing that confusing legacy design often heavily reflects the severe constraints and culture that produced it. 1. **Evaluating hype cycles in modern software architecture trends** (31:05) — Avoiding repetitive implementation failures requires critically assessing the historical context behind new overarching systemic paradigms. 1. **Navigating cognitive biases and code quality with language models** (33:28) — Over-relying on code generation assistants risks introducing hallucinations and sacrificing deep foundational problem-solving skills. 1. **Managing subjective micro challenges and codebase complexity zones** (41:39) — Steering developers away from dangerously freakish implementations preserves codebase simplicity and long-term team maintenance. 1. **Confronting macro industry changes and the developer labor shortage** (47:47) — Addressing the perpetual inexperience dilemma ensures junior engineers possess viable pathways to achieve senior capabilities. 1. **Prioritizing minimal cleverness to reduce eventual infrastructure confusion** (52:12) — Architecting straightforward implementation patterns prevents cascading failures when troubleshooting highly stressful production incidents. 1. **Structuring modern software practices to manage cognitive overload** (56:56) — Nudging workflows toward better human interaction and manageable complexity limits dead ends in engineering projects. ## Related Moments - [Identifying core challenges in modern software development](https://www.wearedevelopers.com/videos/1023-from-zero-to-hero-launch-manage-your-cloud-apps-with-free-openshift-red-hat-developer-hub) (from "From Zero to Hero: Launch & Manage Your Cloud Apps with Free OpenShift & Red Hat Developer Hub") - [Preserving the joy and curiosity of human coding](https://www.wearedevelopers.com/videos/1764-wearedevelopers-live-web-scraping-agents-actors-and-more) (from "WeAreDevelopers LIVE – Web Scraping, Agents, Actors and more") - [Rethinking software engineering processes beyond human constraints](https://www.wearedevelopers.com/videos/1830-wearedevelopers-live-speculaitions) (from "WeAreDevelopers LIVE - SpeculAItions") - [Addressing developer burnout and the impact of artificial intelligence](https://www.wearedevelopers.com/videos/1504-cracking-the-code-to-tech-team-satisfaction) (from "Cracking the Code to Tech Team Satisfaction") - [Understanding software development as a deeply human activity](https://www.wearedevelopers.com/videos/721-the-quest-for-better-software) (from "The QUEST for Better Software") - [Overcoming the human challenges of software maintenance](https://www.wearedevelopers.com/videos/917-coffee-with-developers-robby-russell) (from "Coffee with Developers - Robby Russell") ## Related Articles - [What is Software Engineering in the Age of AI?](https://www.wearedevelopers.com/magazine/640-what-is-software-engineering-in-the-age-of-ai) - [Exploring AI: Opportunities and Risks for Developers](https://www.wearedevelopers.com/magazine/522-exploring-ai-opportunities-and-risks-for-developers) - [Transforming Software Development: The Role of AI and Developer Tools](https://www.wearedevelopers.com/magazine/527-transforming-software-development-the-role-of-ai-and-developer-tools) - [Navigating the AI Shift](https://www.wearedevelopers.com/magazine/629-navigating-the-ai-shift) ## Related Jobs - [Principal Software Engineer, Enterprise AI Platform](https://www.wearedevelopers.com/jobs/ext/1467292-principal-software-engineer-enterprise-ai-platform) at **GitHub** - [Staff Developer Advocate, GitHub Security Lab](https://www.wearedevelopers.com/jobs/ext/1921051-staff-developer-advocate-github-security-lab) at **GitHub** - [Senior Software Engineer](https://www.wearedevelopers.com/jobs/ext/15942-senior-software-engineer) at **GitHub** - [Tribe Lead - ( Software) Engineering Centre of Excllence](https://www.wearedevelopers.com/jobs/ext/1475530-tribe-lead-software-engineering-centre-of-excllence) at **SD Worx** - [Staff Software Engineer, Copilot Experiences](https://www.wearedevelopers.com/jobs/ext/164361-staff-software-engineer-copilot-experiences) at **GitHub** - [Principal Software Engineer, Database Infrastructure](https://www.wearedevelopers.com/jobs/ext/1465908-principal-software-engineer-database-infrastructure) at **GitHub**