Engineering for Software - How to Amplify Creativity
summary
Argues that software is an engineering problem of design and discovery not manufacturing, so teams must work iteratively, gather fast feedback, run experiments, be empirical and manage complexity; lists five design principles — modularity, abstraction, separation of concerns, loose coupling and cohesion — and shows how dependency injection plus TDD (red‑green‑refactor) makes code testable. Gives measured targets: CI feedback under five minutes, commit‑to‑releasable under an hour (versus a bank’s 103 days), uses deployment pipelines as the practical tool, and recommends writing tests first when using AI.
AI-written summary · about
chapters (16)
- 0:00Software engineering & creativity
- 1:24Development models shift
- 3:08Engineering vs manufacturing
- 5:43Exploration in engineering
- 8:12Iterative development principles
- 10:40Managing software complexity
- 11:23High-quality code hallmarks
- 13:08Test-driven design demo
- 15:12Learning & evidence-based decisions
- 16:36TDD as quality amplifier
- 20:49Modular design with DI
- 26:02Experimental work & failure
- 27:08Continuous delivery & feedback
- 30:19Continuous delivery state-of-art
- 32:45Adaptability defines quality
- 33:27AI in software development Q&A
related talks
01h 01mEngineering for Software - How to Amplify Creativity
47m‘Engineering' for Software - How to Amplify Creativity
57mEngineering for Software
55mEngineering for Software
37mEngineering for Software
30mEngineering in Overdrive: How to Thrive When Tech Evolution Goes Full Gas
38mSolving the Hard Problems
45mTaking Back "Software Engineering"
