Make your decisions easier by anticipating them. Determine systems for making decisions in advance, so you don't get caught making them on the spot. Determine models of opportunities so you can quickly pattern-match against them, and create systems that make your decisions for you when possible.
This episode is brought to you by LaunchDarkly. LaunchDarkly enables development and operations teams to deploy code at any time, even if a feature isn't ready to be released to users. Innovate faster, deploy fearlessly, and make each release a masterpiece. Get started at LaunchDarkly.com today!
If you enjoyed this episode and would like me to discuss a question that you have on the show, drop it over at: developertea.com.
If you want to be a part of a supportive community of engineers (non-engineers welcome!) working to improve their lives and careers, join us on the Developer Tea Discord community by visiting https://developertea.com/discord today!
If you're enjoying the show and want to support the content head over to iTunes and leave a review! It helps other developers discover the show and keep us focused on what matters to you.
Transcript (Generated by OpenAI Whisper)
We know the perils of being reactive. If you've listened to this podcast for any length of time, you know that the goal of a good software engineer and the goal of anyone who is serious about their career is to be proactive. In today's episode, I'm going to talk a little bit about how we can apply the idea of being proactive to decision making. My name is Jonathan Cutrell, you're listening to Developer Tea. My goal on this show is to help driven developers like you find clarity, perspective, and purpose in their careers. Decisions are a primary theme of this podcast, at least in the past year or two. We've talked about decisions at length, making choices, making choices in complex environments, making small or big choices. All of these are problems that we face in our careers. And when we think about making choices most often, we imagine a world where we are given a clear set of options or we have a clear intended outcome and we have seemingly an endless amount of time in order to make those decisions. This is obviously completely ridiculous. We don't have an endless amount of time. The choices are not always clear. The goal is not always clear. And so often our decision making process, when we're trying to choose between a variety of options, it falls to a series of errors that we might make. We might make an error of trying to rush the decision or imagining that time is a bigger factor than it really is. We might make the error of assuming that we have all of the necessary information or assuming that we know all of the options. Perhaps the biggest error of all is assuming that we know what the intended goal is. As we move into the new year, I want you to be thinking about your decisions a little bit differently. I want you to think about the way you make decisions, how those decisions flow, that meta perspective, how do you operate on a day-to-day basis making decisions? I want you to create better systems for that. How do you interact with all of the many decisions that you're going to make today and all of the big decisions you're going to make over your career is by creating a consistent management system for this. This isn't a heavy management system, it's not, I'm not going to give you a list of items that you have to check off and a perfect system that has calculations and everything else. All of those things might be useful to you. That's not really the point of this episode. The point is to cover this principle of getting out ahead of your decisions. When we imagine a decision, we think about the reactive version of making decisions. We are suddenly confronted with a situation and we must make a decision when we are in the situation. This is difficult to do for a lot of reasons. We talked about this recently. When we don't have emotional distance from a decision, that makes it more difficult to make a clear-headed decision to begin with. When we make decisions reactively, which is kind of the default mode, we try to make our decisions when the situation requires us to make decisions, then we are more prone, even more prone than usual to these errors that we are discussing. I want to talk about getting out ahead of that. I want to ask you a question before we talk about today's sponsor. That question is, what is the biggest decision you have made in the last year and then as a follow-up question to that, how did you make the decision? What criteria, what process, what did you do in order to determine your options, filter through your options if there were more than one, and ultimately decide on a final direction. To be clear, this particular exercise is very much prone to post-rationalization. In other words, you are going to look back and you are going to say, this decision I made because of x, y, and z, and it is very likely that you decided after the fact that you made the decision because of x, y, and z, but probably in the moment you made the decision because of maybe a little bit of x and maybe because of some completely other factor. Some other facts, some other pressure that you are not going to post-rationalize about this clearly, but being as honest as you can, trying to think about what was a big decision that you made in the past and how did you make it. Try to remember if you can, what did it feel like in the moment? Did you feel the pressure of the decision? Did you feel like you had to make the decision based on some criteria that you were shooting after, what were the trade-offs, and really get that clear in your mind. We are going to come back and talk about this upcoming year, how you can change the way you think about making decisions to be more proactive. But first, let's talk about today's sponsor. This episode is brought to you by Launch Darkly. Launch Darkly is helping you create feature management for the modern enterprise, fundamentally changing how you deliver software. Notice how it works. Launch Darkly enables development and operations teams to deploy code at any time, even if a feature isn't ready to be released to users. Rapping code with feature flags gives you the safety to test new features and infrastructure in your production environments without impacting the wrong end users. When you're ready to release more widely, you can update the flag and the changes are made instantaneously thanks to their real-time streaming architecture. Here's the reality about feature flags. There's been so many projects that have worked on where it was either cost prohibitive or nearly impossible to actually replicate what was happening on production, whether it's because you can't really replicate the stresses that are put on the production environment or you can't replicate the data because it's sensitive data. There's a lot of tricks that you might be able to pull to make your staging look like production. But at the end of the day, there's going to be something different happening in production than is happening in your staging environments. You can't replicate those one-to-one almost never. Especially for features that you are developing that you're trying to release either to a partial audience or maybe you're just trying to QA those in a production environment without actually releasing to the production environment. You don't have to do crazy weird hours releases where somebody might see the release if they log on in a particular time, but your QA team is having to stay up all hours of the night to finish this testing. That stuff is over. With Launch Darkly, you can release to just your QA folks or you can release to a beta testing audience or you can release to the wider public with a single flag change. Go and check it out. Head over to launchadarkly.com. You can start it for free today. That's launchdarkly.com. Thanks again to launchdarkly for their support of Developer Tea. Making decisions is not easy to do. That's why we talk about it so much on the show because it's not only is it a science, it is multiple sciences. This is an area of study that will never end because the complexity of making decisions, making optimal decisions or making suboptimal decisions that are optimal enough to be productive, balancing decisions. These are all things that are very complex. You shouldn't rely on this episode to be your school of thought for decision making. There's a lot more out there that you can study and learn about with relation to decision-making. But one aspect that I think we often ignore is that a lot of the time our decisions are made in a snap moment. We try to make a decision on the spot. In some ways this is romanticized as clever or otherwise intelligent. We imagine the kind of capped in Kirk version of snap decision making where we have a difficult situation and we come up with a perfectly balanced solution that just narrowly misses the hazards that we might run into. But the truth is that good decisions are based on work that is done before the decision has to be made. Let me say that again, great decisions. The decisions that are going to change your life for the better, most often, are going to be based on work and preparation that is done before the situation where you make that decision actually arises. I'll give you a simple example. You might in the new year adopt a strategy where every opportunity that arises in the first three months, you say no to. Why would you do this? Well, there's many possible reasons you might do something like this. You might be dedicating your time to learning in a particular pathway. Maybe you have an opportunity that aligns with your principles and what you care about that's already sitting in your lap and you don't want to get distracted. So you're creating a decision making mechanism so that you don't have to evaluate or get pulled away to make that decision every time. You automatically know that you're going to say no to everything for the first three months. Now I'm not saying that's a good strategy or a bad strategy. What I am saying is that you've done some work in advance. You've taken the time to determine how you're going to deal with certain scenarios. Another version of this that is likely more powerful or useful to the average person is to write out a model of what you would consider to be a good opportunity. Now, we're not necessarily talking about a new job. We're not necessarily talking about an investment opportunity or something like that. This could be anything that you might take action on. A good opportunity might mean a schedule change. A good opportunity might mean a location change. So write down your model of a good opportunity in advance and include as much detail as you want. A good model like this, for example, would likely have ranges for things rather than specific numbers. Why would you do this? Why would you go out of your way to determine what a good opportunity looks like? Well, for two reasons. One, you might have never thought about what you care about doing next or what a good opportunity might do for you. So going through that thought exercise is likely to help you hone in your other goals anyway. So this is good, even if you don't have opportunities coming your way, you may have not really taken the time to ask this question to begin with, what do I care about? What do I want? What things might help me get there? What opportunities might help me get to where I want to be? Now, the second part of this is that as opportunities come to you, instead of having to evaluate wholesale, whether that opportunity might fit with you or not, you've already kind of created a filter. You've created some kind of model that you can say, okay, this opportunity that's come by, the things that I want, the opportunities that I know that I'm interested in, the kinds of things that I care about. I have a model for that. Is this fit the model? And if it doesn't fit the model, or if it doesn't fit it well enough, right, it may not fit it perfectly, but if it doesn't fit it well enough, you have a very easy kind of system to say no. And by the way, if you still feel a strong urge to say yes, this is a good time to inspect the difference. What is the difference between the model that I know I want to say yes to when I'm slowing down and being very deliberate with my decision making versus when I'm sped up or when I'm in this emotional state, when this opportunity is sitting on the table, what is the factor that is making me want to go against the model that I created and say yes to this opportunity? Or what is the factor that this opportunity seems to match all of the things that I put in my model, but I have the urge to say no to it. Why is it that there's a disparity there? When you take the time to actually look at that disparity, the difference between what you said you wanted when you were thinking slow, when you were being deliberate, and what you feel like you want when you're actually facing the opportunity, you might find things change. You might find that you have unexplored kind of desire. A good example of this might be that a friend of yours has brought an opportunity to you, and maybe it doesn't match your salary requirement, let's say. They're starting a company they want you to work with them and it doesn't match your salary requirement. But you feel a strong urge to say yes. Maybe you underrated or undervalued in your model the people side, right? You really want to work with people that you know or people that you consider your friends. Ultimately, when you do this work in advance, when you take the time to be deliberate about the decisions that you're going to make and the kinds of things, the kinds of opportunities you're going to pursue, one of two things is likely to happen. Either one, you're going to be more deliberate and therefore find more opportunities with less error or two, you're going to find out that you have some disparities between what you think you care about and what you actually care about in practice. And finding that disparity is in and of itself worth doing this exercise to begin with. As a final example of kind of doing the work in advance or making your decisions before they are before you're confronting them, the best version of this is to clear your calendar out, create a new calendar, right? Or whatever you use to do your scheduling, your planning on a week to week basis on a day to day basis. And imagine that you have no responsibilities at all. How would you fill your day? How would you fill your calendar? Take the time to actually write it out and do it in excruciating detail down to the 30 minute window even. And when you're doing this, make sure you take the time to check. Does this align with my goals? Does this align with my values, my principles? What activities in this and my putting on here because I feel like I have to versus because I actually want to? What things could I reduce or combine so that I can make space for the things that I care about or that I want to grow in? When you look at that calendar, is there something on it that you wish could take up more time than you're giving it? All of these kinds of exercises, you're not going to have the time to do in the moment when you're faced with a decision. And so if you know that you want, let's say, your creative time, you have blocked off in your calendar, you want that to grow. Or maybe you want to reduce your commuting time. There's ways that you can think about your scheduling that leads you to that previous exercise of, okay, what opportunities do I want? Well, let's model it based off of what I care about changing in my calendar. If I want to reduce my time spent commuting and I want to increase my creative blocked off time, then maybe I want to look for opportunities that allow me to work from a remote location. And the opportunities I'm looking for are focused on giving autonomy and personal work time rather than a bunch of meetings. So these are the kinds of things that will help guide your decisions. If you got offered a job and you hadn't done that work in your calendar, and you just got offered a job that maybe had a longer commute and maybe the company or the position requires even more meetings. But some other parts about it were compelling. Well, you may not have taken it. Had you done the calendar exercise, but you might take it and be frustrated if you don't do the calendar exercise. Right? So there's a lot of things that you can do to kind of preload or predetermine some of the important things to you, what are the things that you care about changing in your life? And how can you make the broader decision making system lend itself towards those goals? Thanks so much for listening to today's episode of Developer Tea. Thank you again to Launch Darkly for their support of the show. However, and get started for free today with Enterprise grade feature flags at launch darkly.com. If you enjoyed this discussion, I'd love to discuss more with you. I'd love to hear your questions or your thoughts at the end of this year and moving into next year. There's a lot of change happening, both on the global scale, but also in people's personal lives. And I'd love to kind of be a support system and allow the Developer Tea Community Be a support system to you as that change occurs. You can join us for free, totally free, we'll always be free on our Discord community head over to developertea.com slash discord to join today. Thanks again and until next time, enjoy your tea.