Amplifying organizational expertise with Marko Gargenta
Aug 20th, 2021 | 41 minutes
About this episode
Marko Gargenta discusses helping developers build real knowledge about delivering software effectively. Marko shares how he came to realize that learning, training, and new knowledge are vital for technical professionals.
The guest
Marko Gargenta
Marko Gargenta has been helping engineers get up to speed since Java was invented. Currently, he runs PlusPlus.co where they power developer education for Netflix, LinkedIn, and Airbnb, to name a few. His previous company helped educate thousands on the most popular open-source technologies prior to getting acquired by Twitter. At Twitter, be helped build Twitter University.

The host
Rob Zuber
Rob Zuber is a 20-year veteran of software startups, a four-time founder, and three-time CTO. Since joining CircleCI, Rob has seen the company through its Series F funding and delivered on product innovation at scale while leading a team of 300+ engineers who are distributed around the globe.

Latest episodes
CircleCI's newest and oldest employee reflect on company turning 10
Rob celebrates CircleCI's 10 year anniversary with the company's longest-tenured engineer, Gordon Syme, and one of our newest employees, JP LeBlanc, to discuss the company's past, present, and future.
Observability and CI/CD: meaningful measurement with Charity Majors
Charity Majors discusses creating Honeycomb, business building practices, and the importance of proper CI/CD and monitoring. Giving us the latest insights on observability and the necessities for engineering team success.
Episode transcript
Rob Zuber: Hello, and welcome to The Confident Commit, the podcast for anyone who wants to join the conversation on how to deliver software better and faster. (singing) You’re listening to episode nine, and today I’m joined by Marko Gargenta, founder and CEO of PlusPlus.
Rob Zuber: We’re going to talk about helping developers understand everything that they need to build real knowledge inside your organization in order to deliver effectively. I’m your host, Rob Zuber, CTO of CircleCI, the industry leader in all things CI and CD. Welcome, Marko. Thanks for joining me today.
Marko Gargenta: Hi, Rob. Thanks for having me.
Rob Zuber: Yeah, you bet. And I feel like it’s worth going a little bit into the background, so… I really like what you’re doing right now, but we’ve known each other for… I’m gonna guess, 20 plus years. So your brother Sasha, worked for me as a co-op, I think, while he was still in college. And he’s working on PlusPlus with you now, right?
Marko Gargenta: Yup, yup.
Rob Zuber: And I think, was… So let’s talk about education, because that’s another part of our background together, was I helped out a little bit at Marakana as a Python instructor, which is hilarious. I’m pretty sure anyone who took that course regrets it. But regardless, it was really fun. And one of the things that I always say about that, actually, as a developer, and maybe this will tie into, to some of the things that we’re going to talk about today.
Rob Zuber: One of the things that leveled up my development ability, more than anything else I did, was trying to teach a class. Showing up on site with a bunch of people who were just learning and tried to explain to them how things worked, and why they work that way. And why I made the decisions that I made, as opposed to just, “I know this works because I saw someone else do it, and I’m just gonna go with it,” kind of thing.
Rob Zuber: So, that was a really cool experience. Now, was Marakana the first time that you really got into education? Or was it like… What sort of took you down this path of just being interested in developer training, learning and education?
Marko Gargenta: It’s a long story, but essentially, you remember how .com crashed? Some people are too young to remember that.
Rob Zuber: I mean, I remember very, very well. I still have nightmares. But yes, yes I do.
Marko Gargenta: So I had a startup at the time, and kind of flew high and crashed and burned just as hard. And then I was not really doing technology, because there was no technology jobs. I was actually opened up a bar in San Francisco, out of all things, as one does, right, because you still have to drink when there’s a recession.
Marko Gargenta: So that was the logic. But I was itching to get back into technology. And I saw this post on Craigslist. And it was basically a nonprofit that was trying to bridge the digital divide, it was trying to get underprivileged minorities, inner city kids, women into technology jobs, right?
Marko Gargenta: And I thought, “Ah, this is really cool. I’ll go and I’ll teach some classes for them in evenings and weekends.” And I did that on Saturdays and so on. And we created a class around Java, initially, and then PHP. And so I had a lot of fun, because once you see somebody who was rejected in life was totally going to be different, right, they were not going to have access to all the great jobs and high paying work and so on. And then you teach them something, and then suddenly the whole new world opens to them.
Marko Gargenta: And so that was really inspiring and fulfilling, to be able to change some of this trajectory in life. So I was teaching these classes to these kids, and then somebody said, “You know, you could do this corporate.” And it was like, “Wait, there’s like a job, there’s a market for corporate training, I had no idea?” So, I put up a webpage and it basically said, “Advanced Java, Java, enterprise Java beans,” things like that. We’re basically focused on advanced Java components.
Marko Gargenta: And we put up a website and said, “Hey, we do classes on this.” And suddenly we started getting hits, like Williams-Sonoma called us, Bureau of Land Management, US government called us. I was like, “Wow, this is actually kind of cool.” That’s kind of how it all started. And then along the ways, we got approached by Sun Microsystems to actually write their Java 5 content in the early days.
Rob Zuber: Well, there’s a couple things I love about that story. I mean, the personal fulfillment that tied you into it is very, very cool. And then the MVP. We talk about this all the time, and I think it always grows, right? It’s like you basically put up a landing page and said, “I wonder if anyone would buy a course from us.” And then they did. And if they hadn’t, you could have moved on, right.
Rob Zuber: But I think for all that we talk about; lean startup building companies, small testing ideas; we build way too much. You could have hired a staff of 20 trainers, because you’re like, “Who’s gonna do the training if we actually land one of these contracts?” I’m guessing you did, right? For those early classes. It’s just like, “Oh, we have an amazing team behind us,” and it’s just that you just happen to keep getting me as your instructor.” That’s so cool.
Marko Gargenta: Yeah. I mean, yeah. That was definitely lean startup approach. I mean, I wrote a piece on this around Android. Many years later Android came out, and we’re like, “Well, it’s Java, we should be able to teach it.” So we basically put up a webpage as well, advertising Android classes. And we get a customer from Brazil, and they’re like, “Hey, can you come and teach this class for us?” Of course, we didn’t know anything about Android, but that was like, “Brazil, that’s a long flight, we’ll figure it out.”
Marko Gargenta: So I literally put together material en route to the customer site, taught a class. I didn’t know much, but I knew slightly more than anyone else, so that worked. And then we kept evolving that and ultimately ended up… I published a book for O’Reilly on Android and we built a whole practice around that. But there was definitely iteration. A lot of small iterations. So yeah.
Rob Zuber: Well, that’s very familiar to me, because I think I actually TAd, helped out, I think it was Sasha, in New York. I flew out and did an Android course. And him saying to me, “Don’t worry if you don’t know it, you’ll learn it just in the back of the class.”
Rob Zuber: And so I was frantically doing the exercises, trying to stay ahead of the members of the class, so that I could then support them. Yeah, I mean, that’s very… it’s cool. It’s a great way to think about starting a business. And then I mean… So when did Marakana start, ‘02 or something like that, ‘03?
Marko Gargenta: Well, something like that. We were not very well defined until 2005-ish, when we sort of got that first gig with Sun Microsystems. And that’s when Sasha joined me, and so we kind of built it out, and then I ended up selling it.
Rob Zuber: Right, so we’ll get to that in just one second. The only point I was gonna make on, is you kind of discovered this thing out of a little bit of curiosity and a little bit of just pivoting around and trying things, and now, 16 years later, you’re still doing that, and still finding interesting new ways to find fulfillment.
Rob Zuber: So, the acquisition, you joined Twitter, and then sort of ended up building Twitter University, but it doesn’t sound like you just showed up and taught the courses that you had been teaching to then become Twitter University. My understanding is a few really interesting things happened in there. What was that transition like? And then what problem did you really end up solving, while you were at Twitter?
Marko Gargenta: Yeah. At that time, we were quite known for our Android training and what Android could do; Java, Scala, all the complex sort of open source stuff. We were doing classes on that. And Twitter was a tiny customer. They wanted us to deliver some Android classes internally, which we did. And then they approached us about an acquisition, and it was sort of like… First I was flattered, of course, but then I was like, “This doesn’t really make sense, coming in house to develop courses.”
Marko Gargenta: Our model was just to kind of try to iterate on as many upcoming technologies as possible until we find something that works. Our model was really developing across multiple clients at the time, so going in house for just one didn’t make a lot of sense. So we politely said no to Twitter a couple of times, but then we saw an opportunity to go deeper. And that’s when it kind of intrigued us. And we said, “Fine, let’s do it.” And so that was the genesis of two other universities.
Marko Gargenta: So the team went in house, we became Twitter University. And so the problem that we were solving was, Twitter was going mobile, everyone else was going… everyone in the world was going to mobile, and you couldn’t find mobile engineers fast enough, right? So the challenge was, how do we take engineers and teach them how to program Android and iOS and kind of go from there? And we’re like, “Great, we have this body of work. We’ve done this courses many, many times. It’s gonna be a walk in the park. We’ll just go in, teach Android and…” Ooh, gosh, right?
Marko Gargenta: We got in house, and then what we discovered was that Twitter had amazing engineers, and anyone can pick up the basics of Android, Hadoop, iOS, Scala, whatever the technology is. The challenge was more, how does Twitter work, and how do we work at Twitter? So it was this sort of like internal knowledge that was missing. Things that you can’t Google. Things that you can’t buy an O’Reilly book on, right? The things that are poorly documented, that was the biggest challenge.
Marko Gargenta: And so we’re like, “Whoops.” Twitter just invested all this money into us to come solve this problem, yet we’re the least qualified people to solve this problem because we don’t know anything about Twitter. We’re noobs, right. And so that’s where we came up with the model of what we now call peer learning, which is basically empowering internal people to stand up and teach one another. And through that, create a culture of learning, right.
Marko Gargenta: So as opposed to us being the experts who are going to be teaching everyone how to program Android, we created the sort of “platform”, a way for others to stand up and share.
Rob Zuber: Got it. And, I shared that insight a little bit earlier that teaching actually ended up being something that really improved my own skills and understanding. Was that a side effect that you saw at all, at Twitter, as people were stepping up? And like, Who were the peers? Who were the folks that were suddenly coming out of the woodwork, if you will, to start teaching everyone else how to do things effectively?
Marko Gargenta: Yeah, so I get this question all the time. It goes sort of along the lines of, “This sounds great, but our engineers are too busy to be teaching,” right? And so, they gotta be they got to be programming. So what I did when I was at Twitter, I started talking to a lot of people and saying, “Hey, what are the challenges? What are engineer’s really dealing with?” And the more we unpack this, the more we discovered that there’s a lot of waste.
Marko Gargenta: And what I mean by that is lots of support, answering the same support emails many, many times. So say for example, you’re an internal team that owns a specific technology. We have Pants, which was our build tool, right? So if you’re the team that owns this build tool, then everyone is going to be pinging you and saying, “Hey, how does this thing work? I’m stuck here, I’m stuck there, I don’t understand this command.”
Marko Gargenta: And so there’s a lot of support costs, and so basically, we will then knock at the door of the engineering manager of the team and we would say, “Hey, did you know that your people are wasting up to 40% of their time on support? Wouldn’t it be more effective if they taught their internal customers how to use this properly?” And so that resonated, that provided a sort of like, “Okay, that makes sense.” And so they would then volunteer their best engineers to do workshop here and there.
Marko Gargenta: So we’re talking about a couple hours a month, right? Stand up a… Or workshop, explain it to people, to your internal customers, so they can use it better. And so that worked well. Once you have one success, it just kind of… people start [inaudible 00:13:11] knocking at our door and say, “Hey, we would like to also do classes.” And so that just kind of spread. It wasn’t so much learning for the sake of learning or, being nice. It was more because it just made business sense. It made sense for teams to run faster and have customers be up to speed.
Rob Zuber: Right. Right. That makes sense. I can see the… as an engineering manager saying, “Oh, I can offload all this work or focus it into a place that it’s going to get done efficiently, more effectively, probably better outcomes, because you have consistent messages,” right? Like if I go and ask one engineer on the team versus another engineer on the team, they might tell me something slightly different.
Rob Zuber: Whereas if someone shows up and teaches a whole group, then we’re getting that same message. But what about for the teacher? Was there kind of a new form of fulfillment? Or was there something that the folks who were doing the teaching were coming away and saying, “Actually, this is really fun. I didn’t know that I was going to want to do this, but but I’ve really gotten something out of it”?
Marko Gargenta: Yeah, for sure. That was an unexpected discovery. Basically, what we discovered is that engineers naturally tend to love to share themselves, right? It’s in our sort of DNA. And so, as long as you make that easy, as long as they don’t need to deal with registrations and signups and all the logistical stuff they gravitate towards. So our promise to them was just show up and teach, we’ll take care of all the other noise.
Marko Gargenta: And so once we removed all that friction, people started to say, “Hey, I have this insight how to do better,” in submitted systems or how to accomplish some other tasks. So they started volunteering to teach, to a point where we had one in five engineers. We’re talking about 500 plus engineers teach classes regularly. So we really scale this up significantly, and there was a lot of fulfillment for them internally on that.
Marko Gargenta: And then the more we started looking into this, I would talk to the CTO, and we started looking at the engineering ladder. And we basically said, philosophically, the higher up you are on the ladder, the less your job is to crank code, and the more your job is to empower others to be successful. So staff engineers shouldn’t be measuring how many features you produce? It’s more about enabling the whole organization. It’s kind of like leading without getting direct reports, right. So impacting the whole organization positively.
Marko Gargenta: So, philosophically, that made sense. But then how do you demonstrate that? So say you’re going for a promotion to promotion a committee and how do you demonstrate your impact to the organization? And so we became sort of a proxy to that. We get paid on like, “Well, you taught so many classes, impacted so many engineers, and this is the rating that you got out of that,” or, “You mentored these many people or improved the documentation in that way.” And so these became a measurable things of your impact to bettering the organization overall.
Rob Zuber: Awesome. And one thing I was wondering, the production or output metric is number of classes. I think you mentioned ratings in there. I had a little bit of a flashback of teaching for you, not teaching you, but teaching classes and nervously getting the ratings and feedback and everything. And I mean, I’ll be blunt, my first class I taught, feedback wasn’t super great. It’s my first class ever teaching, but it was great insight to then go figure out how to do it better.
Rob Zuber: Oh, okay. People don’t really understand this part, or this part of the materials aren’t clear or slow down, whatever that might be. Did you use a feedback system like that for the folks that we’re teaching? And what was that like, sort of culturally, inside of Twitter?
Marko Gargenta: Yeah, so we started looking at… So we basically picked two metrics, how we want to measure ourselves. So we basically said volume and quality, right? And so volume became butts in seats. The hypothesis was, you as an engineer, you have all these tools at your disposal. If you’re [inaudible 00:17:31] with your time to go sit in a class, you’re probably getting some value out of that. Right?
Marko Gargenta: So that was how many student hours we produce. That was one metric. Because presumably, we want to impact as many people as possible, right. But then the other one is the quality. Are they getting value out of that? And so, then the quality, we would… Typically, at Marakana, we would just measure in net promoter score. That’s sort of like immediate are you happy, sad with a class on a zero to 10 scale.
Marko Gargenta: And that has a limited value, that’s kind of like the rating that you were referring to. What got us excited about working internally at Twitter is that we can actually monitor some of this progress over a longer period of time. So for example, you might have been a mobile engineer who just took Scala, right. And you might have rated it seven, eight, nine out of 10. But what’s more interesting, is did you end up using Scala to do something down the line?
Marko Gargenta: In other words, did you become nimble as an engineer? Right? And what was the impact of you knowing that now to your team? So we started measuring this, 30, 60, 90 days impact, by pinging you and asking you, “Hey, we know you took the class. Have you been using that in the flow of work?” And then asking also your manager, “Hey, your people took these classes, is that helpful to your team to run faster, to be more effective?” And so that was really interesting to kind of connect the dots over on the impact, a little deeper than just happy, sad after the class.
Rob Zuber: Yeah. Yeah. That’s really cool. And it’s an interesting insight, that because you were in that single corporate environment, you were able to capture that, those extra details. For some reason, it makes me think of these documentaries where you see a graduating class and then here they all are 10 years later and how did their lives shape up and stuff like that. Okay, so speaking of being in a single corporate world, that was time at Twitter, that’s where a lot of, I guess, the foundations of ideas that ended up being in PlusPlus came from.
Rob Zuber: And so, now you’re back out on your own. Well, with a team, but have left Twitter, and already have a pretty impressive list of folks, like other organizations that we all know; I can’t name them all off the top my head, but I’m sure that you could; using the platform and doing similar things, I guess. Is there anything, I guess, either that you knew to change, to sort of take this model and apply it more broadly to a broader set of customers, or that has come up as a broader set of organizations have used it, where maybe their culture doesn’t quite match or something about how they work?
Rob Zuber: And said, “Oh yeah, the way we did it before doesn’t quite work, but we can do this other thing.” What have been a couple of interesting learnings about trying to take this model then and replicate it for other organizations?
Marko Gargenta: Yeah. So Twitter, that whole peer learning model kind of worked out, right. And so then as we talk to our peers at other companies, they’re like, “Oh, we wish we had something similar.” So that’s when sort of the light bulb went off, and I left Twitter to start PlusPlus, with the idea of like, “Can we recreate the magic of Twitter University elsewhere?” Is this portable? And so, the first customer was Salesforce, so we went in house to help them with their… to create a platform for their internal learning for their engineers.
Marko Gargenta: And then along came Airbnb and Netflix and Shopify, LinkedIn, et cetera. All these big, sort of iconic Silicon Valley companies. And so, the insight was that in a typical company, you have HR learning and development, right? And that’s sort of… they do their management training and things like that. Our insight was that that doesn’t work very well for engineers. It’s very much often… it’s often top down, right? It’s like compliance and things like that.
Marko Gargenta: It’s often very polished content, like you have that signature management training course at your company. And what we discovered, engineering organizations were operating differently, it was very decentralized, sort of democratized learning, anyone has something that they can share. So, that’s one insight. So as opposed to top down compliance type of training, it was more democratized. Anyone can stand up a class easily. The other one is that technology was always so rapidly changing, and nobody had time to create polished content, right?
Marko Gargenta: As Sasha would say, “Perfection is the enemy of good enough.” So for engineering, we were teaching good enough classes. There was like, you just show up and whiteboard, or just show up with a laptop, open up some sample code and start coding and explaining things, right. You don’t have time to create this beautiful content, because by the time you create it, it’s gonna be obsolete. So the inside was engineering learning and development is fundamentally different than a jar, okay.
Marko Gargenta: So that’s kind of where we went and sort of started promoting this other way of looking. And basically saying engineering organizations don’t have this as mature. If you kind of look at your sales team, there’s usually sales enablement, there’s a ton of tools and support and systems in place, how to become a better salesperson, [inaudible 00:23:22] and so on. But for a lot of development shops that is not the case.
Marko Gargenta: It’s often sink or swim. Like, “Welcome, here’s your laptop and pair up with somebody and figure it out.” That’s kind of in a lot of organizations. But that works up to a point, but as you start scaling, it starts breaking down. Additional engineers doesn’t make you faster, it might even slow you down. Right?
Rob Zuber: Right.
Marko Gargenta: So that’s what we kind of set to solve as a problem.
Rob Zuber: Got it. It makes a ton of sense. And was there anything that sort of was… maybe as you got into your second or third organization, that just came up as a surprise? Or has there been a… I don’t know, a sale that you couldn’t make, that you have to name anybody, but where just this maybe disbelief, maybe cultural challenges, something that just doesn’t seem to fit?
Marko Gargenta: Yeah, I mean, that’s a… You bring a great point, how important the culture is for this. Yeah, so absolutely. So you have… I’ll pick two customers. On one hand, we have Salesforce, right? They’re very… they’re more or less traditional organization, so to them it’s very sort of like they know what they’re doing, and it’s sort of like top down engineering learning. To an extent.
Marko Gargenta: On the other hand, you have some company, like Netflix, where culturally it’s much more distributed. They trust their people to make best choices, so they push the decisions down to the individual engineers. It’s a very different culture when it comes to that centralized versus decentralized sort of axis. So we’ve seen that. Then we have also seen sort of this clash between HR, L&D and Engineering.
Marko Gargenta: So like, we would knock. We would go into an organization and Engineering is like, “Yep, we 100% need this.” But then HR would step in and say, “Whoops, it’s got the word learning in it, anything learning is our domain, so we need to own it.” And then they look at us and they’re like, “You guys don’t do a compliance?” We’re like, “No, because that’s not what we’re trying to solve.” Yeah. And so so we run into these issues with culture, and sort of like the old school versus new school learning and development approach.
Rob Zuber: I’ve tried to picture the ad-hoc on the fly, “I just brought some notes, and we’re gonna whiteboard compliance class.” I really think that wouldn’t pass. There’s a reason that compliance classes are super locked down, right, as you must learn this thing, and you must learn this thing, and you must learn this thing.
Rob Zuber: I know, we’ve talked about this before, because we’ve talked a little bit, but one of the things that fascinates me, you’ve talked about these iconic Silicon Valley companies, I think Shopify, they might take issue with that, as a fellow Canadian, you can appreciate it. But those are all really big companies. Right? And I can’t picture a three person startup being like, “Yeah, this is the thing I need, because I just turned to the person next to me and asked some questions.”
Rob Zuber: Is there a threshold, or sort of a couple gates that you where you feel like this really starts to be the problem of the organization? Is it size, is it rate of growth? What are the things that, as an org, if I’m looking at my own team, someone listening to this is thinking, “Hey, this is a really cool thing for us.” What would be the indicators that you’re kind of in the right spot?
Marko Gargenta: Yeah, so that’s a great point. As you know, organizations don’t scale linearly, right? You may add people linearly, but the communication pathways break after a while. So if you’re a small startup, again, you can follow people, you can follow developers, you’re sort of in the same room, you have one way you communicate. As you hit certain thresholds, and I would like… Somebody told me once, at about 40 employees, you sort of need to introduce more formal structure.
Marko Gargenta: So that’s when you get managers. Now you get teams. And suddenly the… Communication within a team is still fantastic, but the communication from a team to a team suffers. There’s no doubt about. So that’s when you start getting into the silos of knowledge, right? And that’s why innovation suddenly stops, because you suddenly don’t have a way to compare notes between the teams.
Marko Gargenta: So that’s what we see, usually. So larger organizations, meaning, you hear multiple layers of communication structure. So it’s either… one number is 40. We usually come in at 100 plus engineers. The other aspect is complexity of technology and how quickly you grow. So if everything is off the shelf, and there’s very little internal tooling and processes, then there’s less need for the internal knowledge sharing.
Marko Gargenta: But if you have things that you developed in house, special ways, you have your way of doing things, suddenly you require more knowledge transfer. And the third thing we’ve seen is when you have different groups of people with different backgrounds that need to communicate. So for example, I can think of [XYMOGEN 00:28:47], for example, is one of our customers. They have biologists and software people working together to program microbes to do stuff.
Marko Gargenta: So these two constituencies, they speak totally different language, so how do you get them to cross pollinate and innovate together? So that’s when having a knowledge sharing system by design, as opposed to by chance, is more important.
Rob Zuber: Yeah, that makes a ton of sense. So I want to change the topic a little bit. It’s still about learning. Because I was also reflecting, it’s unsurprising that I’ve reflected a lot of my own very brief experience teaching, I learned a lot from it. One of the things, when I think about the time spent preparing, one of the things where I ended up putting a lot of time in, was actually building labs.
Rob Zuber: And so I’m curious what is a good course… course, what does a good class look like? So I’m showing up, I’m just an engineer who works on one of these internal tooling teams. I mean, I could whiteboard and just show examples for an hour. Or do people distribute labs? One of the other things I thought about is your… unlike teaching somewhere else, you mentioned being all internal at Twitter, all internal at one of these companies.
Rob Zuber: I can just open up the code base. There’s no concerns about NDAs and whatever. And people will be familiar with these parts. So what does a really great class look like? How do you break that down? How do you get people’s hands on, again, without that huge amount of preparation?
Marko Gargenta: Yeah, that’s an awesome question. One of the insights of being at Twitter is that, first of all, engineers dislike PowerPoints, they don’t want to go to a class where it’s just slides. But if you ask the same engineer like, “Hey, can you teach a class,” the first thing that they’re going to do is open up a PowerPoint and start building a course material. So, that’s what we did a lot of guiding them how to approach a class.
Marko Gargenta: And so then what we did at Twitter is we basically discovered there’s different experiences that we promised to people. So for example, I may have an overview of Android, and so we actually kind of codified the naming. So overview meant that it’s a leanback experience. You’re going in for an hour, you expect to actually see just a high level overview. Your business people can come in, your recruiters can, it’s valuable for them. So that’s what an overview is, right? You don’t bring your laptop, necessarily.
Marko Gargenta: Then we have a taste-off, which was the opposite. Zero slides, bring your laptop, and we’re just gonna start banging some code. Right. And you may not understand what the code is, but you’re getting a taste of this technology to see is this something that I actually dig and I want to learn more?
Marko Gargenta: Then we had courses that are… We call them essential, which basically is the minimum amount to take you from zero to 60. It’s to be dangerous enough. And those may require multiple days, because that’s the ramp-up time. So we kind of codified these different types of experience, so that you knew by the title of the course what is it that you are getting out of. But yeah, I mean, generally, for anything that is substantial, it’s usually something that’s hands-on, you’re building something.
Marko Gargenta: And I love building something that is meaningful, right? So for example, I told you I wrote a book on Android. And so in that book, we actually built a Twitter client for Android. So you sort of know what you’re gonna end up with, there’s a built-in motivation. At the end of the day, I’ll have something that’s cool and complete. I can show it to my mom, and they’ll get what I built, right?
Marko Gargenta: But along the way, you’re teaching them, “Alright, so we’re gonna now learn a little bit about UI, a little bit about databases, a little bit about networking.” And all these things are sort of woven into that golden path of building a sample app. Does that make sense?
Rob Zuber: Right. Yeah. I mean, I totally agree that we’re going to a destination and along the way we’ll stop and talk about, “Here’s a little bit of something you need to understand about the database.” And now you see the value, right, because you’re trying to get this thing done. It’s a little more motivating. I would say, most of my learning has been just in time learning. I am now blocked. And though I learned about this thing, I can’t permit progress, so I learn what I need to know, and then I keep going.
Rob Zuber: I internalize it, because it’s in the context of trying to achieve something. So then going back to the teaching thing, you’re bringing in someone to teach people about this library or this toolkit. Did you help them and support them to think about how to do that effectively, “Here’s some samples, here’s some ideas of things you might be able to build that will help people get there,” because you talked about the success of people down the road was part of your role.
Rob Zuber: And you consider that part of your role in what you do a PlusPlus to help those peers build a good course. You may not be an expert in the material, but you know how to teach, right?
Marko Gargenta: Yeah. Yeah, that’s exactly what we did. We basically, as opposed to being teachers ourselves, we became more consultants, enabling others, right. And so the way that would look like is we would meet up for half an hour, an hour, with an expert and say, “Alright, what do we think? How are we thinking about that?” And, essentially, out of that, we would come up with a one pager. This is the promise of the course.
Marko Gargenta: This is good for what you’re going to get. And roughly, like a bullet point outline. And back to, at the beginning, when you said how we would sell stuff first and then see if it sticks, right. So we actually did a lot of that to Twitter as well. We don’t know if the course is going to be successful. But it’s very inexpensive to just create a “poster or a trailer” for a movie, right? So you create the equivalent of that.
Marko Gargenta: You market it, and if people sign up, then you now have to… you have the audience built in and you go and create it. So we’ve sort of sold it before we built it always. And then we would be… we would coach those experts to build it along the ways, and kind of give them like, “Well, we think it’s that, this is an overview or this is a taste of, and here’s some best practices, look for an example.” This and that. Yeah, that’s [crosstalk 00:35:22].
Rob Zuber: Great. That makes a ton of sense. It actually, for some reason, reminds me of submitting abstracts for conferences. This may just be my personal experience. But you know, you write three sentences, thinking to yourself, “I could probably talk about this subject, if anyone cares about it, but I’m not going to write a hour long talk, if no one’s interested.” But then, what always happens to me, is a few weeks before the conference, I think, “What was I thinking about when I wrote this abstract?” Like, “What was I going to talk about?”
Rob Zuber: But it’s the same sort of thing. That’s a very small investment to just test the waters, see if anybody responds, and then make a decision to make a bigger investment in building that material. There was one other thing I was gonna ask that sort of triggered from a thought earlier. I talk about the just in time, like my motto is I want to learn about this thing, because I’m stuck and now I need to know about this thing.
Rob Zuber: Do you have a sense of how that breaks down? Do people go and learn about technologies in a more exploratory fashion? I wonder if that’s something that might be helpful to me. Other teams are talking about that, so I’m going to spend some time and learn about it. Did anybody end up just talking about less specific things, like, I don’t know, how to grow in your career or sort of other engineering-oriented things like that? I guess, exploratory is the first part. Do people just go because they’re interested in curiosity, and that sort of drove your growth, and then did that start to branch out into less targeted teaching?
Marko Gargenta: Yeah, we certainly evolved that quite a bit. For example, at one point we realized a lot of… we had a turnover at Twitter. And so we were like, “Okay, how do we capture some of the institutional knowledge?” Things that happened, that people who are involved are going to be long gone. And so we came up with this concept called war stories. So we would basically look at the the biggest outages, the biggest sort of incidents, catastrophes in Twitter’s history. And we would tap those people on the shoulder and say, “Hey, do you mind telling us what it felt like? Sort of do a fun version of your retrospective on that, and tell that story.”
Marko Gargenta: And so those became the war stories. We had people… I remember, at one point, we had an engineer accidentally take down the wrong cluster. He thought he was working on staging, and he actually took down the entire user base of Twitter, in production, right. So massive, massive incident that happened way back when, when Twitter was still small. But there’s a lot of lessons to be learned in that. That was sort of like… it was fun, to kind of tap those people on the shoulder, have them stand up for half an hour, an hour, tell their story, and share that, socialize that knowledge internally.
Marko Gargenta: And so those were totally different types of courses. Then as I sort of got involved into training of engineering managers, we started doing fireside chats with VPs. So we would create a private small communities where you can ask a VP anything, right. And then we created a peer groups for new engineering managers, where they had sort of a confidential time and place to… kind of like a closer circle where they can exchange best practices. We sort of branched into a whole bunch of different types of content.
Rob Zuber: Right. It sounds like that was seeded by, “Oh, this is what we do now. This is how we share information. Hey, wait a second, we’re talking about technology, but there’s all these other parts to our job. Let’s talk about those too.” That’s really cool. As you were talking about the the war stories, or sort of the historical views of these incidents, I was reminded of this expression that I can’t attribute because I forget where I got it from, but I got it from a book about storytelling, that there’s two kinds of experiences in life, a great time and a great story.
Rob Zuber: And I imagine, you said the fun version of the retro, like the post-incident report and post-incident review for, “Hey, I took down all of Twitter,” was probably not super fun, but I imagine two years later, three years later, five years later, however long that was, it probably was actually really fun to talk about, to hear about. And I think one thing that we often try to share with folks when they’re new, just in terms of onboarding and engaging is we’ve all been there, it’s happened to all of us.
Rob Zuber: And to show up and have someone really express. You know what, I have no idea who this person was, like, “There I was on my fourth week on the job and I took down all of Twitter, and I’m still here, and I can still tell tell you the story. And I can tell you what we learned from it.” Cultures come up a few times through here and that just feels like such a huge cultural moment to share that with with other people in the organization. It’s super, super cool.
Rob Zuber: Well, this has been awesome. I think this whole space, I mean, when we talk about effective software delivery, very few people say, “Let’s think about our peer to peer sharing model of knowledge.” But I think anyone listening to this is now having that aha moment of like, “Wait a second, you can actually do this effectively, you can do this well.” There’s tested models for bringing everyone up to speed and really sharing out that institutional knowledge that everyone, I think, struggles with and just assumes it’s not solved.
Rob Zuber: So really, really cool to hear about what you’re doing. Thank you so much for joining. It’s been awesome to hear about.
Marko Gargenta: Yeah, thank you. Yeah. Thanks, Robert. I appreciate, thanks for having me here.
Rob Zuber: Yeah, you bet. And so for all those who are listening at home or wherever you listen, thanks for tuning in to this episode. If you enjoy the podcast, subscribe in any one of the… I have no idea how many places there are to subscribe to podcasts anymore, but… Well, not [Odia 00:41:13]. We’ve been talking about Twitter all day, right? Wasn’t that where everything started? Anyway. Or hit us up on Twitter at CircleCI if you want us to talk about something that you’re really passionate about, or want us to find someone and talk to them. Thanks again, Marco for joining me. This has been great.
Marko Gargenta: Thank you. (silence)