Episode 96

Swati Swoboda: Metaprogramming Shopify, Rails Love, and the AI-Accelerated Engineer

With Swati Swoboda, Development Manager for Vault in Shopify's Office of the CEO
January 29, 2026

What we talked about

Swati Swoboda traces her path from an eighth-grade research project on a library computer to leading development for Vault in Shopify’s Office of the CEO:work she calls “metaprogramming the company.” In this conversation, Swati and Federico dive into the arc of modern engineering: from Classic ASP and hand-editing production files to Rails’ elegant conventions, from code reviews to reading far more code than you write, and from individual craftsmanship to orchestrating AI agents at scale.

Show notes

Swati Swoboda’s job title, Development Manager for Vault in Shopify’s Office of the CEO, sounds technical until she explains what it actually means: she builds the software that controls how the entire company operates. Shopify’s CEO Toby Lutke reviews roughly a thousand active projects every four weeks through the system her team maintains, which is how a remote-first company with no central office keeps its founder in the details of every major decision.

What we covered

  • The Vault is Shopify’s bespoke internal operating system: a project alignment tool, intranet, and live stream platform rolled into one. At any given time around a thousand projects live there, and Toby reviews half of them every four weeks. Every project goes through approval gates at prototype, build, and release, which Swati describes as a mechanism for transferring accountability upward so engineers get more autonomy in return.
  • The GSD system inside the Vault requires engineers to document projects and get sign-off from senior leaders before proceeding. Swati is direct that this is bureaucracy, but she argues it is the least bureaucratic form of bureaucracy possible. The alternative is not no system; it’s a worse system. At Shopify, the gains in alignment and avoided rework justify the friction.
  • Swati traces her interest in software to eighth grade, when her father sat her down at a library computer and told her to type Yahoo.com into the address bar. Watching search results appear for “Bolivia” made her want to understand how anyone had built something like that.
  • Her path to Rails went through Classic ASP, then Java at Blackberry, then C# and .NET. She fought Rails when she first joined Shopify because she loved Visual Studio’s editor and felt lost without autocomplete. What converted her was realizing Rails didn’t need the editor as a crutch, the conventions are so predictable that she could write or read it almost anywhere, including in a console or plain text editor.
  • On AI, Swati’s team of eight was generating around 100 pull requests a day at the time of recording, most of them AI-assisted. Her view is that engineers have effectively become engineering managers: they hold the business context, articulate the problem, direct agents to solve it, and review the output. The skills that matter most now are communication and understanding why something is being built, not just how to write the code.
  • She draws a parallel to accountants and calculators: when Excel arrived, the number of accountants did not fall, more companies could afford to have accountants. Her prediction for software engineering follows the same pattern: fewer engineers per company, but far more companies with engineers, and a collective increase in the total number of engineers working on harder problems than before.

About Swati

Swati Swoboda is a Development Manager for Vault in Shopify’s Office of the CEO, where she builds the internal tooling that shapes how Shopify operates as a company. She previously led the shipping platform and foreign exchange multi-currency teams at Shopify.


Episode 96 of the PreVetted Podcast.

Full transcript

Federico Ramallo (00:01) Welcome back to the pre-vetted podcast where we spotlight extraordinary people and remarkable talent reshaping our world. Our guest today is Suati Suoboda. She’s a development manager for Vault in Shopify’s office of the CEO, where she partners with leadership to make a program how the company operates. Before that, Suati led the shipping platform and earlier the foreign exchange multi-currency teams.

owing complex, high impact surfaces of global commerce. She is also known for a builder’s mindset, building tools to get things done and for sharing pragmatic takes on engineering culture, co-reviews and leading through tough seasons. Swati, welcome to the show.

Swati Swoboda (00:51) Thank you for having me. I did not know I gave you that intro. I was like, that’s cool to hear.

Federico Ramallo (00:56) It’s a… mean, we can talk a little bit about the intro because I try to put a lot of effort on the intro because as a doer, you know, I do stuff, but I sometimes I do stuff and I don’t know the names of the things that I’m doing, if that makes sense, right? And then when I realize I connect the dots of, you know, what I’m doing has a name and has a following and it’s like…

I arrived to the same conclusions that a lot of group of people, right? And having those shared experiences becomes important, right? So for me, the intro is a great way to connect and share what you’re doing with the audience, right?

Swati Swoboda (01:36) amazing. That’s cool.

Federico Ramallo (01:38) Awesome. So, Swati, tell us about your origin story. What first pulled you into software?

Swati Swoboda (01:45) gosh, I was about 11 or 12 years old, whatever you are in eighth grade. I had to do a paper on Bolivia. I was at the library. There was only three books.

or references in the encyclopedia or the encyclopedias about Bolivia. So I went to my dad who was using the computer at the library and I told him, said, Dad, we need to go to a different library because there’s no more books on Bolivia at this library. And then he tells me, like, sit on the computer next to me. Back then, the computer time was time, maybe, I think it still is at the libraries. So we had an hour and he’s like, just use the computer to find information about Bolivia. I was very confused initially.

because back then you just get a webpage and and I remember as a blue backer and you just click around you try to figure out what to do is like the library’s own page if you will and I’m very confused and then he points me at like click on that thing at the top the where you enter the URL and type in Yahoo.com and I did that I’m like well okay now what type in the search bar what you’re looking for and I did that and then search results came back and I was like whoa

Like how is this working? Is like someone, when I type in Bolivia, is someone like quickly pulling up resources or something and returning results to me? Like what is going on here? And I wanted to know how that worked. And that’s how I knew how to do it. I was just curious on how the hell did someone build this?

Federico Ramallo (03:13) Amazing amazing. Yeah, I mean the the We get used to those things right you we used to you know Now we type everything and we can find all the information of everything everywhere, right? ⁓ But at that time, know when before search engine, right? We couldn’t imagine all of all of the development that that happened after that,

Swati Swoboda (03:14) Yeah.

Yeah.

Yeah, like back then, browse, there used to be a section in Yahoo where you could see the new websites they have added. Like this was pre-Google, Google didn’t exist. Back then it was Yahoo and Excite came out and Ask Jeeves was all the rage for a little bit, which is now basically AI. And that’s a lot of fun. And then you used to have search engine aggregators where you’d search all the search engines because they’d all give you different results. So it was very, I’m very old.

Federico Ramallo (03:59) experience.

Swati Swoboda (04:00) Yeah

Federico Ramallo (04:02) Yeah, I feel the same every time I see my white hair. ⁓ Yeah. But I didn’t realize this experience. So.

Swati Swoboda (04:06) Yeah. Yeah. It is.

And that’s how I kinda got curious. And then for web design or programming web apps itself, it actually was Basecamp. Back then Basecamp, or 37signals, I forgot what they called themselves back then, was a web design agency. And they had put out a page, I guess, or a demo or something of how think FedEx’s website could look. And they had come from it like a very product and UX lens and how

small things would have made the page so much better. And that’s when I realized how much power, if you will, or how much impact an engineer can have in how people experience things and how much tooling and how it surfaces itself can really change how our day sometimes goes. Because I’ve certainly tried even today to buy a shipping label from various websites and so forth. It’s like a painful exercise. And it’s like, wow, like someone

We could put more energy into this to make it better, to make it less pain collectively in the universe. And that is almost a responsibility that we have as engineers to do.

Federico Ramallo (05:17) Yes, we are on top of giants’ shoulders, right? And there’s so much that they built that allow us now to do so much more.

Swati Swoboda (05:24) Yeah, absolutely.

So much more, yeah. We’re on top of giant shoulders, but there’s also so many small tools that we use everywhere, and each of them can be better, and that’s all made by an engineer somewhere.

Federico Ramallo (05:41) Right, right for me the ultimate goal of the engineer. I mean this is more on the philosophical side, but it’s about Making something that people will use what’s the point of building a bridge or whatever tool if nobody’s going to use it?

Swati Swoboda (05:55) Yes, absolutely. Making something useful. Yeah.

Federico Ramallo (05:57) Yeah. Yes, yes. mean,

at first, my first stage has been building something that is beautiful on the efficiency, on effectiveness, how fast can I build something that uses as least resources as possible, But then I evolved towards impact to the people, right? Where you can…

sacrifice efficiency in order to help people, think it’s a worthwhile pursuit, right? Yeah. And that’s kind of the idea of Rails, right? Where it’s not the most efficient language on resource, but it allows you to build something where you can do so much more innovation and impact to the users, right?

Swati Swoboda (06:23) Endeavor. Agreed. Yeah.

Yeah, I’m not even sure if efficiency argument’s the right one. I Shopify runs on Rails. It has a lot on there, so I don’t buy that argument. I do find that Rails fits my brain a lot better. It wasn’t always this way. I didn’t fall in love with Rails right away. I fought Rails, probably. I didn’t learn Rails until I joined Shopify. Before that, I was primarily in C Sharp. And I realized up until then, the thing that I loved was not like a language

Federico Ramallo (06:44) Right.

really?

Swati Swoboda (07:08) or

framework, I just love my editor a lot. Say for example, C Sharp came with Visual Studio Professional. This is before VS Code was a thing. It has a pretty freaking amazing editor because it made up for all the flaws in the language. Now, switching to Rails was a big challenge for me because I didn’t have an editor and I was like, I don’t know how to do anything anymore. And then I realized that I didn’t need an editor to use a language.

Rails is something I feel like I can use in anything. I can use it apparently with Cloud, you can use it in console now, and I could use it in Notepad. I think it’s like, like Rails itself is powerful. It makes things so easy that I don’t need it to be, I don’t need it to be supported by an insanely powerful editor, which makes up for all of its gaps. This Rails just works in my head.

Federico Ramallo (07:58) Right, right.

The autocomplete features, all of those are great, but it’s a way to…

Swati Swoboda (08:08) It’s a crutch, yeah.

I don’t know, I haven’t seen PHP for a long time, but at least 15, 20 years ago, PHP had like three different styles of naming a method. It could be either all caps, could be snake case, could be camel case. There was no convention, if you will. You couldn’t predict anything. You always have to reference docs or rely on autocomplete. With Rails, I find, it’s like, I typed something. It might exist, it probably does. And it’s like, it does. Amazing.

That’s great that way. I don’t have to spend as many cycles memorizing things because it’s very natural, if you will.

Federico Ramallo (08:46) Yes, it’s one of the things that I, the way that I describe myself is I’m a Ruby on Rails developer. I love Ruby on Rails, but I use JavaScript because some projects require it, right? Or the customer require it, or it’s outside of my control. So I kind of deal with it, but I mean, if I have to choose, I choose Ruby. I love the Ruby language, right?

Swati Swoboda (08:58) Yeah.

Yeah.

Me too.

Federico Ramallo (09:14) There is this idea of enjoying the process of writing the code, which I find very appealing. And then when you are able to describe a problem, a domain knowledge that happens in real life, you can describe it in such an elegant way that I just enjoy that.

Swati Swoboda (09:35) Yeah, for me, in addition to writing, it’s also reading, especially with AI now, as I definitely read a lot more code than I now write more code. And I find Rails to be quite enjoyable to read.

Especially when it’s well written, like it’s prose, it’s poetry and it’s like, ah, like this is nice, you know, you’re reading a novel and not something that feels like burdensome. So I almost, mean, I have feeling that it’s easier to use Rails in the age of AI because it’s so much easier to read than other languages that I haven’t come across because it’s usually more compact. Something I would do in Ruby on Rails is a lot smaller in actual size than

say C sharp or Java or JavaScript or any other language really it’s just I feel like I’m in those I’m often reading a lot more syntactic sugar versus like the actual logic whereas Rails I feel like I’m just reading like logic.

Federico Ramallo (10:28) Right.

and when you can start removing symbols and syntax and you can just make it so descriptive it’s so beautiful to see I would spend one of my scenes that I would spend a lot more time than I should on just naming variables with my team because it’s like I want to make it I want to find the right word for the context and the right usage

Swati Swoboda (10:41) Exactly.

Federico Ramallo (10:57) Yeah, and sometimes there are nuances on the language that allows you to just, know, one word might not be quite exact fit, but you can find other words that are described better what you’re trying to do, and they’re more compact. you know, the elegance of that, it’s something that I enjoy very much.

The, used to, my first coding language was ASP before .NET.

Swati Swoboda (11:23) Mine too, Classic ASP! That was

my first one! Response.write everywhere! ⁓ my gosh, I have barely met anybody else who did Classic ASP first.

Federico Ramallo (11:29) You

It’s, I mean, I like it because it was my first experience. was my, you know, my first startup start learn code code with that. ⁓ But it was kind of PHP, you know, it was inline everything and it would get messy so quickly.

Swati Swoboda (11:44) Yep.

Yes. Yes. No protection.

Yep, I learned from Classic ASP. taught me SQL injection. It taught me man the middle attacks. It taught me what happens when you don’t sanitize things. It was amazing. I learned so much from Classic ASP because everything that bad that could happen happened. And it was amazing. back then, like, I think I used, I think Frontpage back then or Notepad. Well, I don’t think I used Frontpage for a while and then moved to Notepad++ eventually. And then Dreamweaver as well and FTP.

Federico Ramallo (12:10) Yes.

Swati Swoboda (12:22) your files and had no revision control, those were wild days.

Federico Ramallo (12:27) One change and everything could blow up, right? Yeah.

Swati Swoboda (12:29) Yeah, and everything

was tested on prod. This is amazing. We have come a long way. I don’t think people realize how far we’ve come in engineering sometimes.

Federico Ramallo (12:37) Yeah, and with the notepad editing the production file while refreshing on the other side to make it work. Yeah, yeah, I’ve done that.

Swati Swoboda (12:42) Yep. Yep. Yep. Yep. Yep.

Yeah. Yeah. yeah. SQL injection was probably the best one. Someone deleted all the records from my database by just ending it with the delete all is great. So that was fun. Yeah.

Federico Ramallo (12:57) So my natural thing was from ASP to eventually well actually was a long thing but I went from ASP to work at Microsoft so there was that and I was the Microsoft boy I Launched dotnet back then the first net and SharePoint and all that stuff and office But eventually I moved to PHP because I thought well, you know ASP PHP, you know, it’s kind of the same thing, right? and I found

Swati Swoboda (13:12) Nice.

Federico Ramallo (13:24) that ASP was so much cleaner, so much better than PHP. PHP is a mess compared to that, right? But… Yes.

Swati Swoboda (13:29) Yeah, but it was free. Classic ESP was hard to work on. The servers were more expensive.

Hosting was expensive. PHP, everything was so much cheaper to get. There was such a big ecosystem and community around it. But then I think eventually everybody just moved to Python.

Federico Ramallo (13:39) cheaper yeah

Swati Swoboda (13:46) because that was bit of more sanity, more sane than both PHP and affordable compared to classic ASP or .NET to use.

Federico Ramallo (13:55) Right,

right, and you you have a bug and you get dragged into so much code and pages that was so hard to follow. I realized I have to find, there has to be something better, right? That’s how I came up with Ruby on Red, right? That’s how I found about Ruby and switch immediately to Ruby, yeah.

Swati Swoboda (14:12) Wow, it

an immediate switch for you. I think, I was, I usually adopted the languages of the companies that I was at and for a while it was, I was a Blackberry, so was Java for a long time. And then I switched to a .net shop, so I adopted .net and then I decided to go to another .net shop and I followed Ruby on Rails, but I didn’t really pay much attention to it at all.

until I came to Shopify and I had to even learn who all the people are in the community because I was so deep into .NET and I loved it. I loved everything about C Sharp and using the .NET framework, I really did.

Federico Ramallo (14:53) Right, right. C Sharp is compiled, right? So you have to compile it in order to use it, right? Yeah.

Swati Swoboda (14:57) Yes, yes, yes.

And it loves his design patterns. C Sharp loves all of his design patterns and it loves files. It’s very different than rails. Very, very different.

Federico Ramallo (15:09) Right, right. Yeah, because of my career of always interpret the languages, for me was an easier thing to accept. Actually, I have trouble compiling code, right? Because, right.

Swati Swoboda (15:19) Yeah, I can’t compile code anymore. It’s torture

now. I tried writing C Sharp maybe a year or two ago and I just could not. I was like, this is way too painful. Why would anyone do this to themselves? So, yeah.

Federico Ramallo (15:34) Right, right. Yes, I think Ruby is a one way street once you get in, you’re hooked for life.

Swati Swoboda (15:39) Yeah, it turns out, yeah, and here we are.

Federico Ramallo (15:42) Yes, yes. So you’re talking about metaprogramming, Shopify, right? What does that actually mean?

Swati Swoboda (15:47) Yes.

So this happened a couple of two, two, three years ago. I was working happily away in the shipping team at Shopify and I had the opportunity to come work to metaprogram Shopify. I was like, I don’t even know what that means. Like what does it mean to metaprogram a company? And my understanding is it’s like, I work on the tooling that decides how the company works.

So for example, I work on the Walt team, which houses our project management system. So we have our own bespoke project management system and project management is probably not the right word for it because it’s not project management as much as project alignment system. So to give you context, we at any given time, we have about a thousand projects running in this company and all of them sit in the Walt and every four weeks, Toby reviews them. Like all of them.

Over a period of two three days. Well, I guess he alternates So I guess he reviews every half of them every four weeks and he uses the system to build that because it contains Alignment, this is a founder led company and it if whatever you’ve heard about found remote happens here

Federico Ramallo (16:38) Wow.

Swati Swoboda (16:52) So what that means is Toby is in the details and every leader is expected to be in the details. And while we as engineers, we have a lot of agency and autonomy, we earn that by aligning in Vault through GSD system. So for example, if I want to work on a project, I don’t know is going to launch Sidekick or launch multiple currencies on Shopify, I’d make a project. It would be approved by a senior leader on the Vault. There’d be like a receipt, if you will.

And then as you move through the phases of prototype build release, you’d have a review every single time. What that does is it lets you transfer accountability to the senior leader. So it’s like, okay, like I got a review, it’s been approved. It lets someone else confirm the risk of a project, which gives you in turn more autonomy because you’re like, okay, like I aligned with this project. We’re not a company where like, okay, Toby goes,

like

somebody launched currencies or make us global or something. And I decided to this project, it never comes to his attention to it because all of this ends up mattering. He’s an engineer at heart, in my opinion, and decisions that an engineer makes can limit us in the future because something could have been built in a way that does not fit into a vision or does not allow us to pivot when something like COVID happens or something like AI comes in the world. And being in the details allows you to make

decisions faster and better decisions. And something like GSC facilitates that. And that’s just one part of the vault, which impacts how the company runs because everybody is

effectively forced to put all their projects in there and get alignment in there because well, the CEO reviews them and that controls that part of how do we work culture in there. But then Walt also houses our internet, it houses our Shopify TV where we watch live streams and things like that. It houses a whole bunch of other fun tools and so forth. it is a part, because we’re a remote company, remember, we don’t have

We have offices or we call them ports. People can come in and work in like four or five cities or maybe five or six cities. But it’s a fully remote, remote first company.

And so our office ends up being something like the vault and it’s like how do we keep sustaining that because there’s so many companies that have our TOs and so forth to be How do we create a culture which works for the company and the people? So that’s that’s what metaprogramming at Shopify for me is like, okay building a tooling to run a company The way that the founder wanted to run

Federico Ramallo (19:10) Right.

Right, right, and it comes to what I was talking about being obsessed on efficiency, right? Because if if Toby is meticulous on the details, then he can make the company much more efficient and align the effort of everybody towards the same goals, right?

Swati Swoboda (19:50) Correct, yes. It’s how he can set culture. It’s like this is how I would like the company to work. A quote that he often repeated to me in the beginning, it’s like we’re building for not the company that we have, but the company that we want. Which is a way for me to say, okay, this is a tool that we can use to actually change culture. Sometimes it’s bit slower to do it this way, but it is impactful because the company is nudging you to go in this direction.

Federico Ramallo (19:54) Right.

Swati Swoboda (20:15) adding friction to this, it’s removing friction from here, which can over time change culture.

Federico Ramallo (20:21) Right, right. mean the…

when you see the values of the company, written on the wall or remote first company doesn’t have a wall but you get the idea, right? But they have vault, So if they’re written on the wall but nobody reads them, nobody leaves them every day, then they’re kind of lost. It doesn’t make any sense. But the best way to change the company culture is by…

Swati Swoboda (20:30) No, but they have a vault. So they don’t have a wall, but they have a vault. yeah.

Yes.

Federico Ramallo (20:49) values, which are the north of the culture, if you like. It’s how you live every day. And when you have to make a decision, you look at the values and then you can say, based on these values, does those values help me make the right decision? It should provide you clarification, clarity. So I can see how focusing on meta programming the company,

the impact that you could have on the comparative culture, it’s huge, right?

Swati Swoboda (21:17) The company culture, what work we get done, how we get done, it’s really important. We care deeply about commerce, we care about our merchants and we don’t like losing trust with them. And a way to lose trust with merchants is then someone launches something and then it turns out that leadership was not aligned with it.

And that’s a kind of a thing that we try hard to avoid because at the end of the day that impacts much of us because something went in front of them and it caused a lot of havoc and now has to be rolled back. And it turns out that no, our leadership had context which they would have known it wouldn’t work or they didn’t want it or so forth or whatever. Right. So that’s the kind of thing that we need to do. It is meant, it is a way on how we maintain trust with the,

their roadmap.

Federico Ramallo (22:05) Right, right. And I was early talking about my experience at Microsoft. And one of the things I learned there is that they had different teams doing different things, but isolated within each other. it was so, there were so many overlapped efforts that they built in an acronym, that is search engine, because sometimes you have the same acronyms used for two different things. ⁓

Swati Swoboda (22:31) Crazy.

Federico Ramallo (22:32) Yeah, and I could see they would build a lot of effort building one tool, and then it was replaced by another tool because it has a 50 % overlap or whatever. ⁓ So much wasted effort.

Swati Swoboda (22:41) Yeah.

wasted

effort and also morale of engineers.

People who love building want to build and not waste time. I don’t think anyone actually wants to waste time. We all want to work on, in my opinion, impactful, meaningful things that can provide fulfillment. So to work on things that canceled or turns out, oh, another team is doing the same exact thing that I’m doing and define that outlay, that’s so demoralizing and demotivating. And that’s one thing. That’s one thing that’s really nice about The Vault. Anyone can go look and you can go just look at all the projects that the companies

working on. They’re all there. They’re updated and you can go contact the people, can go find the Slack channel where they’re all hanging out or whatever and see all the updates of that project, all the resources, everything.

Federico Ramallo (23:18) Right.

Right, and that provides transparency within the organization and allows everybody to align towards the same goal, right? Yeah. And then the other part is the bureaucracy, right? Which again, was a big issue on on Microsoft, I could see a lot of bureaucracy. And when you have a founder led company,

Swati Swoboda (23:32) Yeah.

Yep,

Federico Ramallo (23:47) know, Toby can work on optimizing the bureaucracy to reduce it as much as possible,

Swati Swoboda (23:52) Yeah,

mean, I would say the GST system itself is bureaucracy because at its core it requires you to get sign off and reviews from leadership. So I don’t think that in a company you can get rid of bureaucracy, but you can change the kind of bureaucracy it is, the effort it requires, and the impact it has. Sometimes people are like, well, wouldn’t it be better if we had no GST system? Well, that’s not a reality that the world lives in. You need something.

where things are aligned on. It’s not the question of that we replace it with nothing, it’s never going to happen. You have to replace it with something. So my opinion is that GSD is the least bureaucratic system that you could have and it provides efficiency and the gains are just amazing.

Federico Ramallo (24:37) Yes, yes. mean, the issue that I see with bureaucracies is when it’s impeding innovation, right? When it’s in the way of operating, right? ⁓ But by building a system that allows you to automate and optimize that, then you can reduce it. But you also, as you said, you need the bureaucracy, but not the bureaucracy per se. What you need is accountability and tracking to know what’s going on, right?

Swati Swoboda (24:43) Mm-hmm.

Exactly.

Good.

Exactly. I think the thing that we strive to avoid, there’s a difference between efficiency and waste. Sometimes we have to be inefficient. Sometimes, especially for when you’re trying to innovate into new areas, you don’t know you’re doing, you’re going to be a little bit inefficient. But what we don’t want is waste. Waste is where we learn nothing from it, where we spend a ton of time, resources, working on something that we know to be utterly useless. And that’s what

think the system avoids but it doesn’t but efficiency that comes I think over time.

Federico Ramallo (25:40) Right, right. Well, it’s not about optimizing time, it’s about optimizing innovation, right? So even if somebody builds something that it’s not going to be used, but they learn something from it, then that becomes useful, the learning becomes useful, right?

Swati Swoboda (25:55) Yes, it’s the

learnings that we intend to capture. Correct. Yeah.

Federico Ramallo (25:59) Right, right. And that in order to do that, the trade off is you cannot optimize on time. You can optimize on, yeah. So I digress a little bit with this, but I’ll tell you a story. I have my son, 10 year old, and he wanted a toy and he was bargaining with me about, I have this money and, you know, can you put up the rest? You know, we were doing that. And then I said, OK.

I remember how much money was, but it’s not the point, but I said, okay, I will buy you the toy, but for this investment, you’re going to pay it back on piano lessons, right? And then he did the math very quickly. He’s like, but you’re losing money, you know, it’s cheaper for you to buy me the toy than pay for the piano lessons. And I was like, yes, but I’m optimizing on your learning, not on money spent. He thought it for a second, he was like,

Swati Swoboda (26:53) Mm, I like it.

Federico Ramallo (26:55) Yeah, yeah, yeah, he was like, okay, that makes sense. Move on, right? It’s the same thing here, right? You choose where you want to optimize and then everything else is a trade off, right? You’re going to be less optimal on that, yeah.

Amazing. Yeah, I got involved in learn a little bit about business process management notation, which is a mouthful, but basically it’s about building workflows for businesses, right? So, you know, if you have a pizza parlor, right, delivering pizzas, right? Like the coordination of the cheese, the guy that is grinding the cheese, the guy that is, you know, managing the oven and the guy that is delivering the pizza, right? So all that can become a very complex workflow with messages within.

which allows you to optimize how that works. And when you’re talking about meta programming and vault, I’m thinking you’re doing something similar with a different philosophy.

Swati Swoboda (27:44) Yeah, this is, I think, yeah, it’s very similar. Like, vault, to me, is like, it’s like a map, but it’s also, it’s also how I’d imagine that a dispatching, a truck dispatcher works. Like, when you’ve got a whole bunch of trucks on the road, you want to know their position, and you want to know ETA and all that, but you’re not,

actually driving for them. You just want to know where they’re going. That’s what you have GPS. It’s like a bit of a, it’s called, it’s a thing to be called like a bird watching tool. And it’s to me, it’s the GPS in the truck. That’s what it is. It sends signal back to like, Hey, here’s where I am. Here’s where I am going, presumably. Or, and then sometimes you can report back. It’s like, there’s an accident on this road. Hey everybody, we should probably reroute all the trucks that are behind me to avoid this road. And I’ll seek an alternate route. It helps the

overall company move goods faster from point A to point B. That’s what a lot of engineering is, we’re often just going from point A to point B, well sometimes we’re doing exploration. But that’s what this is, it’s about bringing transparency so that we can observe and word watch in how the projects and work is moving at a tech company at scale.

Federico Ramallo (28:59) Right. Right. And how do you balance out not micromanaging versus providing autonomy to run different projects?

Swati Swoboda (29:08) It depends what you define micromanaging as here. If you describe micromanaging, it’s like, like that I’m going to let Swati make all the decisions about how she’s going to build a tool to run the company. That’s probably not okay, but there is…

My responsibility often, say just working with the founder, often is like, I’m going to build how we do our internal wiki. This is how I’m thinking about it. for example, our wiki is, our wiki’s data is stored in GitHub, like that’s where all the pages are, and then we surface it on the vault. And there’s multiple ways you can do it. You could sync, just download from GitHub and then just surface it and render it on the vault.

as Toby proposed in this case, why don’t you just live catch it? Use proxy. Do not sync anything. Syncing is the worst thing ever. Then you’re constantly stuck in sync nightmares. And is that micromanaging? I don’t think so. From my perspective, he’s allowed to give a say on how he wants his engineering to spend time. And he may have a broader vision that I just don’t know about. And he has been doing it for 20 years. So he can say, we’ve tried that. It did

not

work and things like that. there is, our leadership is allowed to provide input and if that’s micromanaging then Shopify is a very heavy micromanaging company, it’s a very top-down company and we’re unapologetic about it.

Federico Ramallo (30:32) You

Swati Swoboda (30:36) Completely unapologetic, but if micromanaging which I have experienced with other places is like hey, what did you get done today? What did you how many hours did you work this week to me? That’s micromanaging like filling out freaking time sheets is micromanaging to me Even if the goal is to get government credits or whatever and I thought is something I think that’s what I just have to do at all I’ve never had to put a time sheet here So well how I manage my time and having autonomy over that is what I have here. I have high age

But I’ve had to earn the trust to have my agency you earn agency through Well through upper like you’ve had you’ve had you have to earn it. It’s not free You don’t start with like here. We’ve hired you we have hired you to do X now I’m gonna leave you alone and you go do it No, I’ve hired you to constantly align with what we are doing and it is my job to report back It’s like hey gonna work on X. Here’s how we’re approaching and feel free to give a veto if you disagree with it

But normally it’s just like me providing updates like here’s how it’s going Here’s what’s what’s working well and providing you with details and not not taking it like a in offensive way if someone asks Well, what’s give me more details and how you’re doing it because often different people the company have different contexts and they can provide they can clear the fog if you will if If they know what’s going on and we can all work on it together So to me, it’s extremely collaborative and it’s not just collaborative with your peers. It’s

with the entire leadership chain. ⁓

Federico Ramallo (32:04) Right,

right. Well, I think that having an opinionated leader, right, as you’re describing, Toby, I don’t think that that would be micromanagement per se, right? I think that’s a great way to get, know, provide feedback to rest of the company, right? Because…

Swati Swoboda (32:16) Yeah.

Federico Ramallo (32:22) Being able to say how things should be done based on his experience and explain the whys gives you a lot of learning experience. So I think that that’s great. But yeah, I agree that when somebody doesn’t tell you the whys, and is like, do it because I said so, just because, and then you don’t understand the whys, then that could become a micromanagement thing.

Swati Swoboda (32:30) It does, yes.

Well, it depends. depends on whose responsibility you think it is to uncover the lie. So when I joined the team, Duncan Davidson onboarded me and he said there are times that I’m going to disagree with what I’ve been asked to do. And I have a couple of options there. I could either be like, no, Toby’s wrong and I’m not going to do it. Don’t recommend that one. The other one is what context do I have that I am not

explicit about that he does not have. then the flip side of that, what context does he have that I just don’t know? So I find that often when it comes to disagreements, it’s not that we disagree because someone’s a better engineer or something. It’s because we don’t, we think that the other person has context or knowledge that they just don’t. So it’s often about uncovering context. Now with busy guy Toby, CEO, founder, I’m not always able to ask him it’s

Federico Ramallo (33:15) Great.

Swati Swoboda (33:42) like

why because there’s only so much time so sometimes it’s like okay he thinks this way and then it’s always like working back like what

are the set of things that could lead him to that conclusion and how can I get more information about it. So it’s often a lot of digging. I wouldn’t call it wasting time. And sometimes I can ask and that’s fine, but oftentimes it’s like, what is the context that I’m missing? And if I’m not missing anything, it’s like, hey, no, Toby, you’re wrong because you’re missing this context.

and or not, you know, so it’s a lot about like uncovering what our set of assumptions sort of knowledge the same and bring them to light. And then I often find that when they are brought to light, that’s when you get to the fun part. Then we can brainstorm and be like, OK, then it becomes about which trade off do you want? Because neither decision is perfect. But it’s not it’s really not my decision to decide what trade offs he wants with the company. It’s like, hey, if we do it, we piss off this set of people. And if you do this way, we set up this.

people, which way do you want to do it and who do you want to piss off because you’re the one who’s going to have to put your name on it. Not me really. So that I think that’s the fun part to put I think or align with in front of any leadership the trade-offs once the context is known.

Federico Ramallo (34:40) You

Right, right. And the whole thing is trade-offs and sometimes you have to make decisions without the complete information, right? ⁓

Swati Swoboda (35:03) Yeah,

yeah, and sometimes you make the wrong decision. There’s things we’ve tried, like, hey, we don’t know which way this is gonna go. Like, this is deep into human psychology now, and we’re just gonna have to try it. so that’s where it’s like shipping fast is a big one, and being able to learn with them quickly helps a lot. It’s like, we just have to ship and find out. And there are risks, but we’re not gonna know until we actually ship.

Federico Ramallo (35:25) Right, right. Interesting, interesting. So you also mentioned that you were reading more code than you’re actually writing. I’m assuming that’s in the context of code reviews, right?

Swati Swoboda (35:28) Yeah. Yeah.

Yeah, absolutely. Well, also Claude, though. We use AI a lot in the company. It’s one of the early adopters of everything, I think, in Toby’s infamous memo. But we use Claude, agents, everything. And that leads to a lot of PRs. My team is tiny, but it’s like eight people. But it’s not unusual to have like 100 PRs in one day, which is nuts. So you’re reading a lot.

Federico Ramallo (35:41) cloud, right.

Swati Swoboda (36:08) more reading a lot faster as well and you have to be able to fit the system in your head and be able to understand how everything interplays. I’m definitely reading a lot more and writing very rarely in Rails.

Federico Ramallo (36:22) Right, right. I have this idea of that AI coding, basically it’s good, but needs a north, needs guidance, right? You describing the, I mean, you as a programmer describing the problem and the architecture and how you want it to solve, and then the AI is great at, you know, just the grant, right?

What do you think about that?

Swati Swoboda (36:49) I I wouldn’t even call it grunt at this point. It can do pretty remarkable things. But I agree that the skills that are shining right now are the folks where they have paid attention to their communication skills. Being able to express a problem and understand why we are doing something, understanding the business use case, if you will, so that they can make better decisions. Because you can just get to a tech doc a lot faster now. I can go point Claude at a code base. like, hey, I’m

Federico Ramallo (37:11) Great.

Swati Swoboda (37:19) thinking of building an achievement system in the vault, example. Here’s what, here’s the vibes, here’s the vibes that I’m going for. Tell me on what this could look like. And then having back and forth with it is like, okay, no, that doesn’t make sense. I don’t want that. Or yeah, that makes sense. Tell me more about this and so forth. And then you get to a tech design and then you’re like, okay, I put it in front of the team and so forth. It’s like, okay, but folks think, yeah, let’s go. And then you can point to cloud. Okay, now implement this step.

by step. it’s a lot of prompting, yes, but it is a lot into how you’re able to, again, share context with something. How are you able to tell why now, not just receiving from someone else, like why someone’s doing something. It’s like now how are you able to tell somebody else why you’re doing something, the outcomes that I want, and then do it with an engineering mindset because that’s what you’re doing to clock.

So everybody in this, every engineer has become a manager effectively where they are understanding a business use case and then telling it to a bunch of agents.

Federico Ramallo (38:22) Right, right. Yeah, probably grunt was a poor word choice because I’ve seen more and more, yeah.

Swati Swoboda (38:30) Yeah, it’s not a poor choice. It’s just that I think definitely in 2025, you went through a phase like, what do mean that AI does not that I don’t get to do the fun part of my job anymore, which is writing code, because that’s what I really enjoy. then was like depressed for a while. I was like, oh, my gosh, if Claude can do everything. And now I’m just stuck typing prompts all the time. Like, that does not sound like fun at all. Why did I become an engineer? I became an engineer to write code.

Federico Ramallo (38:45) You

Right.

Swati Swoboda (39:00) enjoy writing code but then when you’re able to move past that and you’re like like being able to explain and have a person that you can always have a back and forth on on like how to solve a problem is a lot of fun and and you’re able to solve so many more problems which is also a lot of fun like you can really increase the amount of impact that you have now

Federico Ramallo (39:21) Right, right. Yeah, that’s kind of the way I see it. Instead of seeing AI as replacing developers, it assists developers on the lower complexity task so we can focus on the higher complexity.

Swati Swoboda (39:36) Yes,

exactly. Like all of our work is just, we’re just able to work on higher leverage things. If every engineer has become an engineering manager, who’s managing a team of eight people, that’s a lot more engineers in the world today and we can solve so many more problems collectively. So often people say it’s like, we’re gonna need and have fewer engineers in the world.

next year or whatever. then a parallel that we often draw here at least is like, okay, well, let’s look at accountants. When calculators came out or when Excel came out, do we have less accountants than ever before? And it’s like, no, we have more accountants than ever before. But what is different is that we have more companies with accountants now. So from my perspective, we’re going to have in engineering more companies

companies, with engineers, but every company will have fewer engineers, and we’re collectively going to have more people working in this field.

Federico Ramallo (40:33) Right, right. I agree. I see the AI copilot agents, whatever we call them. But basically, all of the tool sets that AI provides as a way to generate new jobs for engineers, product people, and managers. This is going to actually improve the productivity of everybody.

be able to do much more than before.

Swati Swoboda (40:58) Yeah, and much harder problems. There are so many unsolved tools that exist for people and all of those can be brought to life now. It’s like, okay, like we can do it and then we can advance. To me, it’s technological advancement. It’s a great thing.

Federico Ramallo (41:15) Right, right, yeah, I mean, we’re talking about ASP before and I remember, know, one syntax error and the whole page will break, right? ⁓ And it wouldn’t tell you exactly, you know, which line was the error just 500 error, right? Yeah, it sucked, yeah.

Swati Swoboda (41:25) Yeah.

No. Yeah, I remember scanning to

find that missing semicolon. So you’re right. Like the argument for saying that AI leads to less jobs is like saying that having, I don’t know, autocomplete or for an editor that tells you you’re missing a linter or a semicolon is missing on this line, it leads to less jobs. It doesn’t. It leads to more jobs because more of us can do more things now.

Federico Ramallo (41:36) Yes.

Right, right. And I’ve been talking with product owners that are now are vibe coding what they want to do, right? And they can show the users and they can show the developers, this is what we need, right? ⁓ And I can validate it because now I can build a prototype. That code is not going to be production ready, know, an actual engine has to rebuild it from scratch, but it’s a great first step towards you don’t need a

Swati Swoboda (42:08) Yes.

Federico Ramallo (42:21) necessarily a technical engineer, now you can reach the product owner and the software engineer. They’re closer together than before, right?

Swati Swoboda (42:29) Yeah, because everyone now has an AI model that understands them the way that they want to be understood. Like we all speak differently. if product, remember that swing comic there? Like this is what I wanted, this is what I got, and this is what they build and all that. I think that’s become so much better now because a PM can, as you said, a product owner or manager, can talk to AI in their language or however they want to and then come up with a prototype and then

engineer can see it. It’s put something visual in front of us so much faster. And an engineer also doesn’t have to maybe spend as many cycles building something because now the PM can go validate it first. It’s like, hey, I’ve got a rough prototype. What do you think? it’s, you could even, you know, startups can launch so much faster because they can vibe code something. It’s like, okay, let’s try this out. And they don’t have to put such a massive engineering power behind it. But when code does not have to be quote unquote

Federico Ramallo (43:11) Right.

Swati Swoboda (43:28) production ready. They can scale as needed versus like everything has to start with like 20 engineers. I hope this leads to more startups and not less.

Federico Ramallo (43:39) Right. Right. that’s what I’ve been realizing about using AI is now I don’t have to spend hours fixing a semicolon. I can just tell the AI fix it. I can tell the AI, this is the algorithm that I want you to implement. And now I don’t have to go over a lot of cycles just trying to put the basics. And then I can just…

steer the agent towards what I actually want to build.

Swati Swoboda (44:08) Yeah,

exactly. It’s amazing.

Federico Ramallo (44:09) And

furthermore, I think that we were talking about SQL injection, I learned about the, I think it’s 11 now, it’s more of the TCPIP layers that I had to learn all that stuff, the low level things that we needed to learn before, because all of that is something that you needed in order to build something. I think that those core, you know,

knowledge are going to become much more relevant in the age of AI, right?

Swati Swoboda (44:41) Yes,

understanding the foundations I think becomes far more important. It’s gotta be a lot harder now to wing it because it comes to context. If you can’t share the context with AI, then it’s not…

Federico Ramallo (44:44) Yes.

Swati Swoboda (44:54) It’s only as smart as you in some ways. Some ways, not all the ways. It’s definitely smarter than me. But you need to be able to guide it. And for that, you have to know the questions you’re not asking. You have to know what it doesn’t know. it’s like, no, I want you to build it this way. No, what about this? Because you have to be able to challenge it. Actually, let me rephrase that. Because it is smarter than you, you now have to work more to become smarter than it so you can share context with it. You want it to be faster than you, but you still

Federico Ramallo (44:57) You

Yes.

Swati Swoboda (45:24) must guide it.

Federico Ramallo (45:24) Right.

Yes, it becomes a yes, man, in the sense that if you tell, go in the wrong direction, it’s going to say, yes, let’s figure out how to do that. And it’s going to kind of figure it out or give you whatever you need because it’s going to try to comply to your request. if you.

Swati Swoboda (45:29) Yeah.

Federico Ramallo (45:42) That’s what I’m trying to go. If your initial request is wrong because you have the wrong foundation or you don’t have foundations, then everything after that is going to be a ⁓ bad effort.

Swati Swoboda (45:53) Yeah, like

security, you can’t do trade-offs well, right? And security is where really weak at. It takes a bit of nudging to be like, no, that’s a bad thing. Do not do that. That is how I get screwed. Like, do not do this. And that tends to require experience and so forth. And so far, maybe it’ll change. I don’t know, it’s also advancing fast. Maybe they’ll figure out how to make AI so that people are not post-pasting their API token.

and chat GPT and then leaking everything. But it will be prone to those human limitations.

Federico Ramallo (46:27) Right. So looking ahead, what is a

What is the future that you see with AI and the world of software engineering? Yes.

Swati Swoboda (46:39) Well, mean, we talked a little bit, like a lot more

engineers, right? A lot more engineers and a lot more prompting for sure. Actually, I don’t think I know that deeply either. I know that, I hope, or I know or expect that there’ll be a lot more engineers with very different skill set. Or…

I think so far we have valued engineers who can apparently lead code. So given a specific problem, very specified problem, can write extremely efficient algorithms for it. I think those have been replaced completely by AI, because AI can write far more efficient algorithms a lot more faster for very specified problems. So for me, engineering has become more a mix of product and engineering. So product engineers, engineers who can take a business

outcome and then craft a problem and then direct a bunch of agents to solve those problems. That’s where I see the future. that’s a very different skill set. But for those engineers who valued problem solving as a skill and communication, I think they will have a lot easier time.

Federico Ramallo (47:29) Right.

right? Amazing! So I think we’re running out of time but I truly appreciated you being here today I think we learned a lot any final remarks before we wrap it up?

Swati Swoboda (47:55) No, it was great. Thank you so much.

Federico Ramallo (47:58) Thank you, Sari, for being here today.

Swati Swoboda (47:58) Yeah, right.

Yeah, take care.

Presented by Density Labs. We help mid-market companies ship AI to production, not demos. New: Agentic AI, explained from production — what an AI agent actually is, and when a workflow ships instead.
Don't miss it

Listen on your favorite app