I am maintaining this list actively. I work day to day in software engineering where all everyone talks about is AI and it's impact. ### Biases I am anti-AI when it comes to creative arts, music, entertainment etc. I am generally middle of the road when it comes to AI use for productivity. I read AI research papers, test out AI tools, and experiment with coding agents at work to give myself the opportunity of a fair assessment. ## Things AI Agents are contributing to software engineering: - Generating [[AI Agents are great for tedious programming tasks|trivial and tedious]] code. - Greatly improving [intellisense](https://code.visualstudio.com/docs/editing/intellisense). - Maintaining dependencies. - Maintaining and configuring CI pipelines, automation and bash scripts etc. - Providing decent human-readable insights into stacktraces that then help me figure out a bug quicker. (Note - not actually fixing the bug itself or figuring it out). - Saving ~10% of the time it took me to write some non-trivial code by offering me suggestions on what I might want to type next. - Saving ~30% of my time doing some refactoring. - Shortcutting documentation and note taking, particularly with incidents. ## Things AI Agents are not solving for software engineering: - Working well with technical people. - Working well with non-technical people. - The inertia of big organisations. - Co-ordinating and prioritising roadmaps. - Making the hard decisions of what we work on now versus what we drop. - Discovering the most valuable solution to a user's problem. - Discovering the most pragmatic solution to a user's problem. - Figuring out what "pragmatic solution" means within the context of the tech stack, code, problem space, stakeholder appetite and timelines. - Innovative and novel approaches to existing solutions. - Teaching a stakeholder to talk about their problem and not the solution they want. - Pairing back a fully featured product to it's thinest slice of value. - Managing the healthy tension between releasing today to create a small amount of value, and releasing next week with a more fully featured product. - The "shower thinking" and "programmer's dream" divine inspiration. - The knowledge you have built about the domain you work in. - Knowing the "gotchas" that aren't described in code, or documented, but are inherent behavioural issues that occur when a new feature is introduced or novel interactions are seen. ## Things AI is doing - Providing some productivity boosts in the programming portion of a software engineer's job. - Distracting decision makers from identical value produced through cheaper, quicker, more deterministic, less carbon-intensive means. - Making a lot of decision makers solution's tool first, not problem first. ## Things AI is not doing - Being the best technical solution to every user problem. - Replacing engineers.