5 ms·
Is it possible that you're not making the "right" moves because you're the CTO? Leadership is hard and it's hard because you're making bayesian calculations on
by bgroat 5y ago
Is it possible that you're not making the "right" moves because you're the CTO?
Leadership is hard and it's hard because you're making bayesian calculations on suboptimal choices. Almost by definition.
Say a Jr. dev has a problem that they can't solve. They kick it to an intermediate.
The intermediate can't solve it so they kick it up to a senior.
The senior can see a couple of solutions, but want's to run it past the architect.
The architect takes these options, weighs them against n number of considerations + the dev roadmap and sees strengths and weaknesses to all of them.
They package those pros and cons and brings them to you, the CTO to make a decision between these sub-optimal choices.
In this kind of environment EVERY move you make is going to be a little bit wrong. You just kind of have to minimize the wrongness
- necovek 5y agoIf you are in an environment like this, you need to empower your engineers to make those choices: it will be more efficient, they'll feel better about the compromises they make themselves, they'll learn more from what happens, and you'll reduce the load on other people, like those seniors, architects and the CTO.
- anon2020dot00 5y agoReminds me of what Jeff Bezos said about Type 1 and Type 2 decisions. Type 1 decisions are one-way door decisions that needs to be deliberated deeply and consulted on with higher-ups. Type 2 decisions are two-way door decisions that small teams can be empowered to make. There is a balance between empowerment and the higher-ups taking responsibility. I've been in an organization where-in the higher-ups just abdicated all responsibility and avoided making any technical decision (maybe for fear of making a wrong decision) and so the small teams had to make every decision which led to chaos and lack of direction. Sometimes, it is the job of the architect or CTO to make those big decisions; their job is not to code, their job is to weigh the possible options and make a decision to give direction to the team.
- sam0x17 5y ago> Reminds me of what Jeff Bezos said about Type 1 and Type 2 decisions There's a cautionary tale buried here. Many seemingly Type 2 decisions are actually Type 1 decisions in disguise. Case in point, Amazon's decision to not allow warehouse workers to have their phones when working in the warehouse has resulted in the 6+ deaths and many more injuries that we saw in the tornado last Friday. Now there's no going back, and Amazon may (and should) be held accountable. Pretty grim for a seemingly Type 2 decision.
- pkaye 5y agoWas that decision made by a small team? Maybe it was a top level decision?
- sam0x17 5y agoWe'll probably never know, but my guess is there will definitely be a symbolic firing over this.
- AstroDogCatcher 5y agoThis is nothing to do with one-way/two-way door decisions, you are conflating that concept with an understanding of "unintended consequences" in order to take a cheap shot at Amazon. Ordinarily I'd enjoy that as much as the next person, but this case is too ham-fisted to leave unchallenged.
- sam0x17 5y agoYou're missing the point. The point is that even the most mundane decisions can lead to irrevocable negative situations, so one should think about worst case scenarios with every decision, as engineers are regularly trained to. Classifying things as type 1 or type 2 decisions can create a blind spot, as it did in this situation in my humble opinion. In reality anything can become a one-way-door decision. The "dunk" is a side effect. Amazon's decision making on this issue does a really good job of illustrating situations where you make a seemingly harmless decision that you feel you could revoke at any time, but things take a turn for the worse and regardless of your ability to revoke the decision, you can't revoke the damage it caused, the preventing of which is the whole purpose of having this system of type 1 vs type 2 in the first place. AKA the type 1 type 2 system is imperfect and can lead to miscalculations, like this. A more useful framework might be "can I prove, convincingly, that there is a 0% chance this decision will lead to irrevocable significant negative consequences, if so then it is type 2, otherwise type 1"
- hawk_ 5y agoWhat GP means I think is the decisions that need to be made at CTO's level are generally going to be tough ones by definition. This is after empowering engineers etc... so easy ones are handled by them. Otherwise the CTO would be swamped.
- bgroat 5y agoThis is inline with what I was thinking, but the Type 1 and 2 Decisions that a child comment outlines enriches my post in a way that I really appreciate
- alasdair_ 5y ago>You just kind of have to minimize the wrongness And, if you can't figure out which is least-wrong, just make a decision, any decision. Don't become a roadblock. If the problem has already gone from junior->intermediate->senior->architect->cto it's already taken a whole lot of time and energy. It's software - you can fix almost anything (except certain security, reliability and financial controls) later if its wrong so making any decision is more important that making the optimal one. I've definitely worked at startups where the CTO was the blocker for the longest time and we'd wait weeks on them when another senior people could have done the work immediately. Try to delegate and trust people as quickly as you can.
- vorpalhex 5y ago> it's already taken a whole lot of time and energy. It's software - you can fix almost anything Depending on the problem, it may be you need to experiment, research or call in an external expert. As a leader, you may need to make the call as to which approach but the execution itself should be handled by the problem owner.
- maerF0x0 5y ago> just make a decision, any decision. The nuance here is if you're making a decision that has a gross positive value, then you likely have a large number of "wrongness" choices that still result in a net positive. If you're not sure which of them to take then take any one that has a positive EROI (the ambiguity makes them all appear similar returns). Remember that EROI is marginal so even if you end up in a lossy situation _after_ the decision, so long as it's less loss than before you're net better off than you were. If you're making a decision which all decisions seem to have a net negative EROI, then there is no opportunity at hand. Keep looking for a real opportunity.
- lr4444lr 5y ago^^^ This. Remember, as CTO, your primary responsibility is making the tech deliver the bottom line sustainably. Not impress other devs.
- randito 5y agoThis is great insight. I'd like to offer a slight alternative for "You just kind of have to minimize the wrongness". I think a CTO should have several mental models for making decisions. Minimizing wrongness is just one. Some examples: - Is this decision reversible? - Does this choice allow my team to grow technically? - Will this matter a year from now? - Is this something I can buy instead of build? - Is this a core competency that we should invest heavily in? - Does this decision go against the company or your personal values? - Is quick and dirty good enough for this? There are several ways to orient the problem to help make a decision. But the OP is totally correct, this decisions will usually be made without all the data and with a lot of people looking at your decision.
- redwood 5y agoTerrific checklist
- incompleteCode 5y agoThis reminds me of a Buffet'ism (if you will): "it is better to be approximately right than precisely wrong." I heard it on a podcast, though I'm pretty sure he didn't coin the phrase.
- bgroat 5y agoI wouldn't be surprised if he coined it. Admittedly, I'm a Buffet fan, so I think he can do anything. But he is pretty famously a bit of a wordsmith
- gcmac 5y agoReminds me of this excerpt from an Obama interview: > When problems reached him in the White House, he said, it was because they were unsolvable. He generally was being asked to choose between two bad options. “By definition, if it was an easily solvable problem, or even a modestly difficult but solvable problem, it would not reach me, because, by definition, somebody else would have solved it,” he said. “So the only decisions that came were the ones that were horrible and that didn’t have a good solution."
- hutzlibu 5y ago"So the only decisions that came were the ones that were horrible and that didn’t have a good solution." This should probably be a must read for any wanna be presidents and leaders who are only after the power and glory.
- Toine 5y agoSo 100% of wannabes
- jpmoral 5y agoThis is only true where the system at least somewhat works. In other places you get police press conferences where they say "The president/governor has already given us orders to investigate the crime".
- bgroat 5y agoThis is where I learned it, and it's why I'm much more forgiving of leaders than most people I know. Which isn't to say they should be unaccountable. But these are people who make impossible choices all the time
- ekns 5y agoHow can it be "by definition"? Is the president defined as someone who picks unsolvable problems? Are the subordinates defined as people who solve every single solvable problem?
- 5y ago
- danielmarkbruce 5y agoThere are some jokes that for most situations Supreme Court Justices aren't better than flipping a coin. Once a decision reaches there, it's so fundamentally ambiguous that it can't be resolved any better than flipping a coin. *there are some things the supreme court does around consistency which aren't like this.
- bullen 5y agoThis is true for all responsible people, the way I tackle this is to try and predict the future. Recently I had to implement interpolation in my game engine, before looking at that I tried laying out animations in memory and noticed a 3x speedup. So when it was time to decide I took the seemingly coward route of exporting animations in 120 FPS instead, hitting disk ×5 and RAM ×2 but saving CPU ×3. Time will tell if this was the right choice, ie. will games render at >120FPS. The debt was moved from technical to energy saving, from complex to simple, from now to the future (since exporting in 120 FPS takes a little more time every animation that goes into the game) I'm going to keep investing in low power because that is more guaranteed than everything else.