BrandGhost

Your Analysis Needs BOTH - Become A Better Software Engineer

This video covers a quick tip regarding positive and negative analysis and the impact this has on software engineering. In this video, I explain why omitting either side can be equally as dangerous and why you need both to be a better software engineer. Check out more Dev Leader content (including full in-depth articles with source code examples) here: https://linktr.ee/devleader Social Media: YouTube: https://youtube.com/@DevLeader TikTok: https://www.tiktok.com/@devleader Blog: https://www.d...
View Transcript
so this is something that's been top of mind for me since at Microsoft recently we did our connect period And for those of you that aren't at Microsoft this is just a period where I can work with my employees to be reviewing the progress they've made over the past period it's not quite like a performance review but it kind of ties into that type of discussion so one of the areas that I was thinking about for all of my employees and I had an experience recently I'll touch on is this idea that as software Engineers right when we're thinking about different ways that we can go tackle problems and the solutions we want to put in place we can fall into this trap of sort of when Solutions are put in front of us we just start shutting them down we start looking at all the reasons why this particular solution will not work and while I do believe that doing an analysis like that is important that you can identify where things will not work properly if you only focus on that you ultimately never get to a solution that will work right you're only looking at the negative so this is an important thing a I very much believe in this especially as you're becoming more senior as a software engineer but uh the more recent example I had is when we're talking about planning and kind of going through the different ideas from the team or other teams and hearing about the different ways we want to push things forward I've been noticing that when I'm responding to some different discussions like I need to be careful that I'm also not doing this as in I don't want to be dismissing ideas um and I want to make sure that I'm being inclusive and trying to move forward in the spirit of what someone's proposing so there's been a couple instances even for myself recently where this has been a bit of a I wouldn't say an issue but I've caught myself going okay I've I've identified the negative pieces like the risks or the concerns I have but watch what else should I do so I wanted to talk a little bit more about this now to kind of circle back on the thing I just mentioned when you're only focused on part of the analysis where you're looking at the part of the solution that you want to address the concerns for this is good right like you want to be able to call that out or else what we would all be doing is like vigorously agreeing with each other it would be you know one two or three solutions are put forward and it's like yeah we should just go do all these things and we would just do them if if we only saw a positive benefit so we do need to be realistic and try to look at both sides when we're doing an analysis as software Engineers we need to look at pros and cons of everything so when we're identifying the cons it is very important you do want to make sure you're doing that you're calling out risks and part of that too is that you as a software engineer talking with another software engineer you might have some concerns about some something that they've totally missed right if you're a more senior software engineer you might have some experiences with this particular type of solution technology you might have seen the scenario before and it's good because if you don't bring this up the other person might not have seen that and it's some context information you can share with them so I so I go through this I don't want to say no you should never like talk about the negative pieces you absolutely should it's it's pros and cons but that's just it it's pros and cons you need the pros as well so every solution that you're looking at will have both right it's equally as dangerous to be you know only listing out cons of something as it is to be only listing pros of something right if you have people that are pushing different designs and they can't for themselves point out to you anything that's negative about it there's no cons and it's only Pros like it's just not it's just not true they have not done a full analysis if they can't call out any single con and I would kind of flip it around and say the same thing right so when you are doing an analysis right and maybe reviewing someone's proposal for something if you're only focused on the negatives it does not help move forward to a solution it on its own right you might be able to call out enough risks with a particular solution but you cannot stop there so this is something that I'm trying to encourage more especially more senior software engineers and as I mentioned even for myself trying to hold myself accountable that when you're calling out these concerns for different designs you want to pause and reflect and say well what what's the spirit of what this uh you know solution is trying to solve like what are we trying to offer up for our infrastructure what are our partner teams asking for our customers like what are we trying to do for them what's the goal right and if we start thinking about the goal we might be able to say for this particular solution yes here are some of the concerns I have here's why I have these concerns good press pause right and now you want to say but in my head you're thinking through well if this is the goal like okay well part of the solution does actually help address that maybe let's focus on that and if you start going through the different cons that were brought up can you start thinking of Alternatives that you might propose for those things right so instead of just stopping at the this won't work we can't do this cool you want to keep going and saying these things might not work I have concerns but what about these Alternatives this in turn will keep the conversation going it allows the other side other Engineers to be able to kind of do the same thing back with you and ultimately you do need everyone kind of kind of coming together with pros and cons so that you can come up with a collaborative solution so I won't kind of drag this on any longer I'll keep it pretty short but I just wanted to remind folks especially as you're becoming more senior as a software engineer that you do want to focus on trying to drive forward Solutions while you are calling out some of the risks that you see with them so thanks for watching small tip I hope this is helpful just something to keep in mind and we'll see you next time

Frequently Asked Questions

Why is it important to consider both pros and cons when analyzing software solutions?

It's crucial to look at both sides because if we only focus on the negatives, we might miss out on viable solutions. By considering the pros, we can identify what works and how we can move forward collaboratively.

How can I ensure that I'm being inclusive when discussing ideas with my team?

I try to pause and reflect on the spirit of the proposed solutions. Instead of just pointing out the negatives, I aim to acknowledge the goals behind the ideas and encourage a dialogue that explores alternatives.

What should I do if I notice only negative feedback being shared in discussions?

If I see that happening, I remind myself and the team to balance the conversation by also highlighting the positives. It's important to keep the discussion constructive and collaborative, allowing everyone to contribute to finding a solution.

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