Ask HN: My boss says I over complicate things. What should I do?
Tradeoffs are an intrinsic part of engineering. One part of your job is to propose solutions and tradeoffs. For example, &quot;if we want to ship this fast, we can do it in a day, but here&#x27;s what could go wrong, and how much negative impact this could have on how many users&#x2F;bottom line, on the other hand, this is the upside&quot;. &quot;If we want reliable, we&#x27;ll have to solve X issue before shipping it but it&#x27;ll take about Y days because we still haven&#x27;t resolved incompatibility with third party tool Z&quot;<p>Do you frame your decision making and the set of options in terms your manager understands and can base their decisions on?<p>Why this matters? It avoids you spending days or weeks working to solve an issue because you think it&#x27;ll save $X, when in fact $X may not be what matters most to your manager, but the ability to ship before a competitor, for example, especially given the fact that if the price to pay if that feature falls flat is not that high.<p>One problem members might have is not knowing what matters and why it matters, and that effort must be done by management to make it clear through what lens team members should look at problems so that <i>they themselves</i> will be able to make decisions.<p>If this effort is not done systematically by management, members can help management with eliciting questions explaining why they&#x27;re asking these questions so it doesn&#x27;t come off as an interrogation. You&#x27;re asking questions to know what matters most so you could optimize for that and work to solve the right problem.<p>One other problem is that some team members cannot discern situations where they can make a call, and situations that warrant getting the green light to do something. This leads either to members requiring the attention of the manager for everything, even things that the manager doesn&#x27;t care about, <i>or</i> members making a decision and going through an action where the cost of a mistake is too high but they didn&#x27;t <i>know what the cost of that mistake would be</i>.<p>True positives, false positives, true negatives, false negatives.<p>This why members who <i>can</i> tell which situation is which are not common and appreciated by management, because they relieve the pressure and reduce the number of interventions management has to make. This builds trust in that member&#x27;s judgement, and they gain more latitude to do what they want because the manager knows that &quot;Alice only calls me when it really matters and when the situation is tricky and she needs confirmation.&quot;<p>One great habit to have is to enable management and executives to do what they do best: make corrections, green light things, shut down things.<p>I used to go to my former CTO with prototypes of different approaches in different branches. He&#x27;d look at them and pick one or ask if I could do corrections to one of them and ship it. &quot;Do you care about this aspect or is that good enough?&quot; &quot;Nope, we&#x27;ll merge as is&quot; or &quot;All is okay except this and this must change because X, Y, Z.&quot;. Things move really fast that way.<p>I also showed the CEO different versions, and he&#x27;d ask &quot;Nice. I prefer that one because I&#x27;ll present it to [type of client] and it&#x27;s more relevant&quot;.<p>In other words, instead of asking what the next step is, proposing alternative approaches: We can do A, B, C, D and here are pros and cons for each and how they relate to the objectives with tradeoffs and optimizations.<p>The manager then has a &quot;menu&quot; they can pick and choose from, and will either say &quot;We&#x27;ll go with A&quot; or &quot;Just change this aspect in B and go for it&quot;. This saves enormous time and makes their job easier, and makes your job easier too.<p>There&#x27;s effort to be made by the two parties. Management must train members to know what matters and expose how they view things. &quot;Our priority is this, if you need to spin up VMs to test something, you can do it as long as you don&#x27;t blow up the budget. Say you have a budget of $300. What we want is X and we know we got it if W, Y, Z&quot;.<p>The team members ought to do the effort to frame their decision making process, their options&#x2F;solutions, their problems, in terms stakeholders can understand, reason about, and make a decision about. When you do this, you&#x27;ll get extremely useful input from other stakeholders and you can enable people who make decisions to make informed decisions because they have clear information they can digest.<p>The excuse that manager&#x2F;CEO&#x2F;advisor&#x2F;investor is not technical is a bit easy to have. How do you frame problems to get the best out of that manager&#x2F;CEO&#x2F;advisor&#x2F;investor&#x27;s minds or executive authority? How do you give solid arguments to your manager to advocate on your behalf, say to increase budget or to hire talent by framing things in terms they understand and can work with, but also in terms that <i>their boss</i> can understand and work with.<p>You: This [engineering&#x2F;technical problem] is [framed in terms boss can understand]. One way to do that is CEO doing [thing in terms boss understands] with arguments [boss can understand, and then again in terms of CEO can understand].<p>There are things that matter and you know why they matter, and one part of your job is to make other people understand <i>why</i> they matter. The ability to connect the dots and take someone by the hand from the [business] objective all the way down to how inability to do multiprocessing is hindering that objective, and how what you&#x27;re doing is solving the problem is valuable.