BrandGhost

More Experience, More Overwhelmed - Principal Engineering Manager AMA

With great power comes great responsibility... And with more seniority in your software engineering role, you might be feeling like you're getting more and more overwhelmed. What are some strategies to help with that? As with all livestreams, I'm looking forward to answering YOUR questions! So join me live and ask in the chat, or you can comment now, and I can try to get it answered while I stream.
View Transcript
All right, I think I hope we're getting started here. Let's see if the bits are flowing through the streams. Come on now. Okay, I think we got Substack going. I think we got Instagram. Instagram's going. Nice. Let's press go live. Cool. Welcome. Welcome. Um chat looks like it's probably broken again with Twitter. I don't know what's going on with Reream and Twitter to be honest. Um for like the last couple months the chat like the chat works but it used to show the count of people and I could see like oh wait there's people from Twitter coming in and like it just doesn't happen anymore. Um I can see the messages though. Uh so oh I should turn the messages on my boop. There we go. Um, no one sent anything yet, but the chat works. So, welcome. Uh, this is the live stream that I do. If you're new to my live streams, it's an AMA format, so you're welcome to ask anything you want about software engineering, career development, that kind of stuff. I have a topic every time. And this time is on my latest newsletter article, which is called more experience, more overwhelmed. Just putting a link to that in the chat. That's at weekly.devleer.ca. And that's a free newsletter. Uh there's a paid for version where you can unlock all of the archived newsletters. There's over a hundred I think that was episode or issue 114. There's like 110 that you can access in the archives. And there is a Discord community. It's very small, but that's my goal. So that's a paid for Discord community if folks want to join that. That way I've had, you know, people asking coding questions and stuff there, but it's purposefully kind of small. Uh that's why there's a little payw wall and that way it's not like flooded with people and then I'm like I can't actually help or respond to anything. So that's available as well. Um so AMA format welcome to ask anything. This topic is from code commute and originally uh from Reddit. So this was a topic that a Redditor posted. Uh, I usually go to experienced devs if I don't have a sort of backlog of questions to go answer. And this Redditor was saying it's kind of interesting. They're talking about how uh they're in sort of like a staff position. Hello Moav 350. Um, so in this staff position and they were kind of talking about like now that they're at this level starting to feel like kind of overwhelmed. They talked about like you know they don't have anyone to delegate work to. this kind of thing and I think that this is like a I don't know I feel like it's a set of shared experiences that people probably go through. So I had responded to it on code commute kind of talking through it. When I talk about these things on code commute I try to address you know what the person's talking about but then also on top of that general perspective. And then this newsletter article that I'll go through is is really like a more generalized perspective overall on this kind of stuff. But um this topic overall is something I have talked about before. It's not it's not new. And um before I start going through like some of the content of this, uh one of the things that kind of just wanted to make sure I touch on at the beginning of this is like this is uh this is the type of thing that I I think that sometimes people don't really consider and I think a lot of us are guilty of this in software development, right? Like a lot of focus on our careers. Um probably a lot of people in this industry are of a similar personality type in some regard where it's like you know uh trying to be or not not even trying like are high performers or trying to be even higher performers, high achievers, this kind of thing. Um but like always trying to to look for more right and especially when we talk about career development and career growth there's a lot of focus on like well how do I you know how do I'm starting as a developer how do I go like to midle how do I get to senior like what is this career trajectory look like and um you know my experience from managing engineers is like this is a really common common thing that comes up I've had uh even people that I don't manage but have done like early in career mentorship it's a really common question like people are like hey great I started I'm working this is awesome it's exciting but like how like tell me about getting to the next level it's like a thing that happens very early in these conversations um personally I found this more in like big tech and when I worked in a startup it was a lot less about that people were seemed to be just more focused on like you know how do I just in general do a good job and make sure I'm doing the right stuff but in big tech I find there's a lot more focus on on the career push. So the reason that I think that this is a really important topic overall is that like as you gain more experience and you try to operate at the next level and then you ultimately get to that next level, the expectations sort of continue to increase. And this is important because the idea behind this is that when you're operating at some level and you're like, "Cool, I want to I want to be promoted into the next level." A lot of the time you need to be showing that you're operating at that next level. Then it's recognized for a sustained period of time and people go great. We don't have to take a chance on this person operating at the next level. We can see that they're doing it consistently. your manager has enough sort of um call it ammun am can't speak ammunition or evidence I was trying to put those words together um they have enough evidence to be able to say like hey look this person's deserving of this promotion and let's say it happens but if your goal was like I'm just going to push really hard for a little bit get to that next level and then I can like take a step back and coast I think this is where um you know bigger recipe for disaster in terms of like feeling overwhelmed because like I said the expectations go up. Um, and you know, even if that wasn't your goal to take a step back, it's like when you do that push to get to that next level, like truly the bar raises and the expectations raise with it. So, something to keep in mind. the more people that I talk to, especially through content creation and just meeting more people of different backgrounds, I've met more people because I I thought there was like zero people like this for some reason, but I've met more people that say, "Hey, look, I've gotten to a certain level and like I'm great here." Like, you know, not that I'm going to slack off and do nothing, but like I'm great where I'm at. I don't need to be pushing for that next level because I I just do not want the extra like whatever it is like extra potential hours, extra workload, extra stress, like you know kind of focused on my family or I'm focused on other things that I'm doing in life and this is a good spot. I'm happy here. Um question in the chat from uh Bonik99. Is it still worth it to to get a degree in computer science and two is pursuing software engineering still worth it long term? I'm going to have bias here. I think the answer is absolutely yes. Um there are people that would have said even before like all the AI stuff going on or the job market looks like people would say well you don't need a degree. Um my answer to the first part like you know is you're you're asking is it still worth it to to get a degree into computer science? I don't know. I'm stuttering or something. I don't know what's going on. Um [laughter] ah panic. Um is it still worth it to get the degree though? My my perspective on this is like do you need one? Like do you need one to become a software developer? The answer is no. You don't need one. Um with there being more and more competition, do I think that it's a helpful thing? Sure. I I definitely think so. Just to give you a really trivial example of this just to to help illustrate my point. If you took two people with identical resumes, everything is the exact same. Okay? one person on their resume just also happens to have a degree. That's just one more thing that stands out compared to the other person at a minimum. So I don't think that's the best sort of reason to do it. But that is a reason. I think what's more important is if you feel that you can extract value from that degree. So what do I mean by that? If I reflect on my own career journey and like education that came before my career journey, I went to university. I went for computer engineering. I did get a degree in this um and sorry on uh on Instagram. Thank you for your question. I'm just going to answer this one first and then I'll jump over to yours because it doesn't come through in the chat for others to see. Uh but I think it's a great question. So for me in school um during school I kind of felt like this is stupid. Like um I went from you know in high school getting like really high marks without trying and I was like oh university is going to be a breeze was not a breeze. It was terrible. Um I didn't like what I was learning. I struggled a lot and like was like why am I doing this? And then for me I went for internships. So I had six internships in my 5 years of university and that made a world of difference. I was like I know that I want to do this. So for me paying for the education at the time seemed like a waste but the experience from internships was absolutely worth it. In hindsight my time in school was a lot less about the specific courses I had. School forced me to figure out how I learn. School forced me to learn a lot of different things around analysis. which might like sounds very generic. Yes. But uh engineering in general is analysis heavy. So I feel like the specific things that I learned in school are kind of like I don't I don't do calculus in my day job. I'm not integrating things. I'm not taking derivatives. I'm not doing leelas transforms or furer fier transforms. I'm not I'm just not doing any of that stuff. I just don't do it. I don't do circuits. whatever the specifics to me don't matter at this point, but there's a lot of things that I take away from school that are sort of like meta lessons that I think are very applicable. So, that was really helpful. The degree can be helpful in terms of like does it look good on paper? Sure, there's going to be some places that want to consider that. And then internships for me. So, for me, was it worth it? Absolutely. For you, I'm not sure. But if I could go back in time, I would do the exact same thing I did in terms of what I did for my program. Next part is it uh is pursuing software engineering still worth it long term? I absolutely think so. I think that things will look different. I don't think that software engineering is going away. People can debate this. No one has a crystal ball. So anyone who wants to jump in and say, "Well, you're wrong." It's like, "Okay, we'll prove it." You can't. And that's okay. I can't prove that it's going to stay either. We're not going to get anywhere on this. But I do think personally, and the reason I haven't just like jump shipped to go do something else is that I do think it's going to exist. I just think it will look different. I say this as an engineering manager as well. Think about it. If there's going to be no software engineers, do you really need me? My job is a people management role. If there aren't people because there's no software engineers, you don't really need me, do you? But I do think that it's important. I do think it will exist. I just think that the role will look different. That's all. Um, still involving programming. Will you be doing as much of it by hand? Probably not. Will you have to be reviewing a lot of code, designing things, actually performing engineering? Yes. I think so. So, um, long story short on that, my answer to that is yes. I think so. Um, to both of those parts. And then, um, sorry if I have your name wrong on Instagram. Uh, Sujan uh Ka says, "I'm a software engineer at Google and I'm a sweet at Google, resigned on October 6. What I need to do now?" Um, I guess this depends on what your goals are, right? So, is your goal to uh to go back into the workforce and work somewhere? If so, um, my thought here is like I my framing is always like, you know, what do you want to be doing? um I don't know your financial situation and that kind of thing because that changes the time horizon. So if you're like, "Hey, I want to do X, but like literally I need to start paying for rent," then your time horizon shrinks and you might have to start taking some action on something else. But if that's not uh super pressing, like you know, by next week you need to get get a a paycheck kind of thing, I would strongly encourage you to think about like what are the things that you enjoy spending time on? And I mean this because if you at least this is just my opinion. If you spend time on stuff in your career and you're like I hate what I do. I think it's really hard personally to excel at that. I think it's going to be demotivating. You're not going to be interested. So like you're going to be spending all this time doing something you don't actually enjoy or you're in that you're not interested in it. and sort of getting further ahead in a career path like that is going to feel like you're walking through quicksand. Can you do it? Sure. Do I recommend that people spend the majority of their life doing that? No. So, I do always recommend try to think about the things you enjoy doing. If that means like you're ready for a different challenge, like I'm just making this up because I don't know your background and I apologize here, but you know, if you did mobile development, awesome. Did you love doing that and you want to keep doing mobile development? Okay, cool. Was it in a domain that you enjoyed, right? Like was it, I don't know, you worked in payments for mobile devices or you did finance or you did games or something like do you enjoy that still? If so, great. Like gra like gravitate towards that. If not, like start thinking about the parts of that that you would swap out. That would be my take. Once you have an idea for that, think about the different places that are hiring for that. go look at their job postings like what are the things the skill sets and stuff they're looking for see how that matches up with yours and if you're like hey I wanted to move from mobile development over to you know backend service development awesome very cool what are those companies looking for do you have those skills if not like what should you be doing on that I think this person left the chat so they might not have liked my answer that's okay um [laughter] Cool. Um, with that said, I'm going to switch over if folks just want to see it very quickly. This is, um, this is a newsletter article. So, I'm going to be going through this. I put the link in the chat. I'll do it again. Um, I'm just going to put actually the the link to the newsletter. So, this is just at weekly.devleader.ca. Folks on Substack, you are already there. That's where the newsletter is. But if you want to follow along, I'm going to be sort of taking parts uh from that newsletter and kind of walking through these topics. Of course, at any point in time, it is an AMA format. So, jump in with questions about anything you want in software engineering and career stuff. And I'm happy to just like, you know, finish up my thought and go answer your question as best I can. Okay. um kind of gave an intro to this the you know a few minutes ago but this idea of like as you're getting more experience um oh man we got a rust question okay let me let me introduce the topic and I'll answer I'll answer your rust question um I think as you're getting more experience you you kind of get put into situations where the expectations are higher and as a result of that um if you're sort of not prepared for that or um you haven't you haven't worked in some of these areas that require more demand or have a higher level of experience and the opportunity for feeling overwhelmed is greater and greater. Um I'm going to just introduce sort of the first topic within here and then I'll answer the Java Rust question. This is you got to got to answer those controversial questions. No matter what I say, someone's going to be mad about that one. But it's a good question. We'll talk through it. the idea with um kind of going to a level that's above senior, right? And this can even happen at senior, but the more experience that you're getting, um, this idea of like level appropriate work is important because I've talked about this in other videos and talks and stuff, but um, what you're not doing as you get more experience is um, you you don't just say, "Okay, well, how I got to, you know, a mid-level engineer was uh, maybe you were doing more and more smaller bugs and features and you were able to kind of prove your independence working through these things to get to, you know, senior is not necessarily like, okay, we'll do 10 times as many of those. And to get to like staff or principal is do a hundred times as many. You're doing different things. The type of work you're doing changes. It's not just like a multiplier of the number of bugs or features you do, number of lines of code or whatever. So, your how you're spending time changes. And I think one of the things that becomes more and more apparent is that the type of work you're doing will eventually require that you are leading projects of different sorts. You're trying to get people bought into things and ultimately there's going to be work that comes up in these projects where you need to be able to figure out what delegation looks like. So to give you an example, if you're leading a really big project, there might be situations where sure like given the number of u people that can help contribute and all of that, different resourcing on different projects, timelines, maybe it is that you're doing all of the pieces of that project. in in what what I would consider a more ideal world if within a team or organization there's multiple big projects going on if there's enough people to help across different levels it would be really helpful to be able to take people that are more junior and I don't mean like only junior people this could be just anyone who is not necessarily at your level so they could be senior if you're at staff or principal they could be mid-le they could be junior finding things that they can work on that contribute to your project can be awesome. But what's really tricky here is that a lot of people in these levels especially in the beginning like you you don't have direct reports. So you don't just go okay well I need you know to delegate some of this work like let me go look at my team list and like I'll go through and I'm picking Jimmy like Jimmy reports to me. Jimmy does not report to you. You don't have direct reports. So, um, where this gets tricky is people feel like, well, I don't have, you know, the help to go do this. Like, I don't have direct reports. How do I delegate things? So, we're going to talk through that, but I'm going to answer Jaban's question in just a second. Devin in the chat says, "Just barely caught the last question. Stages of life. It's okay to enjoy uh changes from time to time." Absolutely. It's a great point. Um, and it's a good thing to reflect on periodically, too, because the things that you enjoy, the things that you want to be learning, like these things will change. And if you think that they're carved in stone, you'll probably find a point where you're very complacent or you're not feeling comfortable or whatever it is, and you're like, "Wait a second." Like, it's maybe it's just time for change. Okay, Jabon, Rust or Java? The answer is C. And there you go. We're all done here. So, thank you everyone for the live stream. Um okay no in all honesty um there's opportunity in both uh they are different I would consider like different paradigms for programming uh what's tricky about this question is like you know I'm going to I jokingly say C right and C is just the better Java so does that mean that I'm going to tell you well then go stick with Java because it's close to C# the answer is no and I'm not going to tell you just switch to Rust right um you will have people that are hellbent on Rust. And if you were to go ask this question on social media, which by the way, this could be a fun experiment because uh if you want to get someone to engage on your post, tweet that. Um you'll have Rust people that will say, "Obviously, Rust. Rust is the best thing that's ever happened to the earth, right? This is the only way forward. Everyone should use Rust. There's no better language in Rust." And then you'll have Java people that will say similar things. Oh, Rust. Okay, sure. Yeah, but Java's been around for forever. It's battle tested. It's used everywhere. There's a bajillion things built in Java. Like, have you seen Android before? By the way, there's a lot of Java there. Um, like you won't get a clear answer. And the the reality is like there isn't a best programming language. if you are looking for you know particular jobs like this is what I would recommend like what kind of work do you want to be doing right and if like and this can change over time as well but like where are you at in terms of your skill sets and what work would you like to be doing because I would this is just my take on this if you're like hey I you know I know a little bit of Java now and like I'm trying to get a job or want to switch into a job and like they're using like higher level languages like Java C things like Python, I don't know, it's a little bit higher. Um, then you might want to stick with something like Java and you're more comfortable with that and that's cool. But if you're like, I'm trying to change, I'm trying to get into these other areas. I do want to do and people are going to freak out because I'm not trying to say like Rust can only be used for like, you know, doing kernel development or something, but typically people are using Rust for lower level things because if you're trying to go build different types of systems like web applications or you're trying to you know think about like your uh your TypeScript react sort of stack with Node and everything else like could you do that with Rust? Sure. And there's going to be people online that are like I do that with Rust and it's awesome and like that's great but um probably statistically speaking the rest of the world is not doing that right now. So kind of you might want to pick and choose your battles here. here. So, I think either option is great. I don't think there's, you know, a better one here. Think about the type of work you want to be doing. And the other thing is like there's nothing that says you can't learn both, right? Maybe you're at a point where you know a bunch of Java and like exploring Rust could be super interesting. It could be enlightening to see how things go. Maybe that's not a good move right now because it will be overwhelming in terms of trying to balance just making this up. Maybe you're learning um you know maybe you're still kind of new to Java and going to try and learn Rust at the same time is going to feel like crazy. So like don't don't do that. Save that one for a little bit later, right? Um I don't think that there's a one right answer here. Um I'm just trying to give you different perspective so you can make your own informed decision on this. Um what's what's Carl say? Um Carl says some uh oh that's Carlos uh some companies some companies not only believe that more experience should do more but oh the ones with the higher salary should do more they forget that the quality of things that get done is different. That's absolutely right. Yeah. Um [snorts] cool. Okay. Um so yeah Jabon let me know if that makes sense. I hope that does. Sorry that it's not like a oh clearly go pick this language, but um I I think that anyone I mean this I think anyone who's telling you like obviously this language over the other is like they're kind of just like telling you their personal preference and trying to shroud it in some other nonsense. So you know that's my take on that. Um, Romesh says, "Hi, I'm a PSC and my work and experience is mostly revolving around net over a decade experience in I find AI things very interesting. Should I pursue this new journey with the current tech stack or switch to C++ Python and nor mo what I don't even know what mojo is." Um, [laughter] so honestly, like I think again I think it just depends on the the type of stuff that you want to build. Um, it's a good question because it's very similar to the last one, but I think you you have a little bit more context in your question that might help you answer it kind of for yourself. I feel like I'm giving like [laughter] the you know cheater answers here like ah I could answer your question but really like you can answer it yourself but I kind of I kind of mean it with this stuff right like you know again so Romesh is actually saying mostly revolving around net so what am I going to say like stick to net right um yeah because C is just better and that's the way it is but no in all seriousness it's like I I would think about the types of things that you want to build personally. So like I I build stuff that uses like uses and interacts with LLMs, right? I personally build innet not because I think that it's the best language or you know infrastructure in the world or like C# is the best language in the world. I use it because I'm very very comfortable with it. So when I need to build stuff someone might say you know what but like in all honesty Python is a better option here. this C++ would be more performant here. It's probably a better fit. And I go, I get it, but like for me to go build things, I'm extremely comfortable in C. It would literally slow me down to go pick anything else to go build in. Is that a good reason to like never learn another language? No. And like I should explore other languages, but when I'm trying to build things and get stuff done, I'm going to pick tools that are familiar to me. And so I think this is why this framing is important. So Romesh if you're like I'm trying to explore new things and like AI is a thing you're exploring like how much and it's a genuine kind of question for you to think through. It's like how much stability do you want in the foundation you're working with? Because if just as an example maybe sticking with is good so you can learn about the AI concepts and have a familiar construct around you or maybe you're like I want a whole new experience and maybe it's a good opportunity to kind of jump over to something completely new because you don't want to be constrained by your way of thinking using an existing like tech stack right so I think there's options here my person like if it were me personally I would stick to the thing that I'm comfortable with to go learn the new thing on top of that. So for example, you want to have more experience working with AI, LLM, things like that. I would personally probably take like I know let me go learn these other things using a familiar basis. Um, I like keeping some consistency in what I'm learning so that personally not everything is switched because when I start to hit a wall, it's like, okay, well, is it a wall because I'm fighting with the syntax of this language or I'm fighting with maybe the syntax is fine, but there's weird nuances to the language or is it because the concepts like dealing with LLMs and stuff like that is all like over my head? Like when I'm trying to learn and explore things, I don't want the entire experience to feel overwhelming. So, I like keeping some things fixed. Now, is that the same for you? I don't know. Is that going to align with the type of work you're trying to get? I don't know. But I think that these are things that you want to prioritize for yourself, right? Like, is it just a learning experience or is this like I'm trying to set myself up for different types of work. If it's the latter, what I would personally do is look for the it's going to be sort of like sounding like a broken record, but like where do you want to work doing what? what types of things are they looking for? And if you're if you don't have that experience for your resume to put forward, that could be a good opportunity to go work on those things. That's my sort of really rambly answer to that. Um Devin says, "My opinion, switching uh stacks isn't necessarily right. Adding a stack." Yeah, I think that that's a good way to put. Adding a stack to what you know is is the play. You may find that you're even better equipped to build the stuff. Yeah, I think that's a great point. um that kind of you know it's not certainly not exactly what I said but like when you when you swap out all the things there's kind of no foundation left but adding to it is like another tool to go leverage so I don't know I I I like that approach um Carlos says for the ones asking what language is better to learn they can look uh look at the market the job they want yeah exactly that's Carlos saying what I'm saying uh Jaban back in development six years of experience just looking to learn another programming language C# is just everywhere where we're looking at new jobs. Very interesting because I haven't been looking at new jobs and um I feel like historically I've heard you know this is going back a few years still but people are like oh like who's using C like you what do you work at Microsoft? Yes. Um, and I feel like there's different regions, and I don't know, maybe this is just my experience from talking with people online, but I feel like in Europe, there's a lot of people that are using uh net a lot more, but um I've been hearing it more like people talking about it more. And I think there I think there's just more awareness that like, hey, you can run.net on not Windows. And it's like, yeah, it's been like that for like a decade. But anyway, like it's cool. I think it's I think it's a great platform and I'm super excited more people are doing it. Uh Baron Bites, this year I've seen AWS, Azure, and GCP all have outages. No, I don't know what you're talking about. I think just AWS and GCP. Um have you have you been involved in any past postmortem analysis that discovers how to avoid production errors? Oh boy. Yeah. Um [laughter] it's funny you mentioned that. Um no, I so I work at Microsoft. I don't work in uh Azure, but like I was I wasn't in the office, but like I'm working while that big Azure incident was happening. And so like I'm not obviously not gonna talk about details and all that kind of like on a live stream but um even let's put it this way like I think it's a really great opportunity for us and uh when I say us the thing that's really I if I haven't mentioned it like I work in Microsoft I work in Office 365 and in particular I work on the routing plane. So like we are at the front door [laughter] and to to Office 365 and some stuff outside of Office 365 and we do like trillions of requests per day. So when there's like outages and stuff online that we read about it's like you know even for me if I'm working and like something's like a site's not working I'm like uhoh. And then in my mind I'm like is that us? So, you know, this is it's always top of mind. And I think something that's really like obviously outages suck for everyone involved, right? Like you have users that are down. Uh there's services across the world not working and then you know you have employees scrambling. Like every everyone loses when that happens, right? But I think one thing that's great is doing these reflection exercises. And so when they don't happen to us, great. we're not the ones paying sort of the penalty of like, oh man, that sucked to live through, but we can still get all the learning and doing the reflection and talking about it, right? So, for example, if we're hearing in the news like, "Oh, you know what? Like, that was caused because of configuration change." And then we're going, "Sure, but like we do configuration changes very safely. Like that could never happen to us." And it's like you don't you don't think that they were trying to do it safely, too. So, like what what happened, right? they're trying to do it safely like there was some other thing and it's like when we talk about systems at these scales it's like it's ludicrous right I I was saying that we do trillions of requests per day that's not millions that's not billions that's a with a TR in the beginning that's a that's a few handfuls of requests per day so when we're talking about the scale that we're operating at like the levels of defense that you need to think about and like the speed at which you need to be able to mitigate the uh the inverse like the the slowness that you want to be able to roll changes out so you can measure the right signals like you want all this control slowness is a weird word to use but I mean like you want to be able to do things carefully measure get the signals and go cool we feel great about this okay like and you have automation and systems in place to to keep you posted on that but there's lots to learn when these things happen so um yes uh the short answer is like premortem exercises, postmortem, premortem for those of you that haven't heard is like the doing your post-mortem ahead of time. So assume you're looking at your architecture and assuming all these issues that could happen with your design. Like what are your mitigation strategies? Do you have to go build more to accommodate those things and prevent them from happening? Um that type of stuff. Yeah, when when especially when these things happen in the news and we read about them, it's like uh we do we do some work on our end to to try and think through them and say like how like how would that play out for us? So I think it's a great question. Thank you for that. Um YouTube restricts the character counts in chat. Oh man. Well sorry [laughter] sorry Devin. Um Romesh says currently I'm doing similar comfortable net and learning AI concepts and the current tech stacks pretty good catch on languages nice uh yeah so moto so yeah I literally have not heard of mojo so it's a new programming language developed by modular combines ease of python with the high performance of system languages interesting I've not heard of this no I guess I I probably live under a rock or something but that's okay there's something new every day we'll have another language by the end of this live stream I've not heard of it um My personal thought on like stuff that's like super super new like that is like and again I don't have a crystal ball. Um if it's super new um I don't know if I would like I would personally probably wait a little bit to go invest a lot of time. I think if you want to learn about the concepts and see like what like how is it that they could have um sort of the readability or the highlevel characteristics of a language and still have all the benefits of like high performance low-level languages like I would be very intrigued to go like go learn about that and understand it because that seems interesting but in terms of like how do I go master this programming language I would for me I would just probably not recommend that because by the time you do that like is anyone even using it or is it just kind of like a novelty? Um might be a lot of interesting learning that comes from it or maybe it takes off and it's the most amazing thing in the world. It's just not something that I would personally like um sort of like gamble on I guess. Um yeah, great question. Thanks for sharing. I appreciate that. Okay, I don't see any other questions. I'm going to jump back over. So delegation, right? It's um this is going to be one of those things where we talk about soft skills again. Um, so I think when it comes to delegating and you don't have direct reports, like it's a little bit easier for me. I manage teams. So if I need to delegate work, I'm working with my direct reports, my employees, working with them to go find things that are their next priorities that are going to be a good fit for, you know, growing in their career, all these sorts of things. There their skills or areas they need to improve on. I'm like literally my role is kind of set up to facilitate this, but like I am a great person to partner with if you you need some help getting work delegated. Like partnering with an engineering manager on that kind of stuff can be great. Um I I'm just trying to scroll through this to see how I did this, but um I don't know if I want to talk about it the exact same way. Um maybe not. Maybe I'll do it a little bit different. I'm gonna go a little bit out of order compared to the newsletter article, but um I think that there's a lot of strategies that you can employ when trying to get um help with work. And so when you're operating at like a you know staff or principal level and you're you're looking for to assistance to try and delegate some work out um I like one of the framings that I really think is helpful is and you can apply this really super general concept to all sorts of situations but when you're asking people to do things for you that seems like a very onesided um trade Right. Hi, I'm Nick. I'm working on this project. I really need two engineers to help me deliver this. I need I'm I'm taking You are the person who may have engineers on your team. I need to take those engineers. I know they're so valuable to all the work that you're doing on your team, but I need them and they're going to help me. Or I'm going to talk to my manager and say like, I need the people that are doing these other important things to help me. And it's a bit of a hard sell because the person who is helping prioritize that stuff might go that's nice, but like they're currently working on the highest priority things. Like that's that's why they're doing that stuff. So instead of framing things and sorry I exaggerate a little bit when I talk to try and just get a point across, but instead of framing things like I need from you, right? I need to take from you. You can frame things as opportunities for other people. And what do I mean by that? Okay, so like literally, yes, you need help. You're going to need some other people to support you on this. But hey, look, you have this project you're working on, and there's some really interesting opportunities here for someone to own a piece of this end to end. It needs an algorithm developed, which means they're going to have to do a bit of a design dock on this. They're going to have to test out different scenarios. They're going to have to get other people to buy into this. You might have some thoughts on how this is all going to work, but that could be a really really good opportunity for a senior engineer that's trying to kind of get a little bit more evidence in terms of the level they're operating at for perhaps higher rewards or to grow in some certain areas like actually being able to put a design together and present it to people, get their buy in, right? Something a little bit meaty, pretty complex, a little bit ambiguous because we don't have all these things figured out. They have to go prove that. It's a really cool opportunity for a senior engineer. As a staff or principal, you might have done this, you know, dozens and dozens of times. So, yes, you can go do it. Yes, you're probably going to need to do it if no one else does, but this could be a really great opportunity. Hey, Nick, do you have any senior engineers on your team that are looking for this kind of thing that like that could be a really good fit? Well, like no, like the couple senior engineers I got are pretty busy, but you know what? Like that is kind of interesting because one of them is wrapping up a project right now and like one of the things that I've been talking about them with is it would be really good if they had after they wrap up these couple of small things like they they are looking for something a little bit more significant right so like maybe this is an opportunity for them so you can start to change conversations into being like like yes I need help but like this could be an opportunity for someone to contribute and as managers At least in my opinion, if you're doing a good job leading people, it's not just go to the list of priorities and pick the most urgent onfire thing. Hopefully, your list of priorities is not just the most urgent on fire things. Yes, that will happen. But ideally, when things aren't all on fire, you can start looking at things and going, "Yes, these are all relatively high priority, but these are really good opportunities for individuals, for engagement, for building skills, uh, for people that are working through different parts of their career journey, for different types of, you know, uh, how they're trying to make it to the next level. When you work with individuals, you find that there's gap isn't the word I want. there's there's opportunities for them to go focus on certain things and trying to align work that is high priority that fits some of those areas is really valuable and takes a lot of effort to try and coordinate so could be a really good opportunity. Romeo says, "I work for Target and have absolutely loved being there. However, there are rumors of more layoffs. Sorry to hear that, man. Uh and didn't I didn't get cut, but the PMs on my team did. Should I start looking for a new gig?" Um, you know, like my answer to this is like not necessarily because of that. Um, but like I I I don't know if I've like frame I kind of think I when especially on live streams and if you watch code commute, I do this a lot. Like I haven't thought about this out loud yet or maybe I haven't even thought about it at all. Um, this has been something that's crossed my mind a little bit recently. And I'm wondering if maybe more of my general advice is like, you know, like not not, hey everyone, go start looking for for jobs. Um, but maybe my general advice to to many people is like, hey, when's the last time you like looked at your resume? Because if the answer is like, yeah, it's been like eight years maybe not. Um maybe it's a good opportunity to look at the frequency that you refresh your resume and do it a little bit more regularly, right? Like for me, I have to sneeze so bad and it's not it's not ready yet, but it's like it's right there. Um so I'm hoping it doesn't sneak up and I sneeze into my microphone. Just fair warning, I'm trying my best here. Fighting for my life. Um, for me, I haven't updated my resume in a long time. So, like again, I'm thinking about this for the first time. I don't per like I know unfortunately like Microsoft has also had layoffs. I'm not I don't like wake up and like go is today the day kind of thing. Like I don't I don't kind of have that type of a existence that I'm living through. But at the same time, it's like I don't think that I'm like uniquely immune to that type of thing. Like I'm I am not special. There's a lot of people that have been laid off that have been, you know, incredibly amazing. And it's like it it's not them as individuals. It ends up being parts of the business, right? Where they're they make decisions at a at a business level. That's what happens. It's not the individuals. And so I'm like I'm not I'm not unique in that regard. So like the answer is if I see it happening around me, should I at least kind of go maybe it would be wise to have at least some kind of preparation? When's the last time I did a lead code question? When's the last time I thought like for me as an engineering manager if I have to do if I have to interview if that's going to happen. When's the last time I even thought about what um you know those types of interview questions look like? When's the last time I've touched my resume? If I haven't updated my resume with anything I've done over the past five years at Microsoft. We all know writing performance reviews isn't trivial in terms of like here's the stuff I've worked on and you're trying to like you know make a case for yourself like and what I if I haven't done that in five years like I'm just it's going to be easy like no so maybe it's a good opportunity to like to start touching up on these things. So, uh, Romeo, like I I don't have a crystal ball and I'm really sorry that you know you and um I know you you still have your job and that's awesome, but for for those of you that have lost jobs, for those of you that are kind of worried, right? Like I'm sorry that people are going through this. And my I guess my advice to to sum it up and not ramble too much is like I don't necessarily think it's the reason to go searching for a job, but I do think it's a good reminder to like to go brush up on some things. Not in a panicky way necessarily, but like a, you know, take some time to do it. And maybe we stay on top of this a little bit more regularly. Maybe that's once a quarter, once a, you know, semester. How do we say that, right? Um maybe maybe for some people once a year is still way better than what they've been doing. So improving or increasing the the frequency I think might be uh where it's at. Uh Carlos says, "Unfortunately, at work, we have to be selfish and think about us." Yeah, we should be ready all the time. Uh not only in case of Leos, but in case good opportunity appears. So yeah, that's that's like an interesting point, right? I think that um and and I'll like I'll be transparent like I I manage engineers, right? And if um if someone ever came to me and like this has happened in my career where people are like, "Hey, look, there's been there's a really interesting opportunity." I don't I don't like losing people from my teams, right? Like no one wants that. But you know what is awesome? When people have opportunities in front of them and they are excited and it's like I would never tell anyone, no, don't pursue that. No, no, no, no, no, dude. If someone has an awesome opportunity or someone's looking for a change or whatever, if you are not part of that, what the hell do you think is going to happen? they're going to end up leaving at some point, especially if you're not part of their growth. So, if there is an interesting opportunity, always encourage people like, hey, you know, hate to see you go, but I'm excited for you, right? Like, why would I not be? And so I think the reality is here that probably a lot of us have this awkward feeling around like cuz like the the word that Carlos used and I think a lot of us feel that way is like it's it's selfish, right? Like it it might feel bad. It's like oh like if I'm only thinking about me like that that's selfish and like we were raised like don't be selfish but it's like is it actually selfish? I realize that's the feeling a lot of us probably get but is it selfish? I don't I don't I don't know anymore. I'm trying to I don't know the right word that I would use because I do think selfish is that is that feeling we get. But uh I'm honestly trying to find different words to use so that it feels less like guilty. We feel less bad about it because I think that it's a I do think it's a healthy good thing to do. So, um yeah, it's it's a similar thing like um I have this conversation when people are talking about like like salary, right? Or like um or asking for promotions. It's like you might feel kind of like might feel kind of gross or kind of bad because like it's selfish or like they're going to think I'm thinking about the wrong things because it's only, you know, like self-centered. And it's like, no, like I I know what you mean [laughter] because I also get those feelings, but uh the you know, I I start to think that that's not really where it's at. Um Romeo says, "I'm a new grad, so it makes this difficult since new grad jobs are so competitive at the moment." Yeah. Well, um Romeo, I hope that helps. But yeah, I would, you know, like I said, I think it's a good reminder for me to go like, you know, I'm not panicking about it right now, but I I don't want to be in a situation where I am panicking and then I'm double panicking because I'm like, oh, I'm so unprepared. Um, so something to think about. Um, Deon says, "Just uh just remember if you're worried about uh reprisal from pursuing opportunities, turn off the setting that causes updates to your LinkedIn profile push to your connections." Yeah. Um, that's a great reminder. Otherwise, uh, people are getting that notification. It's like, hey, uh, what's what's going on there? Um, yeah, and I I realize too that everyone has, you know, different managers, different styles of managers and that kind of thing. Um, but yeah, I I don't know. I I cannot [laughter] I I literally think about a situation where someone's like, "Hey, like think about think about this, right? If someone came to me and they're like, "Hey, Nick, like it's been awesome working on the team, but I think that I am ready for a change. I don't I don't think I'm growing or um I don't know like come up with any reason." That's like this is the the funny part. It doesn't matter what the reason is. Someone has a reason. I would love to be able to say to them, hey, is there something that we can do on the team where it's like you can get that thing that you're looking for, right? Someone might say like, you know, we do a lot of work in X, but it would be like I really want to be able to grow an area Y. uh common one I work in um more like platform uh type teams and it's like do a lot of backend work and it's like hey Nick I'd really like to work with some frontend stuff and like you know a lot of the work we do just isn't that and I've had situations where I've said hey you know what like we don't have that on the team we do have some of our like like I call them like not even a partner team like they're still in our same org so it's kind of like a sister team I don't I don't know what the right words are to use for this. It's not like a partner outside of our org. It's like adjacent to us and it's like, hey, they work on some of this stuff. Maybe there's an opportunity where you can do some some work with that. I call them like feature crews. So, do that with their feature crew and get a little bit more exposure. And that might just be enough where people are like, "Cool, I don't feel like I'm totally stagnating. I have something interesting to try." The reality is if they try that stuff out and they love it, they're going to try to gravitate towards that. That's a good thing, right? Like you're at least facilitating what's the inevitable. That's sort of my my meta point here is like if someone's looking for a change and you're not part of that, it's inevitable. They're going to get there at some point. So you can either be part of that, facilitate that, have people go, "Hell yeah, that was a great manager that helped me grow. They were very supportive." Or you can be the person that's like, "Nope, screw you. Back to work." And then what? People are disengaged. They're not doing awesome work. You're going to blame them for not doing awesome work because you weren't a good manager. Like, I don't know. It's vicious cycle. I would rather have a vicious cycle in a positive way. I don't know what you call that a non a non vicious cycle. I don't know words. Um I'd rather be part of the positive change versus the you know the the downfall of someone and and them resenting you. So cool. I don't see any other questions. These are really good questions. Thanks folks. Um we're like almost at the top of the hour and like I actually love when this happens where I'm like I haven't really talked about the news [laughter] article and people are like I got a question. This is perfect. It's the whole point of this. Um, so I think like if I go back to some of the framing of this article around this feeling of overwhelm when you're like in a role and you're like I'm not getting the support, the expectations are higher. Um, I would tell this to, you know, principal engineers, staff, mid-level, junior, any level, doesn't matter. Awareness. Please do not hide behind things. Please don't. Um because first of all, if you find that you need to hide because if you're like, "Oh, I can't tell people that things are behind because they'll fire me or I'll get ridiculed or whatever." You probably don't want to be there. Realistically, the whole point of being on a team is working together. So, if something is not on track or you're concerned about the progress of something, if you feel that you need to hide or else you're going to get like a slap on the wrist for it or let go or something, probably not a good spot. Just being honest. So, ideally, you can raise awareness and say, "Hey, look, I need support on this thing. I'm trying to lead this project. There's too many moving parts here. I need more support. We have a timeline that we're working for on this and like yes, these pieces, all of this stuff I can do, but if we're trying to reach this timeline, that's not going to be realistic for me to get that done. If I have to do it all, it's probably going to push it out further because there's support that I'm not getting at that point. That's awareness, right? Like that's saying if we don't change anything, timelines change or if we don't change anything, there's additional risk introduced. whatever it happens to be. Raise awareness about these things. Have a conversation with your manager about it. Right? Anyone who watches Code Commute, what do we say on every episode? Need the T-shirts. I need a coffee mug. I don't drink coffee though. I need a shaker that says level set expectations, right? Like talk to your manager about this stuff. Raise awareness. That way you might be surprised. this. Maybe your manager is like, "Look, there's a million other priorities right now, and I hear you on this, and there isn't other movement we can do right at this moment. You're telling me that's going to push the timeline out. Thank you. I understand. There might be other stakeholders we have to go talk to about this. Um, and we we have to move the timeline. We don't have other people that can help." That's one possible outcome. They might say a very similar thing, and they're like, "We don't have people, but you know what? Thank you for raising awareness. Let me go talk to this other group because there's a an engineering manager there and I know they have some engineers and they work in a similar sort of tech stack, similar space. This there might be some opportunity. So, you're kind of partnering with your engineering manager on this, right? But this conversation can go so many ways and like the the point is like if you just hide from it and then the timeline keeps shrinking and shrinking. You get to a point where you're like I don't have a choice but to raise awareness to this and someone goes dude like why did you not tell us for three months? What are we supposed to do in two weeks now when we could have done something for the last three months? Raise awareness. Please don't hide. Um, they have a they received in the chat, right? Level set expectations. Um, no, there's uh there's no there's no merchandise with the quote. I I should do it, but the problem is um problem is like that stuff gets expensive to do. Um, so just as an example, I do have a a Shopify store. Um, where is it? This is this is the thing. It costs money to run a Shopify store, right? Um, I'm typing in my browser. One sec. Um, and there's like a couple like silly things and stuff and like I could go put um I just put a link in the chat. It's store.devleader.ca. It's a Shopify store. But there's like some funny mugs and stuff, right? Um, some of this is like literally I posted memes and people were like, "Oh, I would buy that on a mug." And I was like, "I will literally I will sell you a mug. Why why wouldn't I?" Um, there you go. There's mugs. But like, yeah, maybe I could do that with um some code stuff. The problem is like there's almost no traffic to this kind of stuff. I don't I don't push products and things like that because it's it's for fun. But the problem is it costs money to run the Shopify store. So, like in a year I I don't know, I lose hundreds and hundreds of dollars [laughter] running a Shopify store cuz I'm not aggressively trying to like push products on people. But I don't know, like if people say, you know, I'd buy a shirt or whatever, it takes me it's just time. I go put it on the Shopify store. There's some drop shipping stuff. They someone will make it somewhere and then we could do it. But anyway, that's that. Um, Carlos says, "What do you uh what do you do in cases where you share your thoughts?" And the answer is, "Thanks for sharing, but we still have to get it done." Many times companies won't add more resources or change deadlines. Um, document it. Um, because if it's impossible, it's impossible. So, document it. Continue to raise awareness the whole way through. And that way, like you you cannot be surprised. And when I say you, I mean someone who's like managing or in charge. Okay? So, as an example, I'm going to make a totally contrived example up. You are an engineer. You're talking to your manager about this and then they have their their skip level manager. And that's that's the hierarchy of engineering. And so, you say to your manager, hey, like I know we have this deadline, but like I need additional support on this. and they're like, "Okay, well, we don't have anyone to help and that deadline's fixed." And you go, "Okay, um, like it's impossible for me to go do all of these things based on some type of evidence, not like I don't feel like it, but like what's the evidence?" Like, so try to demonstrate that. What does that look like? Well, you know, at this rate, we've been doing features like, you know, this many features in a week or in a sprint or whatever. Some way to try and quantify that. This is the pace we're going at. it doesn't look sustainable. Then you could have a conversation about um scoping back features. We used to do this a lot. Um when I wasn't, that's a weird way to say when I wasn't at Microsoft, before Microsoft is what I should say, before Microsoft, I worked at a company and we were building digital forensic software. And so there were times throughout the year where like we would try to do monthly releases but there was nothing that like forced us to. That was just the cadence we tried to set because it was a good cadence that we found with our customers to deliver value. the teams that I manage, like every time we pushed code with continuous integration, and this was a downloadable product, by the way, not like a live service, but every time we pushed code and we got a build out of that, you could go ship that build to customers if you wanted. You could go put an installer on the internet and we had full confidence. But we would try to bundle these things up on a monthly basis so that marketing effort could go into it. We could say, "Hey, look customers, we have all this awesome stuff that we're delivering to you." And then people really like that. They like this monthly cadence of being able to deliver stuff. That meant though, if in a month if we plan to do I'm just making up numbers. We plan to do 10 things and we're like, we want to do 10 things. We know that we're delivering at the end of the month. Let's go back to this example, right? It's like, okay, well, if I can't get all 10 things done, do we have a conversation about maybe we're going to deliver that monthly release a week late? That's an option. Oh, no, no. We can't move the deadline. Okay. Can we get nine things done? No, no, no. We have to do all 10 and it has to be on the state. Okay. Well, we need some help from some other team. No, no, no, you can't. Okay. So, you're you won't move anything at all. What I would do is just start raising awareness every time there's a status update and talking about you know talking about the things the constraints that you're trying to um suggest get changed the conversations around them because in my opinion if you have a manager that's like you cannot there's no flexibility nothing can change like what's it would be to me it would be a ridiculous to get to the end of that and a manager is like how could to not have [clears throat] delivered it and you're like, "My dude, I got, you know, 20 updates written down for the past month, conversations about this, and I told you every single time." And we tried making little adjustments here and there, and every single time I reported it to you and said, "We're off track. We need more support. Something's got to change." And you didn't want to move anything. I've done everything I can. If they want to let go of you at that point in time or punish you, you're in the wrong spot. that person does not know how to build software. End of story. That's it. You're in the wrong spot and you're going to be in a better spot. Like that's that's it. If if there is someone like a skip level who's like, "What's going on here?" Like cuz they're kind of removed from this. Like what's going on? Like why why aren't we landing this you know this thing or why are we off track? Like if your manager is trying to misrepresent that story to, you know, someone in in a higher level of leadership, you got it all documented. And I think documentation around this stuff is your best friend when you have uh someone in a position where there is no movement on any of this. That's my take on that. I feel like if you have to get into situations like that, it's already pretty dicey. Um, not I don't mean dicey for you like you should feel afraid. I mean dicey because you're probably not in a spot that's like I don't know probably not a great working environment in the first place. So I get it. You might be worried that like you could lose your job. I think that if you're in a situation and there's constraints and deadlines aren't being met and then someone lets you go over that, it's probably going to be even harder [laughter] to meet the next deadline because there's less people. So, it would feel kind of silly to go letting people go because you're not meeting deadlines like that. Um, that's my take on that. I don't know if that's helpful or not, but um that's what I would recommend. So raise awareness, document things as necessary. I think that's super helpful. Um I talked next about uh mutually beneficial opportunities. We kind of already went over that. Um I find that this is a super helpful one is like we have teams that we work on, of course, right? We're all maybe not all of us. Some of some people might be contractors or um you know doing doing solo work and that kind of stuff and that's that's cool. Uh for those of us that are employed at companies, we're probably working in teams, you know, uh statistically speaking, we're probably working in teams. And so you have a team around you. And I think what's interesting is that as you're gaining more and more experience in your career, um we talk about like networking a lot, right? Uh like on on these streams and stuff I post like on Code Commute, we talk about it a lot. Um, so at least from me sharing stuff, you'll get it from all different angles. I think the value of networking, but like networking applies in the workplace, too. So yes, you have your immediate team and that's awesome. I'm sure there's lots of awesome people you work with directly, but like as you gain more experience, building a network of people outside of your immediate team is also super helpful. So, who are like the other senior engineers or senior plus engineers you're working with, you know, from from being around at the same company for a while, you know? Um, Sally on the other team is like she's really really really good at like designing stuff in the front end that's going to be super responsive and like anytime you have a front end question, she's an absolute wizard there. You got uh Timmy on some other team who like any database question that you could possibly think of, he's like, he's got it right. He knows. He's the database wizard. You got I'm terrible with coming up with names on the spot. Who's someone in the chat? We got um Romeo is, you know, the best person for debugging performance issues that there ever was. Right? So, you build up this informal network of people where you're like, I know that I have these contacts where when something's going on, I got someone I can reach out to talk to. Build an informal network. You do that with engineers around you. I would say getting to know and work with product managers, project managers, designers, like different roles outside of engineering directly. Super valuable and engineering managers on different teams. This is for the same reason I was talking about earlier. When you're trying to get support from other teams, there could be an opportunity where you could work with your manager to go work with another manager and see if there's an opportunity. there might be something where you could already be influencing other engineering managers. You're like, "Hey, I know you guys are working in this in this area. Could you help with us?" I work um with a a partner team. Would I call it a sister team in this case? I don't know. I got to brush up on my my terminology. We have the same skip level manager. It's our networking team. So they do networking, we do routing on top of that. But there is some stuff we do where we work directly with them, right, on the same projects together. So it's a little bit of a cheater example because this would be my direct peer, but there's people that are my direct reports that I know they're spending more time from these projects. They're spending more time now working with this other engineering manager. And I think that's awesome because that means if they need some support with stuff, of course they can talk to me. I'm their manager. We're going to work through it. We'll figure it out. But now they have another EM that they can talk to. And it's like, hey, like I know that we're all working on this spot together. Like I need some extra help here. Like do you have like is there someone I can talk to on on your team that can help with this, too? So you have access to like to more resources, to more people, more knowledge, more more support. So, I think it's really important to try building up like sort of an informal team or a network. Um, just on the previous point, Devon was saying and raise awareness of possible issues as early as possible. Scotty never got in trouble for beating the deadlines. Just don't do it lightly. Yeah. Yes, possible issues for sure. Um, it's like uh it's risk, right? Like I think it's really important to talk about that kind of stuff. There's trade-offs with everything. Um, so if you're seeing risk in certain areas, like something's not being addressed, like call that out, right? If you're you're cutting corners on stuff to move faster, okay, some corners are okay to cut. Like, do you see risk with other stuff or do you have dependencies and people are falling behind? Like those are risks. All sorts of things. Call them out. Raise awareness. Um, the this one I talked about a little bit. Um this point I wrote down it's just like it's titled protect your strategic energy. This is kind of this idea around like level appropriate work. It's one of the first things we [snorts] are talking about here. But this idea that not all work is created equal. [snorts] And yes, the more experience you have, you might be able to crank out more small features or more bug fixes compared to, you know, someone that's more junior than you. That's just probably how it works. But that doesn't necessarily mean that's the right thing to be focused on. It also doesn't mean that like, you know, a bug fix is below you, right? That's not that's not what this means. This means that we're thinking about how you're spending your time in general. You probably want to fill it up mostly with the stuff that's appropriate for your level. If there's tons of bugs that got to get fixed, stuff's on fire, I don't care what your level is. Like, if things got to get done, we got to work together as a team to get them done. Now, ideally, we're not always operating like this. So, if we start to think about like peace time or like the happy path, what does that look like? Well, the people that have a lot more experience are probably working on bigger projects that are a lot more ambiguous that we don't really know what we're going to do to to do to solve them. Working across teams like AC, you know, depending on their level across the organization on really big impactful things. If you go to the exact opposite end of that spectrum and you have really junior people, they're probably working on, you know, the smaller features where we totally understand like what needs to get done or bug fixes where someone's probably like, I know probably where in the code that, you know, where the issue is. But these are really good things for really junior people because you can help build up some momentum, right? They can work on asking good questions, navigating the codebase, learning things. They can work on building their independence because once they start getting some of that momentum, it's like, "Hell yeah." Like, "I got that bug. I did that one. I didn't even really have to ask questions that time." Like, "Cool." Or like, "Now I'm working. I have a a you know, a bug fix up for review and I'm already starting on like I'm already reading what I have to do for this next feature." Like, right? Like that starts to get exciting. They're building momentum this way. that the complexity and the ambiguity in the work they're doing at those opposite ends of the spectrum are very very different. You kind of fill in the blanks with what happens in the middle. But the idea is that in peace time or on the happy path we're able to balance these things out more effectively with level appropriate work. So if you find that you are in a much more senior position and you're like I'm finding that a lot of my time is firefighting like I'm not working on you know crossorganizational things. I'm not working on uh ambiguous problems that need design. I'm not like I don't have any projects I'm leading. It's okay if there is a period where that happens or something comes up. It's not like everything's perfectly designed this way. But if you're like, "Hey, this is this is the norm." Like that's probably a, you know, a situation where you want to raise again raise awareness to that and say like, "Hey, it's probably not me focusing the majority of my time on level appropriate work. I need more support on this. Hey, engineering manager, I find that I'm fighting fires a lot." Well, you know what, Bobby? Like, you happen to be the person that knows all of the things. It's like you are the subject matter expert in all of these things that you're fighting fires on. We can't afford to have you not doing that. Okay, Bobby, like you are the single point of failure. What do we do about this? This is like got to take, you know, slow down to speed up. Okay, it's going to suck a little bit more for a little bit longer, Bobby. But you need to be able to help bring up other people in that space so that when there's a fire, you don't have to be the one to put it out. That means you have to spend a little bit more time skilling up other people, getting them to have that experience so they can go fight the fire and you don't have to. But if you don't work on addressing some of these things, the problems compound and then you're fighting [snorts] fires and not actually doing the level appropriate work and you're like, "This all sucks. Like, what am I doing?" And perhaps going back to that feeling of overwhelm, you're like, the expectation is that I am doing all this stuff. I got no time for it. So try to have conversations about this with your manager if you're finding that you're not able to do it properly. Um I think something that's important to learn, this is sort of like the fifth point in this uh in this list is like um we we see this joke a lot with software engineers saying it depends, right? The answer to every software engineering problem is it depends kind of. Um, but like you always add context, right? You're supposed to add context. You can't just say it depends and walk away. It depends. And it depends on X, Y, and Z. And here's like how that all plays out. Here's the analysis for it. That's the engineering part. The word no works in a very similar way. Okay. And I've talked about this a bunch on code commute and I have many examples like from my own career and yes I am a manager and you may find that like if I give these examples you're like yeah but that's only because you're a manager. This would literally apply to conversations I have with my employees. Okay. So it's not it's not just like a this only happens with managers. So um when we talk about things you know being a priority like here's the set of work we're going to go address this is the priority order. So we're trying to you know we're working on the P 0 stuff that's the highest priority then the P1 stuff next P2 but the reality is in software engineering there's always stuff that comes up. There's always things that change. The only constants change I don't know um there's always stuff changing. So whatever is P 0, you might have a if you have a live service, you might be working through your stuff and Monday's great and Tuesday's awesome, Wednesday, you know, you're halfway through the week, awesome. Thursday shows up, big issue in the service. Okay, everything that was P 0 might change for you because you're a subject matter expert here. Now you're doing a post-mortem on something. We have to come up with the design for something. we have to be able to share that out. There's a timeline on that. That might become your new P 0. Okay? But this is just one example. Things change all the time. And I know that I've had managers come to me and say, "Hey," and not I'm not just saying like my current manager, I mean managers in my career. This includes the CTO where I used to work. I literally we used to joke this is like I can I can vividly like picture it in my head. awesome guy. I love the CTO where I used to work. He's a founder of the company and uh when we were really small, like in the in [clears throat] the office, like we'd all work together. So, we're all super close. And of course, as the company grew and he was doing a lot more traveling, like as a CTO, he was doing a lot more stuff that was like businessheavy and and as the founder, you know, a lot of stuff going on for him. So, he wasn't around as much the same way that he used to be, right? And it was awesome when he was in the office, but I can literally remember times where like we're working away at stuff, he's walking through the office and then you see him like heading your way and you're like, "Okay." And you're like, "I have a feeling." And then he kind of slides up, you know, at the outer cubes and it's like, "Hey, um, how's things going?" And we're like chatting a bit and we're like, we know what's coming, right? and it's going to be so having this conversation and I wonder like what would it take and and it was funny because we we kind of grew as a company together, right? So like I was there when we were like seven people so he knows what he's doing. He knows we know what he's doing. It's funny. We know what the conversation has to happen though. and he would say like, "So, I'm not ask you guys to do this, but like theoretically, if I was like, "What would it take to like if we wanted to do X and have it do Y, like what what would that look like? Like, is that is that possible?" And then and then we'd be like, "Okay, like let's let's talk about it, right?" So, there were many situations where we' be like, "Look, like, you know, that's actually something we have talked about. If you want us to go do this, like we absolutely can, right? That was a thing that we we wanted to make sure that we would communicate this. It's not like we're saying like screw you buddy, that's impossible. But it's more like we can do that and we're not here to tell you no just to get you to go away. But like if you want us to do that, here's what we'd have to trade, right? Because to that person in that moment or after they've been thinking about it, they're probably like, I feel like this is the most important thing. And when we go to have a conversation and we're like, "Hey, that's technically feasible. We can do that." Um, you know, roughly speaking, like even if we're not promising a deadline, if it's like, if you want us to shift away from our current priorities, it's here's what you're trading. And I think I started framing things a lot more like that. It's like, hey, look, I'm just giving you um information, right? If you want this done, here is what you're we're like we have the option to trade these things out from our current priorities. So, we can we're doing a critical bug fix. We cannot do that, but I I suppose you probably want us to because we had customers complaining about that. So, probably you agree we should keep that. Okay. Um we go through the list of what's being actively worked on and it's like, hey, look, like two weeks ago you said you wanted this other thing done. We're not done it yet. It's almost done. But like after every everything we talk through like it's we could trade this thing out and we could start that other thing if that's really what you think is the right thing for the business. And sometimes the answer would be yeah you know like based on everything I've heard yes I think that's the right answer. And we go okay you know we'll park that put it on a branch whatever it happens to be. Cool. And the the what was really awesome about that is that in those situations um at least this is my recollection of it with my team. I don't know. I can't say if like other teams and stuff felt this way, but it didn't like sure we don't like being randomized, but um I think at least when we had conversations like that, it felt less bad because we're like, "Hey, look, we talked about what you're trading for this, you're making a conscious decision." I think the times where it felt bad was when there was no conversation. when it was just like, hey, like someone said we're doing this now and like we don't have a choice and we're like it felt bad because we're like, well, what's the expectation? Do you still think we're doing this other thing? Cuz you said that was super urgent. Like now we're not doing it. Like that was where it felt really bad. There were plenty of other times where I we would do that exercise and this is not the same. Sorry, this is the same type of thing that would happen with that CTO where I used to work. It's happened with my current manager. It's happened with my previous manager where it's like, "Hey, look, here's what's going on. Here's what individuals are doing on the team and here's like things we could trade." And many times people are like, "Oh, I actually didn't realize that this was being worked on or someone was focused on this." Okay? Like, makes sense, right? It's it's almost like they didn't have the information to make decisions. Now that you presented it, they can make a different priority check. That's fine. Sometimes that priority check goes a different direction. That's okay, too. But the point is there's a conversation around it. So feeling like you can say no, I think is important and then justifying it with like here's the stuff we're working on. So ultimately, we can change that no into a yes. If you're saying can we or like do we have capacity? The answer is we don't have capacity. No. Do you want us to trade something? because then the answer is maybe. Here's what we got going on. Here's the trades we can make. Devin says, "We suffer from the classic problem of sales promising something." Yeah. [laughter] Yeah. Uh that's a very common thing. I've had to deal with that a lot, too. Um [laughter] yeah, I think it's I don't know. I feel like our salespeople over time, this this is going back to where I used to work. Um I feel like over time they they learned that um you know if they were to do that they can try to push us a little bit but ultimately it's like like that's your hole to undig if we don't get it shipped. So like up to you [laughter] like you could you could do that but you might not have a good time with it. Um, but I think, you know, all jokes aside, I think that's why it's really important to make sure that, um, across departments and stuff like that, you're all on the same team. You might be structured a certain way with different managers and all that. You're all working at the same place with the same mission, right? So, we got to work together. Um, I think we're a little over time, folks. I'm going to probably wrap it up there. So, I'm going to do my my typical my sales kind of stuff. You know how it be. Um, this is this is Substack. This is uh Inception. This is literally me talking to you about me talking to you. So, this is where the newsletter is. It's weekly.devleer.ca. Um, it is a free newsletter with a uh paid subscription if you're interested. That has access to the private Discord. So, if you want to ask questions there, there's some other folks you can share code. Um, this is a spot where I try to make sure that if people have code and stuff they want to walk through, I can prioritize that with them. I used to have people that would like message and be like, "Hey, can you like help me debug this?" And I'm like, "Absolutely not. I'm busy." Um, so that's where I have the Discord is like if you sign up for this, you get access to it as well. Um, but that's where the newsletter is. If you enjoy these live streams, the topics for the newsletter, sorry, topic for the live stream is almost always based on the newsletter and the topics from the newsletter are almost always based on code commute. I'm going to jump over to code commute. Um there's folks on the live stream from the code commute channel. It's really awesome to see familiar faces. So, thanks so much for being here. Uh folks, if you enjoy the um the framing of these live streams um and you like the topics and stuff, code community is probably the closest thing in between the live streams. Sorry, my nose is stuffy. You can um ask questions uh send them in on like on code commit if you comment on any video uh or you go to code.com and you can submit questions anonymously that way and happy to try and make a video response and answer. Um there are people that have been on the live streams that have asked questions in the chat we answer them. There are people those same people submit questions uh on code commute or through email and we answer them anonymously. Right? So, I think it's great. I think it's um you know, I really enjoy getting questions because the way that I see it, if one person's asking the question and I make a video for it, I've feel like I've at least tried to help one person and if one person has that question, I can guarantee other people do, too. So, um that's my my goal with Code Commute. It's a lot of fun to make these videos. Uh if you watch them and you enjoy them, share them. Um, I feel like Reddit is the untapped market. I can't share my stuff on Reddit because I'll get banned like I'm banned from the LinkedIn subreddit. I'm banned from I'm banned from learn to pro learn to code or something. Like, how ridiculous is that? I'm literally banned from like two super popular subreddits um for like trying to help people. So, uh if you want to share my stuff, I really appreciate that. Thank you so much. Um, Devleader podcast is my YouTube channel where I'm live streaming from right now. So, if I refresh that. Cool. Um, so who do we got as recent guests? Um, some of these are older because I moved my content over from my main channel. Uh, so couple of these are older. This one I had a lot of fun. Um, my guest Samantha was sharing her experience where it's it's a roller coaster. I've had I've had a bunch of career switchers come on the podcast and it's been really fun to talk about their career journeys and stuff. And she warned me, she said, "Hey, there's it's uh it's going to be all over the face and I in my head I'm like I've heard people saying like there was a guy that was on that was a a helicopter pilot uh instructor and you know switching to software development. I'm like that's a that's a pivot and hers was just like one after the other after the other and I was like I wasn't ready. I truly wasn't. Uh but super cool. I think and this is uh this this person Samantha here. I think one of the things that I really appreciated about that conversation was that every time she talked about I want to explore a new like career opportunity, new role, every time she was saying what do I love to do? What are things I love to do every single time? And I thought that was super cool. Um because I I feel like people don't do that enough. It's like what's what's going to put the money in my hands? And I'm like I get it. it's your job, but like it's also a big part of your life. And I really like that she looked at it like I got to find something I love to do. So, um had lots of uh lots of guests on that I've uh really enjoyed having on. Uh if you know people that you're like, I think they'd be a good guest, like I don't know, tweet at them or something and say, "Hey, you should go on on this bald guy's podcast." Uh I would love to talk to them. Got a couple more people lined up. Um Dev Leader is my main YouTube channel. So folks, this is where I put programming tutorials uh primarily in C programming with AI tools and stuff like that. Um most recent videos were about some structured logging concepts using Sarah log. Um really talking about like using scopes for logging. So that's been fun. Uh most of my popular videos are like really really basic stuff. I find that a lot of my subscribers or people that find my channel are like really interested in uh beginner C stuff. So, if that's you, um I have a bunch of content like that. If you check out Dev Leader, this goes for any channel I have by the way. If you're like, "Hey, I like what you're doing, but could you talk about X?" Just message me. Comment on something, message me. Someone on LinkedIn today said, "Hey, um you know, what were they asked?" Oh, it was about um app settings. They said, you know, I've been using app settings and I use Sarah log. I can't get them to work together. And I said, great. Let me make a video for you. So, that's the next thing I'm going to film. And I like operating that way because it tells me that if I make a video, it's going to help someone. So, please reach out, ask questions, I'll make videos for you. That's why I'm here. Um, Dev Leader Path to Tech is where I do resume reviews. I got a couple that I still got to catch up on. Um, these ones don't, you know, they don't drive tons of views or anything like that, and that's totally fine, but they're free. Oh, that was a painful hiccup. [laughter] Oh, out of nowhere, too. I don't I hope I'm not dying. Um, yeah, if you want your resume reviewed, you can check out any of the videos. Uh, they explain how to submit your resume. Totally free for a resume review. It's not a roast. It's not a grilling session. And I'm not making fun of your resume, just feedback. So, watch any of the ré review videos, see if it's something you're interested in. You can send it in to me. Like I said, watch one. It'll explain how. Courses. I got courses available on Dome Train. I'm just going to put the link in the chat. Um, there you go. There's Dome Train. Um, I got one that I am working on that is my I think it's going to be my most successful one. Fingers crossed. But I got some C courses if you're interested in learning C from basically nothing. And then some other ones that are not programming specifically, but some of the topics that we go over, you know, on these streams. So, career management, getting promoted, behavioral interviews, that kind of stuff. Paired up with Ryan Murphy on that. Finally, Brand Ghost. Um, take the pricing link off that and drop it into the chat. Brand ghost is what I use for posting all of my social media content. Um there is a funny example. Um um oh I had a busy weekend. Um so brand ghost is what I use for posting all my social media content. it it will eventually recycle content, but the way that it works is I create the content, put it into Brand Ghost, and it sends it out on every platform for me. So, if you're looking at any content I post on any platform, it comes from Brando. I create it, it posts it for me. This is available for um [snorts] totally for free to crossost and schedule. Uh, I've talked to a handful of people now for like, hey, if you want to learn in public and you want to put your stuff on different platforms, sign up, right? Put your put your thoughts into Brand Ghost, post them, you know, start doing it. It's totally free. My goal is not to charge people money to crossost and schedule. I feel like that should be free. There's lots You can build your own crossoster and scheduleuler. That's fine. Do it. Um, you know, it it should be free. I'm trying to give that away for free because I think the more advanced stuff we have as you get more serious about content creation, like that's where I want you to be like, "Hey, this was good to use, I like using this. I'll stick around." And so, with that said, if you have a small business and you need a little bit more um help with advertising on social, uh Brandos could be a huge help for that. Like I said, I use this for all of my own content. It's the It is the only reason I'm able to do what I do on social media because I can post it through Brand Ghost. The funny example that I'm referring to is I accidentally had three things that I've literally posted before. One of them, this was the third time I've posted. I had three things on Twitter like back to back to back went a little bit viral. And I want to see if I can pull up the graph because it's hilarious. Um I was showing my wife this. One sec. Um because I was like looking at my phone and I'm like, "Oh my god, what's going on here?" Um, one of them, for those of you, if you're on Twitter, if you're on Twitter, every night at 11 p.m. Pacific, I post a silly joke. I've been doing this for for like over a year. The jokes are usually like really really silly, okay? And I had one that I posted and it was about LLMs and I guess people people had some thoughts on LLMs. So, um, give me one sec. I just want to I want to get this like screenshot or something that I can do here. Um, I don't know what's a good representation of this. Yeah, this is a good Let me take a screenshot of this. Um, okay. snipping tool. I hope you're ready for this because this is funny. I think it's funny. Um, ready. [laughter] So, this is my normal impressions. It looks terrible because it looks like it's flat at nothing, but like I don't know. I got a few thousand followers on Twitter. I'm like, I'm not complaining about my Twitter. I feel like it's doing okay. And then I had a couple things that literally exploded back to back to back. Um, it's been nuts. But these are things that I posted through Brand Ghost. These have literally been posted before months ago. One of them was around like I said, I don't I don't use recursion. People were not happy about that. Um, one of them was this LLM joke. And what was the other one? something else in there. I don't know. It's been a little crazy. But anyway, that's Brand Ghost. I use it for all of my social media content and um I hope that it can help you with your social media posting as well. So, thank you so much for watching, folks. I appreciate lots of really good questions today and I hope to see you next week, same time. That's 700 PM Pacific. I'll catch you next time. Take care.

Frequently Asked Questions

What is the main topic of the live stream?

The main topic of this live stream is based on my latest newsletter article titled 'More Experience, More Overwhelmed.' I discuss the feelings of overwhelm that can come with advancing in a software engineering career and how expectations change as you gain more experience.

Is it still worth it to get a degree in computer science?

In my opinion, yes, it is still worth it to get a degree in computer science. While you don't necessarily need a degree to become a software developer, having one can help you stand out in a competitive job market and provide valuable foundational knowledge.

How can I handle feelings of overwhelm in my engineering role?

I recommend raising awareness about your workload and expectations with your manager. It's important to communicate when you need support and to document any challenges you're facing. Additionally, try to focus on level-appropriate work and build a network within your organization to help share the workload.

These FAQs were generated by AI from the video transcript.
An error has occurred. This application may no longer respond until reloaded. Reload