Career Journey 2: Essential Skills & Key Attributes | Thiago Ghisi

12 Sep 2023 · 47 min

Ask about this episode

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

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

In short

Dev Interrupted Podcast - Episode Summary: Career Journey 2: Essential Skills & Key Attributes | Thiago Ghisi

Podcast Overview Hosts: Andrew Zigler, Ben Lloyd Pearson, Dan Lines Theme: Software engineering leadership and excellence in tech Episode Focus: Foundational skills and attributes necessary for engineering leadership.

---

Episode Description In this episode of "Dev Interrupted," host Dan Lines continues a series on the career journey of engineering leaders, featuring Thiago Ghisi, Director of Engineering at Nubank. The discussion pivots from the initial steps of becoming an engineering manager to building a robust foundation as a leader, exploring essential skills, dos and don'ts, and philosophies for making a lasting impact.

Key Takeaways

  • Transitioning from individual contributor to leadership involves adopting a mentality focused on decision-making and accountability.
  • A bad decision is often better than no decision; taking action is crucial to avoid project stagnation.
  • Engineering leaders should embrace the mindset of extreme ownership and accountability.
  • The Four P’s of engineering leadership: Platform, Product, Process, and People.

---

Detailed Notes

  1. Decision Making in Leadership
  2. Bad Decisions vs. No Decisions:
  3. Making decisions is vital for progress. Sometimes, a quick, less than perfect decision is preferable to indecision.
  4. This is crucial in environments with tight deadlines where inaction can stall projects.
  • Actionable Techniques:
  • Introduce a 24-hour deadline for making certain decisions to encourage movement.
  • Document decision points and encourage teams to reach conclusions swiftly to prevent project delays.
  1. Ownership and Accountability
  2. As engineers progress to senior roles, they should adopt a mindset of ownership.
  3. Avoid the “that’s not my job” mentality; instead, leaders should take responsibility for broader organizational challenges.
  4. Accountability fosters a culture of problem-solving and encourages team members to adopt similar values.
  1. The Four P’s of Engineering Leadership

Thiago outlines a framework called the Four P's, which includes:

  • Platform:
  • Focus on technical skills and understanding the engineering stack.
  • As you advance, leverage platforms to drive strategic architectural decisions.
  • Product:
  • Understand business aspects and user behavior.
  • Collaborate with product managers to align technical efforts with business objectives.
  • Process:
  • Develop efficient workflows for team operations, such as onboarding and PR reviews.
  • Implement processes to ensure scalability and minimize bottlenecks.
  • People:
  • Cultivate soft skills like mentoring, performance management, and team dynamics.
  • Invest time in understanding team members to facilitate better collaboration and support.
  1. Balancing the Four P’s
  2. Early in a career, focus on Platform and Product. As one progresses, shift towards Process and People.
  3. Regularly assess time allocation among the Four P’s to ensure balanced professional development.
  1. Common Challenges for Managers
  2. Managers often struggle to maintain a clear understanding of the Platform due to the shift in focus towards management tasks.
  3. Encouraging ongoing technical engagement is crucial for effective leadership; techniques such as one-on-ones with engineers can help bridge knowledge gaps.

---

Conclusion Thiago Ghisi's insights emphasize the importance of decision-making, accountability, and a balanced focus on both technical and managerial aspects of engineering leadership. The Four P's framework serves as a guide for leaders to evaluate their growth and effectiveness within their teams.

Recommended Resources

  • Thiago’s Podcast: [Engineering Advice You Didn't Ask For](https://engineeringadvice.substack.com/)
  • Book: [Scaling People: Tactics for Management and Company Building](https://press.stripe.com/scaling-people)
  • Webinar Registration: [2023 Engineering Benchmarks Report Release Webinar](https://linearb.io/event/2023-engineering-benchmarks-report-release-webinar?utm_source=Dev%20Interrupted&utm_medium=referral&utm_campaign=202309+-+webinar-+Engineering+Benchmarks+Report+Release)

---

*This summary encapsulates the main discussions and learning points from the episode featuring Thiago Ghisi, providing a clear structure for understanding the essential aspects of engineering leadership.*

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

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

Transcript

Automatic transcript. May contain errors.

0:00Anything becomes easier if you have that mentality, right? You know what to do. You know who to talk to. And you usually have a path forward. You might not be able to solve every single problem, but you become accountable for that and you take at least one, two steps forward on that. I think it's really important if you're interested in career growth as you go from a manager to a director and then to like a VP or an SVP. What I've seen is the characteristic that you are describing is a common characteristic in folks that are getting promoted.

0:54a virtual event for engineering leaders, attendees will be among the first in the world to explore the landmark data. This year's report analyzed 3.6 million branches from over 2 ,000 dev teams across 32 countries. Deep dive into the data by team, size, geolocation, and industry. Plus, see how elite teams perform against Dorometrics and get acquainted with brand new benchmarks like Investment Profile introduced this year. The best part? Just for registering, you'll receive a free pre-release copy of the 2023 Software Engineering Benchmarks Report. Don't miss out. Be at the forefront of engineering excellence.

1:29Register today at linearb.io slash events or use the link in the show notes. Hey, what is up, everyone? Welcome back to Dev Interrupted. I'm Dan Lines, Linear B co-founder and COO, and we're thrilled to continue our series on the career journey of an engineering leader with Chiago Giese, Director of Engineering at New Bank. Chiago, great to have you back on the show. Thanks, Dan. Glad to be here, man. Appreciate it. Awesome to have you again. So this is our second installment in our series of Engineering Leadership. So if you all haven't listened to Chiago's first episode, highly recommend it.

2:15Everyone in the audience, definitely go and check it out. There's a lot of great advice in there. Definitely don't want you to miss it. So to kind of dive in here, last week, we discussed the beginnings of an engineering manager's career journey. But today, we're going to go even a little further, digging into what it takes to lay a strong foundation as a leader and how to learn the skills that will make you successful throughout your career, as well as make you a good person, both at home, but especially to work for. And, you know, as leaders, I think we should always strive for that. So let's jump right in our first topic today.

2:58Actually, I love this title. The title of our first topic is when a bad decision is better than no decision. So, Chiago, you've delivered, you know, hundreds of large features during your career as an engineering manager, a director. You have a lot of lessons that you've learned along the way. One lesson that really stands out is that a bad decision is often better than no decision at all. So what does that mean? Walk us through. I remember once our CTO, when I was at America Express, and he said a phrase that I kind of talked to the heart. that was like for 99 % of things in life, a bad decision is better than no decision, right?

3:47And what that means in reality, especially in engineering, when you are trying to deliver big things is remind everyone, remind yourself, remind your managers, remind your engineers that sometimes like a really small decision that is holding, let's say, the deliver of a thing, to be better off if you just move forward with whatever you feel is the best option at the time and then iterate if needed, then try to kind of like stay focused on research, doing POCs, all that, right? One idea that I started doing early in my career, especially when I became a director, was to start to time how long it was taking to unblock those decisions and those projects, right?

4:35Especially when there was, let's say, conflicts between two engineers, one staff engineer and one principal engineer, they could not agree on a topic, right? And I would often jump in and say, okay, guys, let me document the decision point here and I'm going to give you 24 hours to make the best decision you can and then we're going to move on. And that's how you have, 24 hours. And sometimes they would usually get to an option before that. But if there was no decision after 24 hours, we then will do a meeting and then like align on the next steps. I feel that, I mean, I have seen so many projects, so many things slowing down, let's say, deliver off large initiatives because of those things that they just get stuck.

5:22Right. And no one has the has like, I don't know if it's the process or the courage to actually go and say, guys, this is not the thing that's going to break or or make this project. Let's move on and let's let's see how reality is actually going to treat us. Right. Because a lot of times what is going to cause problems is not that particular point is other things that we have not seen that we're only going to see if we make progress and we should move forward. Right. So I'm a really big fan of like walking skeletons. Right. Like getting that shape of the project working end to end and then like iterating on that over time.

6:03But overall, I think like this process of trying to document the blocking point and trying to time. OK, we have this time to make the best decision we can. No matter what, we're going to move forward is a process that worked really well and avoided a lot of frustrations. Because I also noticed that a lot of times what drives engineers to be super frustrated is that they cannot move forward because there is some decision that needs to be made. And often if you are not, let's say, actively managing the team or you don't have a good engineer manager there to take sides or to move things forward, those things tend to hold for days, weeks, if not months, right?

6:46Yeah. I love the concept here. There's a lot to unpack. So let's try to do it one by one. The first thing is, I do think that there, because I remember being in this situation, there's something about being an engineer. And maybe when you're like getting into the details and you're kind of thinking about your job and you're trying to make the best decision possible, maybe you don't want to mess it up. Maybe it's like that engineering DNA that you think it needs to be perfect. So you start researching, you're trying out all these different like POCs and prototype and all of a sudden a few weeks have gone by and the project hasn't moved forward.

7:26I can understand that feeling. So it's almost like you have to break that natural. I was referring to like DNA or that natural thing in your brain that says I got to be perfect. Right. So I think I think that's one concept. But the way that you did it is you put on a limitation, which I really like, or a criteria. You said, we need to make a decision within 24 hours. I'm starting the clock. And what I love about that, especially with engineering teams, is it's a constraint. And when things get constrained, I think creativity comes out. I think better, actually better decision-making. If you have every single option in the world, unlimited resources, unlimited time, unlimited budget.

8:15Yeah, you can go on forever. Hey, we got 24 hours here. We got to make a decision. Have you seen that kind of like time block change the behavior in a positive way? Yeah, for sure. And I will often remind folks that that's not usually my approach to everything, right? Especially if it is something, okay, we were planning the next year and we are exploring the next observability tool we're going to use, right? It's a big commitment. That we can take weeks to decide. But if we have, let's say, a delivery that needs to happen, right? I'm going to, on the first meetings of that particular project, I would kind of try to bring to the table, folks, just so you know, we are on a really tight deadline or timeline here.

9:04We're going to use this decision-making or escalation process is another topic we can get into, right? That's going to be really important for us to move things forward. And then whenever the time comes, whenever I see a Slack thread that goes back and forth, a hundred replies, right? I jump in and say, okay, what's going on? Let's start the clock and make a decision, right? And I think a big part of the responsibility of engineering manager is to actually be playing that role, to be moon-trained where there is tension, whereas there is like people stuck, right? And getting the chain to get stuck.

9:41And sometimes that might be inside the squad or whatever. Sometimes might be outside, especially if you work on large organizations, right? You have a lot of dependents. You depend on the platform to deliver something. You depend on the infrastructure to do something, right? And there, there is another term that we coined back at my time at Amex, That is the CI, CG, right? Continuous integration, continuous delivery. That is CE, continuous escalation. That's another thing you need to do to get things moving. And escalating is not a bad thing, right? It is something that's needed. And I think, of course, you should not overuse it, but it's not a failure.

10:25You need to learn that escalating and in order to make progress is the thing that's needed, right? Of course, you should try to do things before escalating for every single small disagreement. But that goes a long way with a really strong decision-making process. Especially, again, if you are on a timeline, you have a big customer delivery to reach, right? I think that is a few things that I learned that work really well. Yeah, I love that CE. I mean, the thing with an escalation, you're really identifying a bottleneck that needs to be resolved. and any time that you're escalating, usually that's okay.

11:04It's even better if you're coming with a solution with your escalation of like, hey, we have this bottleneck. We're going back and forth. Here's like one option or the two options. Can you help us move this forward even better? That should always be the case then actually. Like you should not escalate without a recommendation, right? I think good managers always provide, okay, here's my take of what we can do to move forward, right? Here are the trade-offs. but this is like, I need you to pick one of the options. Those are the options. My recommendation is X. I was reading the other day a book called Scaling People, and Stripe, they actually, they change the name.

11:44They don't call it escalation process. They call it the unblocking process so that engineers feel more welcome to do things. And they have a template of document disagreement, document the approach, when to bring in managers. And I think that's exactly, Those decision-making processes and escalation are basically a way to make progress, to unblock things, to not let things idle. Yeah, let's see if we can get that. That's at Stripe, like Stripe Engineering? Yeah, Stripe Engineering. We'll see that we can include that in our links. That's really cool. You mentioned that you don't use the 24-hour criteria all the time.

12:23Sometimes you're saying, okay, maybe multiple weeks. I know it's probably tough, but do you have anything where you think it's, okay, let's make a decision in 24 hours and iterate versus a decision that takes maybe multiple weeks? Is it different architecture decisions? Or how do you decide as a manager when to use a 24-hour rule versus something that maybe is a little bit of a bigger decision? Do you have anything there? I feel that like, okay, if you do something that was agreed ahead of time, like, okay, we're going to need, we're going to take one week, two weeks to do this, POC to do this, try to do this approach.

13:05I'm fine with whatever is the agreed on, right? Like, and whatever has been baked in the process, right? The thing for the 24 hours, especially when you have a defined project, you are on a timeline and you already have pretty much the tools, the platforms, everything is already consolidated. You already have a way of making things happen, right? You already have a stack that you use, right? In those cases, I think the 24-hour window is a good forcing function to make progress. And to remind folks that it's not like that if their option was not the one that was, let's say, selected, that it had failed.

13:46It's just that we might actually get back to that option if we actually find the problem with this contention point. But the rule of tabby is more like if it is something that is unplanned, then I would say the 24 hour, right? If it is something that's planned, something that's strategic, something that we need to be more careful, then I'm fine with whatever. I mean, I'm fine with a couple of weeks. Usually one week is a good time for me for playing out with a new tool, trying to do something. But I mean, there are things that require a lot more time. But I think giving way too much time without having structure, right?

14:24Without having weekly checkpoints at least, right? On how we're moving a particular initiative is also a problem in my experience, right? So you cannot open up too much. I think you need to have a structure where progress can be checked, questions can be asked, and we can iterate quickly. I think that's the main thing. The other thing to keep in mind before I move us on is remember that you can iterate. I think that's the other key point here. The way that most software is built today, you can make a decision and rapidly iterate on that decision. And when you have an unknown, meaning I don't know what the best decision is and I have multiple options, that's where it really comes into play of, okay, let's make a decision in 24 hours so that we can clear up some of the unknowns.

15:16We'll learn something from this decision and it will actually put us on the path to the right decision, which we don't know what that is yet. And it moves us closer. So I think that's the other key. Now, one funny thing that I was thinking about, because you said 99 % of the time, this is the right move. And I was thinking when I saw that question, when would this not be the right move? And last night, this is the weirdest thing. I had an urge. I don't know why this hit me. I had to look up what were the fastest planes, so airplanes, built in the history of the world. So I looked up an article that was like the top 10 fastest planes all the way up to the fastest plane, which is apparently, if I remember right, it goes 4 ,500 miles per hour.

16:10And I was saying to myself, maybe if I was doing the design for this plane, I would take more than 24 hours, something like that. But most of the time we're working with software where it's not like life and death situation. we can iterate to get to the right results. I mean, 100%. I think there are situations, especially the, I think Amazon, they call there's the two-way doors and one-way doors, right? Like things that are irreversible, right? Like, let's say you're going to damage your reputation with your customer, if it's going to affect the database, the data, I mean, like if it is a legal thing, if it is, I think there are a lot of situations, even if you don't work on a critical domain, such as airspace, right?

17:01That we should take more time and we should involve more people, right? You need some legal review, right? I mean, there are things, but if you are, let's say, building a new feature, right? Like you're doing a new flow, you have not launched, right? You're working on, still on finalizing some working solution. It's not something you're putting in production and you're making a huge change in 24 hours, right? It's something that's being built to be tested, to be then rolled out. Then I would say that 24 hours is a really good rule of thumb because you're going to have a lot to play with in the next couple of weeks, right?

17:38But if it is something that is going to affect something that's existing functionality or something that's going to affect data and something might have legal or security or privacy implications, I think you need to be more careful and it's just not moving quickly, right? It's moving safely through, right? But the context that I mentioned is the context of developing new features. Yeah, just recognize that one-way door versus the two-way, meaning is this a situation that I cannot walk back from? I cannot iterate on it because it's putting me in a legal situation, a customer situation. That makes sense.

18:16I actually have a note here. I didn't even see this. It's something we talk on this pod a lot. But that's around stuck PRs, stuck pull requests, bottlenecks. Do you have anything that you want to say about there of how you're handling PRs? I mean, I think the same applies. One of the main responsibilities of engineering manager is to be, in my view, is not someone that needs to know every single line that's being written, right? The one is reviewing every single PR, but is the one that's actively monitoring anything that's getting stuck. And PRs are usually like, is one, and PRs is another one that, especially if you have a really strong PR review culture, right?

18:59Where people really go in like in details about how things should be standardized is often like super easy to get stuck on like some disagreements on someone wanting like a big refactor or something. And engineers, sometimes they get super passionate about things, and they don't think about the way forward. So as an engineer manager, it's part of your responsibility to be, like, if the engineers are not able to sort it out quickly. Like, whenever there is a PR that's stuck in review for more than, I would say, two days, like one day, ideally, the engineer manager should have almost alarm going off, right?

19:40And going there and understanding, okay, why this has not been merged. Every time I see a PR that has 20 comments plus, back and forth, open for more than two days for review, is usually a bad sign of multiple things. I think another thing is PR should be small and it should be super quick to review and it should be high throughput. You have small batches of changes getting in and getting reviewed, fixed, approved, and moved on. If you have someone that's open up PR, let's say, once a week or once every two weeks with a massive change, and then you have, let's say, reviewers taking days to review and weeks to actually get that to a measurable state, that's a problem in the process.

20:34and on how often things are getting in the main branch. So I think then, as an engineer manager, you need to understand, okay, why are those engineers not actually breaking down the PRs? Why they're not thinking about their strategy to making chains, breaking down tasks so the PRs are going to be super easy to validate? And there is an overarching architecture of how you're planning to get the whole thing done, right? They don't need to do all changes in one PR. So I think that is the same rule applies and is another data point that you can easily, I mean, that you should be monitoring actively as engineering manager.

21:11I mean, you're honestly preaching to the choir here, like a lot of what we're doing at Linear B is to ensure those PRs are getting merged. I mean, one of the metrics that we look at the most is merge rates. So what's your frequency of PR merges? And then you talked about the timeframe. You definitely want to have it below 24 hours. And then the elite teams that are great at this it's only a few hours because that PR, I mean, you talked about dev experience, first of all. Getting my PR emerged is a great experience. Have waiting two days, three days, a week. That's a horrible experience for a developer.

21:50So yeah, I think you nailed it when you say like, as a manager, make sure that you have a, it doesn't mean that you have to review every PR. It means that you're monitoring the process so that these are not bottlenecks. And that's what's very important. So I'm really happy that you brought that one up. I feel that is another, like, I think you should be monitoring the aging, right? How long, like, for tickets, for PRs, for conversations in general, right? Whenever you see something getting stuck for more than one or two days, usually something you should be actively monitoring and actively trying to unblock.

22:28Either to break it down, right, in smaller chunks. Maybe something that we only realize now is too big. Maybe it was a problem on the process and how the engineer approached that problem, right? They found more complexity than they were seeing before. But I think it's usually a sign that you should break it down because if you let something that is already late and being super slow in the process, continuing on the process as it is, is a really bad recipe for a disaster there. Totally makes sense. If I have to move us on so that we stay on time, I'm looking at one of your most popular Twitter threads, and it's our number two topic today.

23:14So the switch gears into that mindset, I think you wrote something like, the more senior you become, there's no more, that's not my job. Now, I love that mentality, but what does that mean to you? Yeah. So I feel that like as a leader and I mean, like not only as a manager, right? You can also be like, I see it as a leader. You should not be avoiding responsibility. By that, I mean, it's like, okay, someone complain about something. Oh, we don't have such and such, such tool. Like this process is problematic, right? It's super easy to get into a super defensive and avoiding accountability and just like, okay, yeah, really, I agree this is a problem.

24:06Let me talk to the person or whatever. But I think at some point, someone has to take ownership and responsibility for that and say, okay, that's my problem. Let me see what I can do, right? And I feel that the best leaders I had, had some degree of that mentality. Of course, you cannot be a hero and solve every single problem, right? And there is a limit to that. And also, there's a limit of how much overwhelm you can get if you actually are the one that's taking responsibility of every single problem, everything that's going on. But there is a huge shift versus like, be the one that needs everything to be perfect.

24:47Otherwise, they're just going to be passing through the problem. So I think that the context there is, I think as a senior engineer, as a mid-level engineer, you can say, okay, that's not my job. This is beyond the expectations of my level. But I think once you get to manager, senior manager, to staff, principal, it is concerning in my view, and I think it's like, if I see, let's say someone that's a senior leader saying that, oh, that's not my job, right? That's someone else's problem. Of course, there are things that are outside of your control. You don't have control of the compensation policy of the company, of way too many things.

25:31But how you message that to your team and how you take accountability, okay, I hear you, let me take this forward. I'm responsible for this. I feel that I'm part of this problem is a huge shift. And I think it also puts your chain in a different state of mind to have someone that is there and is really accountable. And also, I mean, over time, folks are going to see you doing that and getting a lot of things done, solving a lot of problems versus just passing it through, right? And they're going to start to do that themselves. So it's the whole idea of extreme ownership. And I feel overall, the more senior you are, the more you need to do that.

26:13Of course, there are limits, as I said, but overall, I think that's a really good mindset shift. Well, I certainly think it's the right mentality. And I have found like as I've progressed in my career, so I'm a founder now, and we even have this philosophy at Linear B, kind of that philosophy of nothing is beneath you or there's nothing that you should say, that's not my job, that's someone else's. There's nothing beneath you to like solve a problem if you're seeing something there. And especially if you're in a founder mode, I kind of say that, okay, everything is actually my job. But you brought up a good point that there's a scalability aspect to this.

26:55And the point that I would make about that is it doesn't mean that you personally have to solve every single problem. That's kind of like a hero mode thing that will actually crush you and your team probably. But even more so, if you identify that there's an issue, even if let's take like the compensation example, which is kind of way out there. But what does a senior leadership do? At least if you're seeing a compensation problem, you go and you have a conversation with HR and you say, I know I can't solve this problem, but I want to make you aware that this is a problem with our culture. Here's what I'm hearing compensation wise.

27:39Maybe there's other companies I'm hearing that are paying more. I think we need to retain talent. I want to make you aware. And is there anything I could do to help us be more competitive? Great. At least you're not saying, oh, that's someone else's problem. No, you're connecting the dots. And on the engineering side, the same thing. Hey, I see this part of the application is really slow or something, but I don't own it. I'm going to at least go have a conversation with that senior manager and see, hey, what's going on here? Are you noticing this too? I just want to make sure that we're on top of it.

28:15Is there anything I can do to help? So that would be my recommendation in that situation. Yeah, 100%. And I feel it's like part of that phrase, like, okay, you should not say that's not my job, is a reminder. And I know he's a really strong message, right? That you should not be saying that, not even internally, right? Because your job as a leader is to be filling the gap, is to be talking to people. And I mean, if needed, is to be the one that is going to the other manager, to the other area that has problems, right? And saying, I mean, guys, this is something you should be doing. This is impacting my team.

Read the full transcript

28:55It's like, it's someone that's actually following through, right? And making sure that that concern is getting addressed somewhere in the organization. It's not someone that's just passing through and it's like, okay, that's not mine. Of course, there are problems that you have to avoid because there are things that maybe are not that impactful. There are things that you're not going to have the time to invest. But for the huge majority of the things, especially if you're a team, you have someone that's frustrated or complaining about that. even if it's not your core responsibility, you should do exactly what you said.

29:29Go to HR, go to talk to the other manager, go like try to move that forward yourself, right? Before saying that. And if you have that mentality, you're actually going to be more creative about things. Everything becomes easier if you have that mentality, right? So you kind of like, you know what to do, you know who to talk to, and you usually have a path forward, right? You might not be able to solve every single problem, but you become accountable for that and you take at least one, two steps forward on that. I think it's really important if you're interested in career growth as you go from a manager to a director and then to like a VP or an SVP, what I've seen is the characteristic that you are describing is a common characteristic in folks that are getting promoted.

30:19And I think the reason for it is twofold. One is, let's not mistake ourselves. When you go through a promotion process, especially as you're going into a director role, because now you're kind of really getting up there and then into a VP role, it is not only your direct boss who will be promoting you. They're going to ask your ecosystem of peers and they're going to remember, hey, did this person solve problems or help solve problems outside of their immediate area or not. If you're someone that, no, this person is good at only the one job title, the only things in their lane, they're good at that.

31:04Well, that means that you're not ready to be promoted. And so your peers are going to get ass. And the other thing that I would say is it's not always the case because titles are weird. But one of the things that someone told me once, the difference between a director and a VP and how you know you're getting ready for a VP role. A director is usually excellent at executing on the tasks that are directly in their wheelhouse or in their lane. And that, yeah, okay. As a director, you should be able to do that or even a manager, let's say. But when you get into a VP role, you have to not only execute on everything that's in your lane, but you have to understand the business or everything that's surrounding your lane so that you can also contribute to all areas of the business.

31:55Those are the best VPs. And what you're saying here with the no more, that's not my job thing is actually practice for that. You're like practicing to do that all the time. So I would just call it out. It's like an amazing advice for people that are looking to get promoted. And it's not easy and you have to watch out for burnout. out, but I think that's like your job is to make the organization more successful, right? Whatever that means. And that means that you take the concerns very seriously and you try your best to talk to people, to navigate, to improve things, right? To escalate if needed, right?

32:36You're not someone that just passes on the problems, right? I think that's the huge fault. And it's exactly what you mentioned. as a VP or senior leader, someone is able to take responsibilities outside the direct area of ownership and make progress, like in connected dots, fill the gaps, right? That's right. Great stuff. Coming into our last topic here, you have, I guess you would call it maybe like a framework. Let's call it a framework that you built called the four P's of engineering leadership. can you outline what these four p's are and let's just try let's start with a high level overview first of the four p's 100 so the the main idea of the four p's just so before i get into that is that once i tried to quantify okay if i have to decide what areas of responsibility an engineering manager has, what are those?

33:37And then a leader of mine came up with the six Cs and then I tore into the four Ps. But the four Ps is a way to see everything that you need to be paying attention as a manager or as a leader, right? On your day-to-day to grow. And it can actually be applied since like you start as a junior engineer, even if you're a director, VP, you can use the same framework to organize your time, to see areas you need to focus more. But the main idea is that there are four main areas or four main pillars of growth in a career in tech. The first one is platform. The second one is product. The third one is process.

34:15And the last one is people. And the idea is like platform. What I mean by platform is actually the discipline, is actually engineering. But at the beginning of your career, your main focus is to be good at the platforms that you work with, right? And it can mean like learn the language. It can mean like learn the stack that your company is using, right? But at the higher levels at the platform, it actually means being building, like building leverage through platforms to your company, be paying attention. What is the next strategical architecture change or the tool that's going to help us to scale as a company, right?

34:52The second P is product. And that also goes into the business side, into the user behavior is actually understanding the business and how your product is being used by your users, right? How the organization makes big decisions, like what are the top three priorities for the next three years, right? And it involves also how you talk to your peers on other disciplines, right? Talk to your product manager, how you talk to your designers, like everything that's needed to deliver the projects and to improve the product. The third P is the process. And by process, here I mean everything that you have in order to make the work done, right?

35:35It can be interviewing, it can be reviewing PRs, it can be like, what is your process to, let's say, onboard someone, right? is to think about how to scale yourself either as an IC or as a man. At some point, you're going to be a bottleneck and having some kind of process is one way to scale the culture that you want to cultivate, right? And the last one is people. And people is basically everything that we know about soft skills, everything we know about mentoring, everything we know about feedback, performance managing, growing people, like mentoring them, right? About like facilitating meetings, like everything that deals with the complexity on the people that you work with, right?

36:24Inside the organization, outside. So if you combine those four things and you think about kind of like, okay, let's see where I am in my career at this point, which one of the four P's that inside my organization at this stage in my career is the one that I would give more, that would have more leverage. And at different stages, your career is going to be about moving from one to the other. One thing that I mentioned on the RTO is that at the beginning of your career, you're going to be focused a lot on the first two piece. That's like platform and product, because your goal is going to be to be proficient, to understand engineering, to understand why certain things work in certain ways, and to be able to deliver things quickly, to understand what is the pain points of the user?

37:10What is the product manager asking? What will make the most impact with all the technological capabilities we have? And on the second half of your career, let's say if you have a manager or you should go beyond staff, right? What's going to give you more leverage is actually on the process and on the people side, right? It not necessarily means that you should stop all your focus on the platform and product, But usually if you're not able to scale the culture that you want to cultivate or if you don't have good soft skills to mentor people, inspire people, right, your impact is going to be limited by what you can do yourself, right?

37:51So I think those are the people in the process are the foundation to grow beyond, let's say, what you can do with your hands. That's a wonderful outline. And I really like it because one thing that I do to start my week at work every week is kind of set intentions for, okay, what am I trying to accomplish? What's important? And I think having a good framework because you can kind of say to yourself, okay, where do I need to be on platform? What do I need to think about for product? What do I need to think about for process? What do I think about for people? And it's not always going to be balanced, the amount of effort that you need to put in ones.

38:32But maybe if you're coming into the week and saying, okay, this kind of is how I balance and round out all of the areas so I'm not avoiding one of these or too much on the other, I highly recommend thinking about that intention setting for each week. And I wanted to ask you, is there one of these that you see managers or directors struggle with more than another? I would say the platform side, if I had to pick one, I think everybody knows process, people, and product, the business side. But not a lot of managers keep the eye on the platform. By platform here, I mean both like, okay, the technology you're using, but also be able to have a good understanding of actually how things work in reality.

39:23I think at some point in your career, as you transition to manager, senior manager, folks lose track of how things are actually working. What are the architectural problems in reality? And they start to talk at a level that's way too abstract. And I feel that there are ways to keep that, let's say, technical grounding there, even as a manager. Like, for example, participating on whatever is a post-mortem of like incident you have, like reviewing big RFCs, going over the code base, taking a look on a few PRs here and there, reading and playing around with the tools you're using for your pet projects at home, right?

40:06I think those are things that are really hard to maintain, like yourself, sharp to be able to contribute at the manager-director level on the platform side. I feel that a lot of managers, they completely delegate that to their staff engineers and they don't even have, let's say, the skill or the ability to argue and to bring their points because they are way too off on that. They just trust and they depend on that person or that group of people to be there with them on every single meeting where they are not able to represent them. I think that is a problem. And I think it's something we've seen the industry kind of shifting to have more engineering managers that are technical.

40:55But I feel a lot of times we also get that wrong and we go to another extreme of being technical means you're actually coding and managing. No, being technical is like you're able to navigate on the architecture, able to understand, okay, where is the problem? What are some strategic investments and why? and you understand at high level how the infrastructure on AWS or your cloud works. There are a lot of areas on the platform that are not at the coding level. And I think it's something that folks usually get either too deep or too high level. Yeah, I think it's one of those things that's easy to let slip away because you're getting all these.

41:39There's three other P's. Two of them are new for you. if you're like a first-time manager. But yeah, I guess the only tip, and that happened to me too, and it's tough. You have to catch yourself. Whoa, wait, I don't think I really know how this works anymore. I didn't contribute well to that conversation that I used to. One tip that I do have is sometimes you can combine two of the Ps together. And what I mean by that is you could use people and platform together. So for example, let's say that you know an engineer, maybe just an individual contributor developer that's working in that area or built that piece of code that you don't know much on.

42:21Quick one-on-one with them. One, you're going to boost on the people side. You're going to get to know them, see what's going on. Hey, could you explain to me what you did here? It seemed really interesting. I'm trying to catch up. You want to talk about it? And they'll love talking about what they built. I mean, it's like what they want to do. And I think that's a way that you can save time with people and staying close. and you talk to everybody so you really know. And they'll tell you the real problems in that area too. You know, once you, like the engineers, like the developers know where the weaknesses are.

42:54Yeah, exactly. I think you should use your one-on-ones to actually get deep on those things. And also to ask different opinions, right? Because you have different engineers that have different knowledge at different levels of the code base. So if you ask one, they say, this is the worst problem that we have. We should fix it now. If you ask another one, it's like, no, there's not a big issue. There is actually another way to solve this, right? Like, and you start to build this picture in your head of what's actually going on. You don't take a single data point as, okay, that is the view of how things are, right?

43:29But I feel is like, yeah, combining your one-on-ones to actually get deep on the platform is a great idea. Another thing is you should look at your calendar and see kind of like how much time you're spending each one of the four Ps every week. So you have a lot of project status meetings. You have a lot of one-on-ones, but you don't have a lot of time to either RedDocs comment on things, right? Or even to do deep dives with your engineers on certain areas of the code base. That's a problem, right? You should balance that to at least have a couple of hours every week where you are investing proactively on those dimensions.

44:09On the process, on the platform is often where I see a lot of challenges to prioritize because those things are easy to ignore on the short term. Because you only need to deliver it and you only need to keep your people, let's say, growing and I think career-wise feedback. but on the platform and the process where you're actually going to get the most leverage for the long run. Amazing advice, Thiago. I'm going to get us out of here on time. So thank you so much for coming on the pod. It's been such a pleasure to have you on the show. We had you for two episodes and I still feel like we could probably do a third or fourth.

44:52And I want to make sure that we give you a little bit of a shout out. You have your own podcast. Can you tell us a little bit about that and where we can listen? Yeah, thanks, Dan. It's been a pleasure. And I would be more than humbled to be here for another episode. I think we have a lot to talk about. So my podcast called Engineering Advises and Asked For is myself and four other engineering leaders that together we have 50 plus years of experience in the industry. And we talk about a lot of contentious topics, such as how to get promoted, how to navigate the org, how to grow to be a manager of managers, right?

45:33Like side projects. Like we had a lot of topics we covered and we are just, we're actually releasing the last episode of the season this week. So this is going to be our second season of the show. And we're really proud of it. That's amazing. So everyone, please be sure to check out at least the second season of Chiago's pod, Engineering Advice You Didn't Ask For. And before we go, don't forget to check out the Dev Interrupted Substack for more insights and discussions from our top engineering leaders. And if you have found this episode valuable, please share it with your network. Thanks for listening, everyone.

46:17and we'll see you next week with another installment in our series on the journey of an engineering leader.

From the publisher

Once you've taken that step into leadership, what foundational skills and attitudes will carry you forward throughout your career?

Continuing our series on the career journey of an engineering leader, host Dan Lines once again welcomes Thiago Ghisi, Director of Engineering at Nubank. 

In this second episode, they pivot the discussion from the initial steps of becoming an engineering manager to the more nuanced subject of building a robust foundation as a leader. The episode explores the essential skills, the dos and don'ts, and the philosophies that can guide engineering leaders to make an enduring impact on their teams and projects.

Tune in as we unravel the core principles and practices that underpin success.

Show Notes:

OFFERS

  • Start Free Trial: Get started with LinearB's AI productivity platform for free.
  • Book a Demo: Learn how you can ship faster, improve DevEx, and lead with confidence in the AI era.

LEARN ABOUT LINEARB

  • AI Code Reviews: Automate reviews to catch bugs, security risks, and performance issues before they hit production.
  • AI & Productivity Insights: Go beyond DORA with AI-powered recommendations and dashboards to measure and improve performance.
  • AI-Powered Workflow Automations: Use AI-generated PR descriptions, smart routing, and other automations to reduce developer toil.
  • MCP Server: Interact with your engineering data using natural language to build custom reports and get answers on the fly.

More from Dev Interrupted

All 208 episodes
Career Journey 2: Essential Skills & Key AttributesDev Interrupted · 47 min
Listen in VO