The Future Developer & Securing Agentic AI – Antje Barth on AWS Innovations
Antje Barth, Principal Developer Advocate, Generative AI at Amazon Web Services (AWS) chats about “the developer of the future”. She also discusses the security of agentic AI systems, focusing on the role of Automated Reasoning.
Transcript
Hey guys. Thanks Smith. We're here with Anja Barton, who's principal developer advocate for Amazon Web Services, and we're gonna be talking about all the amazing things happening around Amazon Q developer generator of ai.
And in case you haven't heard, there's also this thing called vibe coding. Hey Andre, welcome to show. Thanks so much for having me, Mike.
You know, in the last 30 days alone, I think I have seen four or five announcements, new capabilities added to Amazon Queue developer. It's not clear to me that everybody understands exactly what that is. So why don't we level set for a minute and say to folks, what is this thing?
It's an AI agent framework, but it does what? So Amazon Q developer is our AI assistant that helps you across your software development lifecycle and it's built upon agents. So agents that help you to either transform code, modernize code, but also doing a lot of other exciting things.
And one of the exciting things we just recently, a couple of weeks ago introduced is Amazon Q developer in the CLI. So there's a lot of excitement I can see from the developers out there, including myself working with ACL I. What it does is it brings this agent experience that many of you probably experience working in your IDs where you have those coding assistant into the cli.
So now what it unlocks is you have access to all of the CLIs installed. In my case, I do a lot development with AWS of course. So I can use the QCLI now to just, you know, type in natural language and help me list my files in a specific S3 bucket.
Or even ask, Hey, can you check the docs? How do I implement a, B, C? And the tool does it for me.
So super exciting to see those capabilities emerging. One of the things that has come up when I started talking to people about this is that while they're happy to use these tools within their IDE, one of the things they like about the CLI, it's a little more extensible in their minds. And they started using the AI agents for things that went beyond just writing covid.
They were using it for almost other parts of the software development lifecycle and engineering. So how extensible is it now that we have the CLI and it almost feels like we're moving into the realm of DevOps with some of this stuff. Absolutely.
So one of the last additions, um, that Q developer CLI got is support for MCP. So the proposed model context protocol by Tropic there has been a huge excitement in the community about it and, uh, a great deal of adoption. So with that MCP support, you can now connect to specific MCP servers.
For example, what our teams did, our documentation team, they wrapped the public APIs, created an MCP server, which is available on the GitHub repo as well that we provide. And you can use that for example, with Qs I, and then just using natural language say, Hey, could you check the docs? Look something up for me.
And that's just one example, right? With MCP, you can connect the CLI now to all of the servers you want to include for your development workflow. I also noticed too that there's now integration with not just GitLab, but GitHub as well, I think.
And um, that also kind of makes the whole platform a lot more extensible in ways that people hadn't early imagined. But, um, how will software engineering evolve in your mind as we kind of have these capabilities? I think there's a lot of change happening.
How we build, right? We still need all of our technical knowledge, we all need all of you developers out there. But what I see is changing is a lot of the things that, for example, took me a long time, like looking up specific commands I'm not just using every day, right?
Like sometimes you push a GI, um, request and and then something just goes wrong and then need to kind of reverse what you pushed. And then looking up those specific commands, like if you live in that world every day, obviously you have that, but sometimes you just, you know, find yourself Googling for a specific command or if you're a Python developer, right? Maybe you have to write something in another language for like a specific project and you're not that familiar with Rust or Java or something.
So now you can use the AI assistant to really help you what I would call kind of, you know, the learning zone as well in the software development life cycle. So you can quickly do tasks, either look up some stuff which is more like, you know, helping you a task you can definitely do by yourself, but it would just take a little bit long to to optimize and augment and, and be more efficient. But also tapping into this, this learning zone where you can also use the tool as you're writing a developing code to just, Hey, help me like convert this snippet here I have in Python, how would you write this in in rust, et cetera.
And obviously with the GitHub integration, it's also a lot of those things, right? Where you can these days, for example, with the, uh, queue developer integration, just label an issue and then chat with the agent and help you like solve that issue, right? And queue developer can automatically implement your feature.
It can generate bug fixes for you, run code reviews. And I think that is kind of the new way that developers will, will start to work, embracing the tools and then helping you just do your job much more efficient and you can focus on the parts that you actually enjoy solving the problems. Do you think as a result more developers will embrace a wider range of programming languages?
I think most people maybe know one, maybe two, and they have one that they favor. But um, you know, in a lot of instances we wind up writing code and old versions of Java. Do you think as we kind of move into this brave new world, it'll be easier to stay current on a particular platform or maybe even switch between programming languages?
I think at the core of a developer, there is the curiosity, right? We are, we're always getting excited about new technologies and, and new languages and new protocols that are coming out. And I think that especially the speed of innovation that's happening right now in the AI space, it's, it's so much news and, and protocols and, and things coming out that it's sometimes hard to stay up to date, right?
Even for the most curious minds. So I do think really that, you know, the AI tooling and all of this really helps us to kind of embrace that a little bit more. Like one example also is kind of, you know, the emergence of vibe coding recently where people just, you know, um, in a kind of a different way approach the thing and say, Hey, let me see how far is I can take this, right?
And just use the natural language, use coding assistance and then develop something, build something. So that could be like you're tapping into something new, right? Like I started many decades ago with, you know, creating my own websites.
I haven't really been a front end developer, so I, I'm, I'm not up to date on how you would build, you know, modern front ends these days. But that's, for example would be a good use case for me. Just, you know, use web coding over we can maybe and and develop like an updated website.
So I do think there's a lot of opportunity in kind of helping in a fun way sometimes and also in a very practical way in your jobs to leverage AI and help you learn to kind of synthesize information and news that are happening and kind of yes, elevate your skills and just embrace new technologies. And you know, at the core of it still has have fun at this as a, as a developer You mentioned vibe coding and we've been kind using low-code and tools to get at citizen developers for a long time now. And five, coding seems like the next logical extension of that.
But I'm also starting to wonder just what is a developer these days? 'cause it seems like there's gonna be a broad range of types and skills and more people will be able to develop. So, um, how do you view the developer community evolving?
I think it is really democratizing who can be a builder, which I'm excited about. Not everyone might have access, you know, to traditional software engineering education and to see that you can use those tools in natural language to build something is super exciting. So I do think the community of builders will grow and is already growing, which is, it's great to see.
At the same time the technical developer community can also grow with the tooling. So I do think we should all be like embracing that and welcoming to the new builders in the community and then together figure out, you know, the best ways obviously to, to work with a new tooling. And also, you know, security is an important part to be able to put guardrails in place as we're developing with ai.
It also seems like it might be easier to collaborate between, uh, developers who may be quote unquote vibe coding and professional developers in the, as of AI agents because we'll have a more common framework for understanding what's happening. And maybe we don't have to explain as much of the technical underpinnings. There's definitely a big opportunity for us to collaborate and, and we already see this in the community.
Um, at AWS we have a lot of, you know, user group events happening where I, I get to join not once in a while. We have meetups that we're hosting. We have the, the community itself running a a ton of events and we already see like there there is kind of this, you know, collaboration between people and more people coming to those events as well and, and kind of are excited about the technology.
So this is an amazing thing to see that's happening I think already, and definitely I think over the next years as well. So what is your best advice to developers about how to get started with all this? 'cause on some level I think they're all intrigued, but they're also maybe a little overwhelmed and sometimes maybe a little fearful.
I would just recommend to, to be fearless and, and try out the tools depending on what you're doing, whether you're a Java developer, whether you're a Python developer, whether you're working on front end. There's so much choice right now in the market with, with tooling, with capabilities. And I think just looking at what your day-to-day looks like, embrace some of the tools and, you know, be curious and see how it can help you do your job better and maybe help, you know, offload some of the tasks you'd rather like outsource to an AI and really get your core time focusing on, on, on either what, what will you enjoy doing, um, solving problems or other things.
And I mean, historically a lot of software engineers, especially kind of, if you're going into the, you kind of the principle roles, a lot of that work is already kind of directing strategies and, and and reviewing rather than, you know, actual writing. So I think for all of us as a, as a developer community out there, it's about helping to shape the future and seeing where we can really drive those values. And especially working, you know, with, with the startups in this space, we already see a lot of great impact that it's having where, you know, startups for example, we're working with one Namu Q developer helped to reduce development time by 30% and now, you know, you can use that time to, to really invest in other things coming up, you know, spinning up additional projects or et cetera.
So that's kind of where I see it going and, and I'm super excited for everyone to just, you know, come together and help evolve the space and, and find the great use cases as well. You think ultimately there'll be less friction in the development process? And I asked this question because, you know, I've talked to more than a few people where they have an idea, but then they think about what it would take to set up the development environment to go execute that idea and they decide that they're just gonna go do something else.
So, um, can we get to the point where, you know, all the stuff that gets in the way of between the idea and the code of just getting it out of the way, I see a lot of opportunity in that space for quick prototyping, right? And, and it's kind of like partially in the vibe coding area as well where we see, um, I think there, there was a podcast recently from Y Combinator that also tapped into this and saying they see a lot of uptake where, you know, startups start to use vibe coding just to get some initial MVP products out. So in general, I think across vibe coding and what I would say the AI assisted coding, which is like, you know, you are very technical, but you're using the AI tooling to assist you opportunity to just bring ideas to life much faster, try out things much faster, like you can experiment quicker and then really kind of iterate faster too to find a product to find, you know, build out the application, see which path is kind of, you wanna take it.
So absolutely, I think it helps us to, to build faster, ideate faster. I was having a conversation with somebody and they were trying to figure out how to manage all the different AI agents that there might be out there. They're gonna need to be connected and orchestrated and just come quite, couldn't come to the conclusions to whether or not are there gonna be, you know, two dozen specialist agents that I'm interacting with, or will there be kinda like a master butler agent that goes, tell all, all the other agents what to do.
We see a lot of excitement and already like emerging this multi-agent world. And what you wanna do is, rather than compressing all of the capabilities in, in one big single agent, you wanna have those specialized agents, right, that have access to specialized knowledge domains. Again, like security safeguarding, guard railing is all very important.
So you probably wanna have like a specialized agent that is, might, might have access to a specific domain, let's say your internal development best practices. You might have another agent that is trained with its knowledge on the security best practices and then it's about how to orchestrate that, right? To your point, I do think we see this multi-agent and we already see that, um, even more expanding over the future.
And then there's a lot of like excitement in the community as well right now about protocols, open standards emerging around how we can communicate between agents. So I can see over the next month and years a lot of like development in that area and then figuring out how we can more broadly build this world of multi-agent. There has been a lot of talk over the last couple of years about the degree to which AI and agents might replace developers.
Is that feasible or is it just changing the role and the experience? But there will always be a need for somebody who's the developer. Yes.
And we've seen this over, over the course of like technology innovations happening, there are skills that are more likely an AI will perform, but there's definitely a huge opportunity like to shift what you're working on and shift the skills. So I see a very definite need for technical software engineering resources, people that have that deep technical knowledge. There might be a shift and we see that, right?
Like, which tasks am I really doing and I'm, I already shift, but there's definitely the need for the technical people that, you know, are able to build the more complex system architectures to review and then also set the direction. So while there is a shift, I think in, in the individual tasks, like with all technology evolution that we've seen in the past, it'll create exciting new types of jobs, which I'm very confident about. Like we really see the first glimpse of that happening and also like just what I'm, as a individual working on my tasks and, and skills shift a little.
So that's why it's so important for us all to, to really embrace and, and be curious and try to, to build up that skillset, how to work with ai, right? Like what's the best way of phrasing my natural language inputs to get to the results I'm looking for. So there's so much I think for all of us to, to learn and kind of grow with the technology and I think those are the important skills to have as a, as a developer in the future.
Last question. There's been a lot of folks saying that we may actually build more software in the next two years than we built in the last decade. Is that hyperbole or do you think that that might actually happen?
I think there's a lot of potential for, for new use cases, which, which will ultimately end up in new applications and especially in the agent AI world, imagine like, you know, like agents communicating with each other and there's so much opportunity, I think in this space to figure out like as you're building products, as a company, as a startup, as an individual developer, like how to participate in this new future where, you know, ag agentic AI is, is making a lot of like, you know, the reasoning, the planning and helping not just to interact maybe with your customer base, which we see right now, like a lot of like customer support use cases, but I think there will be a complete new wave of, of applications and we see like early glimpses of that. Um, for example, we're working with Ana ai, they're building agents and using agen AI to automate an entire research lifecycle. So this has been a discussion in the industry as well.
Can AI help us to, to drive research and innovation? So really kind of from generating new ideas to then also like running experiments and, and creating research reports. So I think there's, there's this whole world in front of us and I'm as excited, I think as everyone else to see what those new use cases, um, might be.
Alright folks, and you heard in here, hey, the job of a developer is definitely gonna change and evolve, but you could argue it's probably never been a better time to be a developer. Hey Anja, thanks for being on the show. Thanks so much for having me Mike.
Alright, and back to you guys in the studio.