The Magic We Are Losing But Also The Magic We Are Gaining
The Conversation That Started It
On Thursday the development team and I had our Sprint Retrospective, where we discussed what we worked on, what went well, what didn't, and how our customer meetings went. Recently we added a new agenda item to discuss AI and AI agents. How are we using them, anything interesting/helpful we have found, what isn't working, where is the friction, etc.
One example that came up was using an interview to PRD to looping agent workflow to solve issues and build systems incrementally, which has been genuinely helpful. On the other hand, refactoring some of our GraphQL code generation to colocate file operations, while it sort of worked, still required a fair amount of manual work. One of the big learnings for us has been that these AI tools shift your work toward frontloading the thinking and planning for a task. Rather than diving into a problem and figuring it out while you're in it, there is now an element of doing some amount of the problem-solving upfront without actually writing any code.
Let Adoption Happen Naturally
My goal as the CTO of Trellis is to never force tools on team members or employees. I believe everyone sits on the adoption curve at a slightly different spot and that if you show the benefits, show how easy it can be, and everyone can see the value, that will increase adoption faster.
Of course, we do also need to consider if the tool is good enough to adopt or not, but I don't think that is something we need to consider explicitly. What I mean by that is, if the quality of the tool is good enough to solve the problem(s) acceptably, then adoption will naturally come.
Ya, they may not be as good as some of the AI hypers out there are saying. However, they also are not as useless as the AI doomers are saying (at least on the usefulness front, there are, of course, all the other issues surrounding it like copyright infringement, environmental impact, etc.).
Just Another Tool in the Toolbox
Developers/engineers are both naturally inclined to embrace automation, technologies, and tools but also skeptical. Look at the leaps and bounds we have made in the 10–20 years prior to AI really entering the market. There is no going back to FTPing files to a web server to update production or coding in Notepad++ (no shade, Notepad++ was awesome). CI/CD is commonplace now, every developer uses some form of intelligent autocomplete in their IDEs, automated review/testing/linting tools are integrated across the industry.
AI is going to be just another tool in our toolbox to solve problems faster, better, and more efficiently, but only if used correctly. If forced on or used in a way that creates more work, we are going to see developers and engineers become disenfranchised. There is a slice of the industry right now that is being very vocal about how they want and see AI Agents as completely replacing developers. I do not think that anything good comes from advocating for that, whether it is true or not. After spending months now working with these AI tools, trying out all the new tools (local and cloud), models, patterns, prompts, etc., I believe we are still a long way off from actually truly replacing developers as a whole. We've tried many tools both locally and in the cloud and have settled on what works best for our team and workflows.
What Agents Can Actually Do
Can these agents do a lot of the work that a junior with close to no experience could do? Absolutely, they are plenty good (with the right amount of instruction and guidance) to do a large set of the tasks that are required to build a product. They are also getting better at higher-level, more in-depth tasks too once you consider orchestration frameworks like Ralph and Gastown that allow you to break down complex work into manageable chunks for agents to execute on. What this means for juniors and others entering the industry is that they need to be able to distinguish themselves more than ever. Not only because there will theoretically be fewer jobs at that level available, but also because many big tech companies have done and are doing massive layoffs in the name of AI efficiency. This means there are a lot more skilled developers and engineers searching in the job market.
I still don't want to replace any of my team members with AI Agents, because:
- I like working with them as humans.
- I 100% trust every output from them.
Not saying we won't get to the point where I can trust every output from an AI Agent, we will at some point, but right now that is not the case.
And I still don't just want to be working (purely) with Agents all day. Even though we are building software, and we are deep in code all day, there is still a human element to all of this.
"I Like Solving Problems"
During the "AI and Agents" part of the retrospective, one point kept coming up: "I like solving problems."
That is a large part of why I became a developer (and I know it is why my fellow team members became developers). We like to solve complex problems, we like to think about and have systems take shape and grow into something that provides value out of essentially just our own thought process (and typing).
I get asked by friends, family, and people I meet every so often about why I like coding so much, and my answer is always the same: "It's pure creation." (I also usually get a chuckle from them when I say coding is an art). At the end of the day, creating something out of almost nothing except our ability to think and enter characters into a computer IS magic.
The Magic We Are Losing and Gaining
I think there is this (accurate) perception that having these AI systems and Agents pushed on us from every angle is attempting to and succeeding at taking away that magic. Or at least taking away the magic in its current form. We are absolutely seeing a new age of creation upon us with these tools. The things I have been able to do with simply orchestrating agents both locally and in the cloud have helped us at Trellis (and not just the developers) immensely. However, that does not change the fact that our profession is in the midst of a huge transformation, in some ways good, and in many others bad.
The magic we are gaining is this sense that we can build anything. We already believed that as a team, but now we have these systems that co-work with us and increase that confidence and ability even more. We can build more internal tools without affecting the resource allocations to the product roadmap. New features can only be dreamed up, designed, spec'd, planned, and scheduled so often, which means the more efficient we are, the more we can focus on technical debt, internal tooling (either technical tooling or company-wide tooling, like features in our admin dashboard). As an example, one project I have been working on is converting Vanna.ai to a TypeScript package and a NestJS module to integrate directly into our stack instead of spinning up a separate Python server. This allows us to have the benefits of that tool written in the same language as the rest of our code and integrated into existing APIs. This increases the maintainability and extensibility of the resulting tool our team will rely on. The bulk of that conversion work was offloaded to agents while I worked on other tasks.
The Backlog Never Ends
For anyone that has ever worked in any industry, you know, there is always more work to do. The backlog doesn't ever "end." It is just, "how can we do more with less." As the CTO and Co-Founder of Trellis, I, of course, want us to keep pushing and do more all the time without increasing costs, BUT, not at the expense of my team's mental health, enjoyment of work, and our company's mission.
So if the work is never ending, new features, technical debt, new patterns, new technologies, better automations, improved tooling, etc., then how do we keep pushing forward? Within all of those buckets there is going to be a chunk of work that is going to be either monotonous, trivial, or just something that is a solved problem. So why not give those tasks to an Agent that doesn't care that it's a boring task? That frees us as the developers up for interesting, complex, and challenging work. This isn't to say we aren't going to use AI anyway for this work, as it's integrated into every facet of the SDLC at this point anyway.
This mirrors the classic (can it be classic if it's recent?) gripe with AI/Robots from the public: "I want it to do all the stuff I don't want to do, like cleaning and laundry, not the human things like creating art."
As it currently stands, AI is a tool that allows us to do more and should supplement us as the experts rather than replace us. It should be a net positive for you as an individual, rather than feeling like your identity is being stolen by these correlation machines.
Where We Go From Here
Whether we like it or not, AI is here. Will it forever stay in its current form? No, no products end up the way they started. Is there going to be some sort of reckoning when it comes to jobs and the market? Absolutely. That does not mean we shouldn't embrace it for what it can do, what it is good at, and how it can help us, without losing our identities and humanity in the process.
Our mission at Trellis is: Be a revenue generation platform for long-term sustainable change to social and environmental systemic issues.
I believe that AI will be a compounding effect for our impact on the charity industry and by extension world. By doing more with the same resources, we can invest in better internal tooling, improve our processes, make more data-driven decisions, and push toward product-led growth. All of which compounds our impact in the world.
Want to learn more about how we develop at Trellis? Check out these related posts: