Anduril with Gokul Subramanian

28 Jan 2025 · 43 min

Ask about this episode

Ask anything about it. ChatGPT or Claude reads this page and answers with the times it was said.

Connect VO and ask about every podcast you hear, including the moments you saved. Add to ChatGPT · Add to Claude

In short

Podcast Summary: Software Engineering Daily - Anduril with Gokul Subramanian

Episode Overview

  • Podcast Title: Software Engineering Daily
  • Episode Title: Anduril with Gokul Subramanian
  • Episode Description: A discussion with Gokul Subramanian, Senior Vice President of Engineering at Anduril, a defense technology company focused on national security issues through innovative solutions including drones and computer vision.

Key Topics Discussed

Introduction to Anduril

  • Company Focus: Technology defense solutions, including drones and national security.
  • Full-Stack Approach: Anduril develops its own hardware and software, leading to unique engineering challenges.
  • Cultural Shift: Aiming to attract talent back to defense sectors, reminiscent of the Cold War era's bright minds.

Impact of COVID-19 on Work Culture

  • Return to Office: Emphasizes a tactile work environment crucial for engineering and collaborative efforts.
  • Remote Operations: Investments in remote operation capabilities due to the pandemic, allowing for more flexible testing and operations across different states.

Engineering Philosophy

  • Lattice Framework:
  • Integration: Aiming to create interoperability in defense systems that have historically been siloed.
  • Common Core Software: Building systems with software as the core to enhance communication and efficiency.
  • SDK Release: Introduction of Lattice SDK to foster collaboration and integration with third-party systems.

Lattice SDK and Its Functionality

  • Overview of Lattice:
  • Microservice Architecture: Allows various components to work together harmoniously, emphasizing compatibility and integration.
  • Deployment Targets: Differentiates between 'nodes' (with human operators) and 'robots' (autonomous systems).
  • Key Features:
  • Pub/Sub Network: A mesh network for seamless data communication among various systems.
  • Custom Implementation: Developed proprietary networking technology to meet specific defense needs.

Artificial Intelligence in Defense

  • AI Decision-Making: Shift from a human-in-the-loop to an observer model for AI systems.
  • Data Utilization: Leveraging large volumes of defense data for AI model training while ensuring compliance with security protocols.

Challenges in Defense Engineering

  • Decentralized Systems: Engineering for environments where communication may be intermittent or unreliable.
  • Security Protocols: Navigating the complexities of secure data handling and model training at the edge.

Future Directions

  • Partnerships and Collaboration: Engage with other companies and agencies to expand the capabilities of Lattice and its adoption.
  • Feedback Mechanism: Continuous improvement based on partner feedback and lessons learned from real-world testing.

Key Takeaways

  • Cultural Shift in Defense: There is a growing acknowledgment of the need for modern talent in defense technology, which mirrors practices in commercial tech companies.
  • Importance of Interoperability: Emphasis on building systems that can work together without needing constant coordination.
  • Innovation through Necessity: The COVID pandemic has driven innovation in remote operations and engineering workflows in defense.
  • Future of Defense Tech: Open-source approaches and partnerships will likely shape the future landscape of defense technology, emphasizing collaboration over vendor lock-in.

Conclusion Gokul Subramanian’s insights into Anduril’s innovative approaches to defense technology highlight the intersection of traditional engineering challenges with modern solutions aimed at national security. The emphasis on interoperability, remote operations, and AI reflects a transformative period in the defense sector, encouraging collaboration and integration across multiple domains.

Written by AI. May contain mistakes. Listen to the episode to check what was said.

Hear the part that matters, and keep it.Open this episode in VO. Double tap your headphones to save a moment as you listen.
Get VO free

Transcript

Automatic transcript. May contain errors.

0:00Anduril is a technology defense company with a focus on drones, computer vision, and other problems related to national security. It's a full-stack company that builds its own hardware and software, which leads to a great many interesting questions about cloud services, engineering workflows, and management. Gokul Sabramaniam is Senior Vice President of Engineering for Software Programs at Anderil Industries. He joins the show to share his knowledge of the national security problem set, how Anderil operates, and what the company has built. This episode is hosted by Sean Falconer. Check the show notes for more information on Sean's work and where to find him.

0:51Gokul, welcome to the show. Hey, Sean. Thanks for having me. Great to be here. Yeah, awesome. Actually, I probably should have said welcome back to the show because you were actually here like four years ago. That's right. In the middle of COVID, actually, I recorded it from my apartment. so it's great to be here in a proper studio with the right recording setup. Yeah, for sure. I think people's home equipment setups have really evolved in the last couple years because so many people working for remote. That's exactly right. I remember slowly upgrading my home office over that year. Yeah, exactly.

1:19Went from like a laptop on your kid's bed to like actual like functioning office. You start thinking about your background, what are people going to be staring at? I got to like, you know, put some posters back there. You got to get the lights, you know, beaming at your face. So yeah. Yeah. I remember I was at Google at the time of the start of the pandemic and like the senior director of engineering, like his first meetings were legitimate. He was sitting on like a child's bed, a child's bedroom. And I think I'm sure it evolved significantly since then. Yeah. And for us, you know, we're such an in-office culture and now we completely are back to that in-office mode that, you know, we were wholly unprepared.

1:53And I remember during that COVID period when the rules hadn't been established completely yet, you know, we had people taking tables from the office and driving them to their houses because they didn't have a home office set up and taking their monitor from the office back to their home. It was crazy. Yeah, I went through similar things. How does that transition to bring everybody back to the office? I think it's been good. I mean, we're such a tactile organization in the sense of the things we build, you can feel them, you can touch them. Even as a software organization, we fly our stuff at the range regularly.

2:21So I think that it's been much needed for us. We're so collaborative across hardware and software. I will say, though, that COVID period really made us invest in remote operation, remote telemetry, remote management, which enables us to now run test sites out of state, right? So when we were recording during COVID, our test site was 45 minutes from the office, but that's just not possible anymore. You know, our new test site is, we have two, one in Nevada, one in Texas. The one in Texas has one of the largest runways in the United States, It's the entire United States, and we're going to be flying our airplane next year.

2:57So you just can't ship all your engineers out to the test site. And so we've had to really double down on that remote testing capability. I would think that it's probably forced a lot of organizations to sort of like upgrade, I guess, both like their asynchronous communication and how they think about like remote work, remote test sites, like even organizations where maybe historically you had to have some sort of field engineer essentially located at a customer site to get them set up, you're going to have to change things significantly in terms of not only how you work, but also probably the support systems that need to be in place to deploy software remotely and monitor it essentially.

3:36100 % true. And yeah, it's kind of a platitude now, but necessity is the mother of all invention. And so when you're basically told... And during COVID, it wasn't like work stopped entirely, but we had a safety protocol. So it's like, one engineer can go to the site, and there will be four test engineers, and that's it. And they have to be separated by this much. And it couldn't have prepared us better for hitting the real world and scaling to these, you know, more realistic, more safety conscious government systems. So given that you're on the, you know, show four years ago, and maybe not everyone listening to this had checked out that episode, I do recommend And if you are listening, you should go back and listen.

4:15But can you give, before we go too deep into things, can you give a little background on Andrel and what exactly does the company do? Yeah, happy to. So Andrel, we are a defense company. We're a defense technology company. And our thesis is we want to do for defense what SpaceX effectively did for spaceflight, which is if you think about the 60s and 70s and 80s, defense was the place to be. I mean, there was a real national need. We were in the thick of the Cold War and all the brightest minds were going into defense. What we have happened over the last 30 years is many of those minds shifted to working in commercial, whether they went to the big bang companies or otherwise.

4:53And what Andrew wants to be is a beacon to all of those people to say there is a place for you to come back and work on these really critical national level problems, problems that only a nation state can tackle. and you can do it in a culture that matches the modern world. And you can do it with access to technology and you can really push the needle. And we hope to lift the boat across the industry. You know, I think that the existing defense primes are feeling this as well. And I wish for them to be able to access that talent as well. And there's a whole set of companies that are coming in behind us.

5:26And so we really, I mean, the broader thesis of Andrel is reigniting that arsenal of democracy because we feel that we're moving into a world of great power competition. That's a bunch of jargon, but if you just look at what's happening in Ukraine, if you look at what's happening in Israel, if you look at what's happening in the Middle East, it's very clear that America needs to continue to hold its role in the world. How do you go about appealing to that talent pool? You want to recruit the best engineers, product people, best people across essentially any functional area to be able to have, you know, sort of, I guess, like fan quality talent pool, but at a non-fan company?

6:04Yeah. And actually, you know, it's very interesting because we don't want, quote unquote, fan quality talent across the whole company. Actually, one of our biggest recruiting draws is the diversity of talent, the diversity of opinions across Andrel. So I'll give you a statistic, 20 % of our staff, maybe 25 % are veterans. So they formerly served in the military. You know, I would say another 30 % come from bang companies. I would say 30 % come from traditional defense companies. And I think it's that intersection that really excites people. And it's feeling like you get to work across talent and people that you wouldn't meet otherwise.

6:39You get to work across, you know, for a lot of people that I talk to that work in pure SaaS companies, you know, getting to touch hardware is a huge draw for them. And getting to work with the hardware side of the company. for the hardware side, getting to work with fan quality engineers is a huge draw for them. So I think that's been the key to our success is that intersectionality of disciplines. Okay. And then I want to talk about, you know, Lattice and Lattice SDK and some of the things that you're doing there. So just to start, like, what exactly is Lattice? How do you typically like describe that?

7:10Yeah, you know, there's a philosophical definition. And then there's like a very specific technical definition that we can go into, you know, at the highest level, if I just take a step back and think about history, the defense world has been very good at building hardware. You know, I call these appliances. So like, if you think about what the defense community has done since the Cold War, they build airplanes, they build submarines, they build, you know, battleships, and they think from a very hardware centric viewpoint. And the net result of that is that these systems are designed in silos, and they don't talk to each other in any way.

7:40They were never designed to talk to each other. It's nobody's fault. Everyone did great work. But from the beginning, they were never designed to talk to each other. And what it means is that if you think about how a modern conflict will evolve, this is a huge Achilles heel for the United States. And you can see that the military has been talking about this for literally decades. So if you think about what Andrel set out to do is inverting that paradigm. So you build the software as the core from the get-go, thinking about every different domain that you'll want to work across and build a common core.

8:11And then you design the hardware to take advantage of that software from the beginning. And the net result of that is you get huge economies of scale. So it means that I don't have to reinvent the same code. You get higher quality. You get a better cost structure, which is really important to our customers. And so fundamentally, that's what Lattice is. It's a common way we think about how we build systems, whether they're command and control systems, laptops and servers we're putting all around the world, or they're robots, whether it's our school bus size submarine that's coming online and going through sea trials right now.

8:44It's our spacecraft that'll be launching next year. They're all sharing a common DNA and a common code base. And that means they work together. And that means that we get higher quality. And then to get to your point about the release that we're super thrilled to do today, what we realize is that that shouldn't be locked up to just Andrel. And so we are releasing that Lattice SDK, that capability for anyone to take advantage of. And we have a thoughtful onboarding experience. And we're releasing with a number of partners from the get-go who are all taking advantage of Lattice to be able to do those sorts of missions.

9:19And Lattice itself, so if we get into the very technical definition, breaks into a microservice architecture, and I can go into the layers of that architecture. And what we're offering is for people to take that a la carte. So they can take different parts of that architecture, whether it's our networking capability, our command and control capability, our autonomy capability, and they can start integrating that into their systems. And if I'm someone who has some of this, like, essentially legacy hardware, I already have, you know, airplanes and all these other things that military organizations would build up.

9:48Can I use Lattice or do I need to essentially be building with Lattice and then building with essentially the hardware instantiation of that from the ground? Yeah, no, I mean, we do this all day long. We integrate with legacy systems because the reality is, and we knew this from day one, you know, we're super thrilled to see the government adoption of our hardware. But the reality is the vast majority of the kit that the average soldier has access to is not handle stuff, at least not yet. And so we need a way to onboard other third-party systems. And so the short answer to your question is, yes, it's totally possible.

10:22And there are layers of integration with Lattice that folks need to take advantage of. So if you want to be able to send data into our mesh network so that that data can route seamlessly wherever it needs to go, taking advantage of Starlink and mesh networking technology, you can do that. And you can buy a compute module from us, or you could actually use your own compute module and drop our software on there, and you can be onboarded into the network. And you can go all the way up to if you build, and this is one of our partners, build unmanned surface vehicle, and they want to integrate more deeply into that stack, they can go do that and they can work with us.

10:58We can give them recommendations on hardware if there are any changes necessary in order to get that deeper integration. What's the actual architecture of Lattice look like? And how do I go about using it to essentially start a project with it? Yeah, that's a great question. So at the base layer, you can think of it as we have a set of OS-level primitives that we recommend. You don't have to adopt them, but we have thoroughly tested against them. So Red Hat operating system, for example, or Prometheus for how we do telemetry. So those are a base layer of Lattice. Then if you get into the domain-specific layer, you've got three basic components.

11:38The first is a networking capability. The second is what we call command and control capability. How do I know where you are and send you basic commands? And then the third layer is the autonomy capability. So then how do I go from sending you commands to letting you move autonomously within the boundaries of a plan or a set of behaviors? And you kind of think of that as like Maslow's hierarchy. It's like, I got to be able to talk to you. Then I got to be able to send you like basic commands, like move here, fire this missile or whatever. And then I got to give you high level intent. And that's kind of the direction we see technology going.

12:11So in terms of like the commands, am I essentially, is it like sort of a client server model where I'm sending commands from the server and the client essentially is the piece of hardware that's going to react to the commands? And then is the client sending information back as well? Yeah, so we think about the Lattice Stack as two different deployment targets. So the first target is what we call the node. And the second target is what we call the robot. The thing I want you to take away, that the main point here, the node has the human involved. So it is where the human, you or I would interface into a set of systems, whether they're manned or unmanned.

12:44And once you realize that there's a human involved, it creates a huge set of follow-on, knock-on technical decisions. For example, you've got to have a user interface because a human cannot talk via APIs. And if you have a user interface, you've got to have a database that's going to store a ton of data so that a human can rewind and go forward and all those sorts of things. So that's the node. The other thing we have is called the robot, and that's a different deployment target, kind of different stack that gets composed. Now, the thing that connects that is what we call the mesh. And that's the announcement that we made today.

13:14Once you are on our mesh, and the mesh is what's called a pub sub network, it's a publish subscribe network, anybody can publish topics on that mesh, anybody can subscribe to topics on that mesh. And so if you are a node, which is where the humans operate and interact, they can subscribe to a set of topics, I want to know where the submarine is, I want to know where the airplane is, I want to subscribe to the radar data coming off the airplane, and that data will get seamlessly routed back to you. You know, we do things like, you think about a typical cellular network thing your phone uses. There's a concept of quality of service.

13:46So we will ensure the most important data comes to you first, and then the second most important data, so on and so forth. And that's how an end user or even a partner gets onboarded into the stack. And that mesh takes care of things like security, it takes care of things like quality of service, et cetera. So that's really the fundamental piece of the Lattice stack that then lets you access all the higher order things. In terms of that PubSub, what are you running underneath the hood? Is that something that you rolled your own or are you using an existing PubSub provider? Yeah, this is a core piece of IP for us.

14:19We spent a lot of time studying existing providers and we ended up rolling our own. It's one of the few areas we've patented as well. And so it's kind of custom implementation. we do use protocol buffers as the mechanization, as a serialization mechanization. And then we use things like, we work with all sorts of open source authentication systems. So if you've got PKI or if you've got OAuth or any sort of those, we can integrate with them. But the actual networking layer of the networking protocol, that's all custom built by us. And since you're using protocol buffers, are you using things like drpc for communication?

14:55Yeah, precisely. So you can send data over protocol buffers over the mesh. You can publish data, but then you can also call commands. So if you want to task something, you want a direct ability to expose what I can task and then be able to leverage that task and get an act back. And that we would use something like Google, a gRPC. Okay. So you have essentially this data flowing back and forth between these nodes in the server. Where does this actually run? Are you running these within your own cloud deployments? How does that sort of stuff work? Right. So one of the fundamental premises that we had to make and design for is that we cannot assume availability of any cloud stack.

15:39And so the entire system is designed to be agnostic to both any individual cloud vendor. If we have them, we'd love to use them. And also the ability to run on-premises. The node itself can go all the way down to the form factor of a laptop. and all the way up to the form factor of a data center, an on-prem data center, or in the cloud. The robots tend to use NVIDIA form factor, the NVIDIA Jetson family of chips, but we're compatible with any sort of embedded form factor that we can run on. And that's why I call out that distinction, because you've got very different compute available to you, depending on if you're a robot versus a node.

16:18And within this kind of like mesh infrastructure, where this information is flowing between all these different nodes. Is there essentially a component of AI-based decision-making that's also part of it for supporting things like defense operations? Yeah. And this is an area that we're all kind of leaning into, that DOD is leaning into this as well, but we're all trying to figure out where do we draw the line and how do you do this in a safety conscious way? So there's this concept that is basically traditional systems have been human in the loop. So the human is directly inside the decision-making loop.

16:53The idea with AI and a lot of the latest generative AI technologies is how do we move the human from being a blocker inside of the loop to becoming sitting on the loop? So they are observing the loop entirely. They can stop at any time, but they are not directly an actor within the loop that they have to do something. So, you know, the closest example I would describe is, you know, if you've got a Tesla, for example, you can put your car in self-driving mode. You are on the loop. The car is going to make a set of decisions, but you need to be watching it extremely closely, and you should be ready to take over at any time.

17:25And so as it comes to AI, that's the way we're starting to think about it. And we're starting to lean into a lot of new use cases. Your viewers may have seen our announcement with OpenAI, our partnership there, and we also have a partnership with Palantir. And so we're really excited to lean into that. And then the second thing I could say on AI is, you know, what I really think about, this is my personal opinion. If you think about what's happened in the last five to 10 years, Since the advent of transformers, I don't know that the innovation has really been on the model architecture side. And there's certainly been new model architectures and things like that.

17:57But the real breakthrough has been on the data side. And it's been moving from increasing the volume of data that's been available to train these models, multiple orders of magnitude, hundreds, if not thousands, X more than we had before. And how did we do that? We got the labelers out of the loop. So what we basically did is we created a situation where the data could be self-labeled. To give you an example, right? I'm going to look at a Wikipedia article. I'm going to take the first paragraph, feed it to the model, ask it to predict the second paragraph. I don't need a human labeler in the loop because I can just check, did you guess the second paragraph correctly?

18:29And by doing that, you can explode the amount of data you have available to train. That's our goal, which we are sitting on top of, we hope, a hugely valuable data set for defense purposes that no one else has access to. Only the US military has access to this data. And we want to really treat this data with respect with the right authorities, but start to use this data to start being able to generate the next generation of AI models for our use cases. Yeah, I think the primary bottlenecks today with both on the model side, evolution of the models, and then also with building AI applications are really like data challenges.

19:06That's right. Essentially, if you're hitting the limits of what you can scrape publicly, then you need to go find data somewhere else. And then there's challenges around generating purely synthetic data for training in terms of degradation of model performance and integrity. And then even on the other side of essentially building AI applications during prompt assembly, we now have the advantage of really large context windows. where, but then it's like, how do you provide the right context, you know, with the right information in real time to generate the most reliable response. And both of those things are really around essentially data problems.

19:41Yep. Everything has followed from how do we get access to high quality, huge volumes of data. And then you figure out like, okay, well, I need to train against this huge volumes of data. So I need these huge server centers. I need to figure out how to network the server centers together. And I need to be in a, there's this concept of coherence when you're training, but all All of that is second order that follows from, can you get access to these huge volumes of automatically labeled data effectively? So the big idea that we're after is how do we do that for our use cases, this national security problem set, where we think we are closest to those problems.

20:15And as we talked about with our mesh networking architecture, we're just constantly sucking up that sort of data. Yeah. And even outside of AI, like what are some of the engineering challenges you face with trying to scale Lattics to handle like the complexity of these like dynamic environments where you got like, you know, classified servers, battlefields, you know, you probably know all the terms better than me. But I mean, these are like not sort of the typical places that most engineering organizations are deploying things. Yeah, I'm so glad you asked this question. I think this is what gets people fired up when they come work here.

20:49And they see the scale of our problems very differently than what you'll see in big tech. So I think one of the fundamental building blocks for us is we build for a decentralized world. So we have no concept of all the data. There's not gonna be one server to rule them off where all the data will come back. You know, if I go back to my Tesla analogy, every Tesla car can communicate back to Tesla headquarters and they can kind of pull all that data together. We live in a world where our systems have to be designed to work against degradation of communication and reforming these meshes wherever they are.

21:23Maybe they can connect back to Washington, D.C. Chances are they can't in the real world. And they'll have to work in a dynamically evolving kind of decentralized paradigm. And what that means is the way you design applications has to be designed with that in mind. Let me give you an example. Right. If someone sends you a text message on your phone. and your phone is off, you have an expectation that when you turn your phone back on, that message will be received, and you'll be able to see it. Many DoD systems are not architected with that in mind, you cannot make that fundamental assumption. Furthermore, you can't make the assumption that that DoD system can ever see Washington, DC, it may be able to see another DoD system if you know, the bad guys aren't jamming it.

22:06And so how do you architect and build applications for that world, that kind of becomes our seminal challenge. And if you think about the Lattice SDK that we're releasing, it contains those lessons learned that we've spent seven years learning those lessons about how to build for the decentralized world. And we're trying to share those lessons. And it's a different paradigm fundamentally. How do you test for those types of environments? Yeah. So, I mean, this is where the real world test range is incredibly critical. We have a really robust simulation architecture that we're continuing to lean into.

22:36And one of these ideas is that we can't have one central team do it all. So we have people building the architecture. So if you're interested in that kind of work, you can come here and work on that. But then we actually have people embedding close to these problems, really getting in the weeds with the end users, often traveling to the end users, working with them when they do their testing. Remember, I mean, we've got to build our stuff so that we're not there when it's actually being used. So we train with our end users and learning from them what those edge cases are. And then we bake it back into our integration tests in our simulation environments.

Read the full transcript

23:09What's the simulation environment? Is that something that you had to build yourself in order to essentially like simulate the types of situations that like the end user is essentially going to be in? Yeah, and I would say, you know, we've got multiple layers of this. We have a system called the software integration environment. It's a virtual machine-based thing where we can spin up. You know, we talk about these complex scenarios, battleships in the water, airplanes in the sky, nodes on the ground. We can actually spin up VMs to replicate that. We can replicate the networking links. We can degrade those networks on demand to put ourselves through those paces.

23:41And then what we've built is really a game engine that can start to describe these scenarios. And we can model at varying levels of fidelity, the systems and how they'll behave. And then what's really cool is we can put into that game engine, the real code, the real autonomy code, the real C2 code that would run live. And we can put it through its paces such that you can build confidence. And that's actually really how we train our operators is they work through the system in sim, but they have the confidence that it's running the real code. And so the real vehicle will behave no differently. How reliable is sort of this like simulation environment in terms of like if something goes wrong there?

24:17Are you pretty sure that it would be something that would actually go wrong in the real world? Yeah, the way I would describe it is if something goes wrong in the sim, it will definitely go wrong in the real world. But if something goes wrong in the real world, it's not guaranteed you're going to see it in the sim. And it's an enormously long tail. You know, I've heard Elon describe this as if you could perfectly simulate the real world, it may be proof that we ourselves live in a simulation. So it may not be actually possible to simulate the real world entirely. And we don't try and like chase that long tail.

24:49What we do is we capture the 80-20 rule. We capture the 80 % in the sim. And then we know when we go to real world testing, we're not wasting our time learning those silly lessons. And then we're actually getting into the details of what we can only find out in the room. Given the sense of nature of defense data, what are some of the unique security challenges that you run into in terms of having to safeguard this data as it's flowing through the mesh? Yeah, I mean, I think the DOD has done a really good job of thinking through. I mean, there's historical context, decades of it, of classification levels, how to run a secure network.

25:25That's NSA's job to write that policy fundamentally. I think for us, the challenges then become how do you operate in that world? So let me give you an example. I've got systems that are in the Middle East that are defending U.S. bases today. Those systems are seeing data from adversaries that are trying to do nefarious things. How do I retrain the model for those systems based on learnings that I'm getting in the field? Do I have to push my model training architecture all the way out to the US base in the Middle East where that data is being collected? I sure hope not, because then I've got to get NVIDIA GPUs and a whole server set up out in the Middle East.

26:04That's probably not feasible. Can I get it back to Andrel headquarters in a way that every Andrel engineer can see? Absolutely not. That is not permissive, and that would be not what your customer would allow. So there's a middle ground we've got to find somewhere. A lot of this gets into our secret sauce of how we operate and how we work. But we've got to figure out, okay, we've got to do training fundamentally at the edge. Not everyone's going to be able to see all the data. That infrastructure has to be portable. That's why we don't depend on any cloud provider. Those sorts of things become a lot of the challenges we have to work through.

26:33When you're doing something like training at the edge, does that end up getting fed back to a central location? If it can be, right? And we've brokered interagency agreements where data collected from one part of the DOD or one agency can be shared with another. But those have to be brokered point to point, case by case. And then we can do that sharing. But in other cases, the data may never, ever come back. And that's a good thing, right? That's the nature of the work we do. A lot of limitations you've got to sort of try to navigate. Yes. And then the next question is like, all right, well, I've got to upgrade to the model training architecture.

27:11How do I push it? How do I do fleet management? Fleet management is a huge thing we think about. And it's going to be an even bigger concept for us as we increasingly proliferate with more and more animal systems. So how do I know the last time I saw a robot, what was the version of Lattice that was running or the errors through? How do I proactively remediate those issues? And how do I push forward the latest upgrades? You know, we've got this concept where we can stage the upgrade forward, like we can stage it at a node. And then if a robot connects back with that node, we can say, hey, we've got an upgrade for you.

27:41I'm going to send it on over. So there's a lot of technology we've built to do those sorts of things. How often do you have to push upgrades? We're pushing upgrades all the time. And again, it comes down to, you know, our rate limiters is working closely with our customer and their comfort level. So if we have a system that's in R &D, then we'll be pushing upgrades very quickly because both us and the customer understand that we're in R &D mode. If we have a system that's operational, these are life preserving systems. We go through an extremely rigorous set of tests. Often it's a real world test at a test range.

28:12You know, it's got an operational test. It's very rigorous for when that system is that code is a lot to go forward. And these are some of like the real material differences between, you know, commercial world and DoD that we have to build for. So, you know, we have a concept of named releases, right? Just like, you know, Linux does where we will support that release for a long period of time. We're making that commitment to a customer. If there are issues found, we patch that issue. We go back and patch the issue and the release. and then we'll forward deploy that bug fix with the customer's concurrence.

28:44Do you have to also take into consideration, like if something's operational, the sort of like the time it might take to like upgrade and like if there's like a reboot, restart process that could impact essentially the person who's using that thing? Yeah, exactly. So, you know, if I think about one of our sites, we'll have to coordinate with them when the right time to do it is. And so they'll work that into their shift, essentially. And then we have to basically have operator training, right? So if we're sending out new updates, that's materially changed the way the system is used. You know, we're printing out sheets.

29:17We're giving it to the users. We're having trainers go out there to help them get familiar with the new changes. You know, we did a massive overhaul of our command and control interface. And this is one of the cool things about working with Android for our customers is because they don't have to pay for this. They'll get this for free. but you know what we had to do for one of our systems is we had to run both the old system the old c2 system and the new user interface side by side and the user had to be able to use both until they were comfortable switching over to the new one yeah i mean i get frustrated enough when like i have to restart my slack and zoom what am i like all the buttons have moved yeah yeah but it's something i'm like my life depends on essentially yeah exactly so you're now you know releasing the Lattice SDK.

30:01I guess like what was the motivation behind launching that and what are some of the things that I could do with it? And the motivation for launching that, I mean, there's two fundamental problems we're trying to solve. The first one we mentioned at the top of the podcast, which is that traditionally DoD systems are not built with interoperability in mind. They are built in silos. They're built as, you know, I'm building this system and then I'll think about how to connect it later. And the solution to that is not everyone has to coordinate at all times. Like that's a crazy thing. Like the DoD is building thousands of systems at any given time.

30:30The idea that we're all going to like talk constantly, not going to work. You know, our belief is the real answer is let's put forward a reference. Let's purport a specification. And we basically say, if you adopt this specification, you get compatibility for free. And we will keep the specification alive. We'll keep it modern. We'll incorporate all the feedback. And that basically decentralizes this problem of how do we get compatibility. So now that we have the ability to be compatible, how do we move data between each other? And that's where the mesh comes in. And that's the second part of what we're releasing.

31:04So, you know, to answer your question about what you can do with it, if you are a builder of a robot, you can get compatibility with everyone else in the ecosystem and ultimately make your robot more useful. And that's what we've seen with a lot of the launch partners that we're, you know, coming out with. They can make their system more useful, their system more applicable to problems that our customer wants to solve by adopting this technology. And what they get with that is compatibility and the way to send and networking, the way to move data between each other. And that's what they'll be able to do.

31:32Yeah. So you're basically solving like the interop problem rather than around like a sort of like a standardization of how you're going to do interop. That's right. Yeah. And, you know, we really looked at and learned from how did the web world deal with this, right? Like how did the browsers become interoperable? How did the TCP IP stack, USB stack, how were all those things birthed, right? Like plug and play. You know, I went back and watched the old plug and play videos from Microsoft where, you know, they announced that people like their minds were blown when the printer plugged in and all of a sudden it just worked.

31:59And you're like, I can't believe that's what the nineties were like. I'm old enough to remember those days. Do you remember it? Blue screened actually. I went back and watched that video and the first time they plugged it in a blue screen windows. Yeah. The blue screen to death. Amazing. In terms of being able to bring this Lattice SDK as something that someone external to Andrel can use? What were some of the challenges with essentially packaging that up? It's different to have something that you're using and you built internally, everybody knows how to use and you're deploying against versus like, here's this thing that someone else that we never talked to is going to now roll with.

32:33That's right. And I think we're still on that journey. Truth in advertising, Sean, we are still early in that journey. But the first part is realizing no privileged access, Right. So you can't backdoor and get access to your favorite engineer on the other team to answer your questions. You know, we've got to like start working through the doc site. And if the docs don't have the answer, we've got to like, you know, submit that as an issue and fix the doc site. So, I mean, I think there's a famous Jeff Bezos memo from like 20 years ago where Amazon had to go through this to build fundamentally what turned out to be AWS.

33:04I think we are going through that journey right now. You know, we're lucky in that we're launching with a set of launch partners that we have trusted relationships with. And as we onboard new partners into the ecosystem, we're going to have, you know, second party basically relationships with. But our goal is to get this to the point where anybody can take it off the shelf and start using it. That's the Lattice Partner Program? That's the Lattice Partner Program, exactly. And sort of the main organizational benefit there is feedback for how you continue to evolve this product? Yeah, so the partners get a bunch of different things.

33:38One is first class support and kind of a privileged relationship with our team. The second is access to our simulation infrastructure. So we'll be spinning up stacks for them. They'll be able to use our sim to integrate their systems in and be able to go back and forth with us. The third is basically kind of business development, a privileged business development relationship with us. Is this primarily targeting other companies that are working on defense products or could this also be other companies that happen to be working on other different types of products? We're a defense technology company at the end of the day.

34:09So our mission is defense. But I'll tell you, you know, one of the other hats I wear, Sean, is I run the space business at Andrel as well. And one of the things I'm super excited about, I call it the team of super friends that we're putting together in space, is there are a ton of companies that are commercial space companies. And actually, two of our launch partners, Apex Space and Impulse Space, are commercial space companies that, you know, they may not have the expertise in the defense market that we do. But by coming into our partner program, they're benefiting from our expertise and they are integrating with our system to make their commercial offerings more readily available to the DoD.

34:43And I think that's a huge benefit to a ton of companies that are defense adjacent, dual use, have commercial use cases, defense use case, maybe offer a component, but not the whole system. Coming into the ecosystem makes them more available to the defense market. Yeah, I mean, we were talking about some of the engineering challenges of remote deployment in these defense scenarios. I mean, they get even more complicated when you're talking about remote deployment to something that's interstellar. Yeah. Luckily, the space community has been dealing with things interstellar for a long time. But how does that then plug back into the DoD's Link-16 network, for example?

35:17That's not a thing that a commercial space company is going to want to concern itself with. And that's something like you come into our mesh, we can take care of that for you. Can you talk a little bit about Andrew's involvement in Desert Guardian and the Valiant Shield military exercises? What was your role there? Yeah, I'll take them one at a time. So Desert Guardian was a tremendous opportunity for us where we had a number of vendors that all produced distinct systems. So think radars, cameras, radios that could detect electromagnetic signatures. Socom, our customer, brought them all to a site and said, we want all this to work together.

35:55And the way we're going to get this is instead of issuing two-year-long contracts where we specify the requirements up front and no one really knows what's going to happen and you ask for something two years down the line, you get something different. You guys are all just going to basically run a hackathon and you're going to use the Lattice Mesh and the Lattice SDK and be able to generate interoperability. And that's what Desert Guardian was all about. We learned a ton. I wouldn't say everything worked perfectly, but everyone came out with the result intended, which was systems started working together faster than anyone ever thought possible.

36:27And I think that was kind of the first kind of set of proof points to us that like, hey, this is really valuable what we're doing and what we've done. You know, every Android system, when it comes off the line, works together. And it's not like I'm like centrally coordinating with all these disparate teams. They just know to adopt the software and then you get the, you know, the interoperability. that's what we started creating now with third parties who we'd never met before. Valiant Shield, very different story. So the DoD runs huge exercises where they are training themselves. And really the purpose of these exercises is to go through the praises and train for these hugely complex scenarios, right?

37:04What would an operation in the Pacific Theater look like that you can't do through SIM and it's literally working people through their paces? Valiant Shield, our participation in that, we acted as an integration in an operability layer to enable systems to communicate with each other, to enable that exercise to take place. In terms of your engineering teams and when people are brought into the company, and say they come from a commercial world, what is one of the biggest surprises that they run into when trying to adapt what they know from the commercial world and engineering practices there to working in this sort of defense-centric world?

37:42Yeah, great question. Let me give you a few different answers. So the first one is, if you think about the commercial world, you've got a set of economic relationships that don't exist in the defense world. First of all, there's like a profit-seeking relationship where typically a commercial company has something that's generating a lot of money. I call it like something that's generating a geyser of cash, and you're trying to pump that geyser. Ideally, yeah, yeah, yeah. And you're just trying to pump that guys are harder and harder and harder. That's not how the defense world works. So a lot of those like motions that they're used to very different from us, right?

38:14Our customer is, you know, we don't have a profit seeking, you know, our customer has the budget of a nation behind them. And they're really concerned with like, you know, are we safe? Are we credibly deterring war? Are you know, they have a whole different set of considerations, right? And it's to be noted, like the US government is a monopsony, right? It's the only buyer. And so you've got a very different economic relationship with your customer that takes people a little bit of time to get around. You know, you have things like because of safety is such a high concern, right? Like you can't just transplant like an app store concept from the commercial world and be like, yeah, let's just run an app store in DoD.

38:52Like we don't want that. Our customer doesn't want that, right? You can't have someone like ship an app that causes a weapon system to become no longer operational. This is not okay. So there's just a level of rigor and a mindset that's very, very different. Then the other thing is that I think people love about coming here is just the sheer variety of use cases that we're working on. I mean, I can't think of anywhere you could go right now where you can one day be working on a submarine that's doing sea trials in Australia, and then turn around and talk to an air spacecraft that launched and then turn back around and talk about, you know, sentry towers that are defending US bases, that just the sheer variety of domains, sheer variety of technologies that we get to work on is very different than, you know, a company that kind of just like does one thing.

39:38Because of these, you know, added constraints, does a lot of like off the shelf, you know, tools of the trade not work, like you talked about, you know, rolling your own PubSub, like in you tried existing, you know, PubSub systems up there, but for whatever reason, maybe they didn't meet your specific requirements. Is that the case with a lot of off-the-shelf products? The way I disguise this internally is we decompose our stack into what's called a domain-specific layer and an infrastructure layer. And what I say internally is anything in the infrastructure layer, we better have a darn good reason why we're going to roll our own.

40:11So like how we're going to think about storage and databases. You better give me a really good reason why you need to roll your own database. How we're going to think about deployment infrastructure. How we're going to think about telemetry, right? Like those are all things you'll find at any bang company, those are things we're going to use off the shelf. And we're going to make a real clear buy-build trade-off. The things that are in the domain specifically are how we think about AI, how we think about networking, how we think about command and control, how we think about autonomy. We are often going to roll our own because it requires us to have a deep partnership and understanding of our mission that is not easy to see replicated in the commercial world.

40:47So what's next for the Wattice SDK effort? I think for us, the key is making sure that we are keeping this evergreen. We are responding to, you know, you want to do product-led growth, right? You want to be responding to customer feedback, and we're going to start to open up more and more of the Lattice ecosystem. So, I mean, what we've opened up is a very tiny fraction of the Lattice ecosystem because we wanted to ensure quality against that. And we wanted to ensure that, you know, it was kind of a hit. People adopted it. If we see that happening, you're going to see us open up more and more.

41:21For example, we did not open up any of our autonomy capability. But if we see adoption, we're going to start to be more willing to open up more of the stack. Do you think that's going to be like a trend that other companies sort of in the government and defense space take? I think Palantir has, over the last couple of years, also kind of taken a similar path where they're opening up a lot. Because presumably you learn a lot of really specific things working within the sector that are generalizable to other you know, companies use cases and domains? Yeah, I think you're seeing us and Palitre especially lead the way in this regard.

41:55One is, you know, sunshine is the best disinfectant, you're going to learn a humongous amount, just getting people to look at this. The second is, you know, I talked to our customers about this a lot. We are not trying to create vendor lock. The reason we have a core common stack is because it's critical to our cost structure, it's critical to generating interoperability, it's critical to all these good things that we and our customer want, but we're not trying to lock people in. And I think vendor lock has been a huge pain point for our customers. And even when they look in the commercial world, they're like, yeah, Apple has this awesome app store, but they basically locked everyone into it and they're rent-seeking on top of it.

42:30And there's court cases going on about this. The DoD cannot afford to have this happen. And so by open sourcing this stuff, we're showing good faith to say that is not our objective here. And so I think you are going to see a lot more of this in defense. Well, Gogol, thanks so much for coming back on the show. John, I had a terrific time. Thanks for having me. Awesome. Well, cheers.

From the publisher

Anduril is a technology defense company with a focus on drones, computer vision, and other problems related to national security. It is a full-stack company that builds its own hardware and software, which leads to a great many interesting questions about cloud services, engineering workflows, and management. Gokul Subramanian is Senior Vice President of Engineering

The post Anduril with Gokul Subramanian appeared first on Software Engineering Daily.

More from Software Engineering Daily

All 195 episodes
Anduril with Gokul SubramanianSoftware Engineering Daily · 43 min
Listen in VO