Thoughts on AI and Software
What’s really in it for software engineers?
I am totally AI-pilled and work on agents, loops, orchestrators, and related ideas about software engineering in the current world of AI. There are only two primary goals for any business:
- Do work that drives revenue
- Reduce costs
Software engineering has mostly focused on using software to help a business with these two goals. AI is certainly increasing developer efficiency, but that may not necessarily translate into business profitability.
Questions worth spending time on:
- Who is the customer?
- What are the customer’s pain points?
- How can we solve the customer’s problem?
- Where does revenue come from in this line of business?
- Would the customer pay to have this problem solved, and can it contribute to a new or existing revenue stream?
- How do we measure the impact in business terms?
With these questions in mind, the focus should be on solving the business problem with the right tools, technologies, frameworks, and software engineering patterns.
Non-functional requirements play a vital role in providing scalable, secure, extendable, performant, and highly available software systems.
Types of teams
Not all engineers are FDEs. Some teams are not customer-facing, and not every team needs to be. However, every engineer should understand how their work maps to a business problem.