26 ms·
All the best engineering advice I stole from non-technical people
- blowski 7y agoExcellent writing, I really enjoyed the content of the post and the way it’s written. This phrase particularly stood out to me: > We are stronger by considering the opposite first. That’s something I’m not very good at, but work hard to do. In many situations I have a tendency to assume I’m right, and that as soon as my interlocutor understands my argument, they will see I’m right. “I’m a rational person and I believe X, so if you don’t believe X you must be irrational.” So I spend lots of time clarifying my argument, and it gets nowhere. By genuinely spending a larger proportion of my time thinking about others’ points of view, I arrive at better solutions.
- AstralStorm 7y agoGood old syllogism in defense of ego. (Post hoc ergo propter hoc and reduction fallacy kinda, but really just jumping to conclusions.) "Rationalist" meets hypocrisy.
- refurb 7y agoOf all the advice articles I’ve read, most of them are contrite, seemingly obvious and not actionable. This one was pretty good. Not going to argue it’s all gold, but she did a great job of putting some thought into it.
- wslack 7y ago> Places where no one is sure who owns what, or who is responsible for what are unlikely to have proper monitoring and much more likely to be two or three upgrades behind. The seams are where things get lost, sometimes for years. So if your mandate is security or availability the seams are your best bet of finding a big pay off. So true. Sometimes there's a person behind the scenes keeping it all working with bailing wire and elbow grease, but that person is also a huge point of failure.
- jlokier 7y agoSometimes the opposite of one person keeping it all together behind the scenes is "diffuse responsibility", where many people are theoretically responsible, and in practice _nobody_ keeps on top of things because they leave it to others, or even finger-point that "someone else" should have done something. Diffuse is different from distributed. In distributed responsibility, there is redundancy. Multiple people ensure things operate. This is good. In diffuse responsibilty, people cancel each other out, so it's worse than having one person. An office version of the bystander effect, if you will. This is particularly bad in volunteer organisations, where wishes and reality do not mix well. Single point of failure is in important thing. So I've seen people try to convert a SPOF system, where one or two people are keeping the business and systems running, to a diffused responsibility system. With the result that one or two people still keep the business running... out of exasperated necessity. But with more complaining by others, because that's not supposed to happen. If it were complaining by others that more people aren't taking up meaningful responsibility and doing the work, that makes sense to me. But it's usually complaining by others about the people doing the work. And since they are volunteers, that's a shitty position to be in. Complaints include that they aren't "letting" others do it. Which couldn't be further from the truth. People keep being asked to help, and keep being individually not very available. Or, worse, available in not really useful way (impractical hours for example, or sessions too short), or on balance unhelpful. Those few being meaningfully responsible are, however, not "letting" others access critical databases such as personal data, and safety critical systems, without building up a trust reservoir and track record first, and in some cases formalised relationships. And that seems to make would-be volunteers rather grumbly, in a public way. At least in volunteer organisations, the bottom line is most people avoid work if they think they can rationalise why it shouldn't need to be done, will gut requirements and constraints, if they don't personally like them, and will avoid taking initiatives on things they think are stalled, if they can get away with portraying it as someone else's fault. In short, they are contradictory, wanting thing to happen, but rarely taking actions that lead to it. That doesn't match what actually needs to be done, so it falls on the same few shoulders again and again, and usually at crunch times, as those shoulders are criticised if they take action too early. Then we end up with "hidden single point of failure", which may be worse than the visible kind.
- noonespecial 7y agothey have innate understanding that being observed working is more valuable than the results of their work. I've seen coders who knew this by heart forget this less than 5 years after entering management and become champions of forcing everybody into the office for 8:30 stand-ups and time tracking systems that enforce minute by minute "project accountability". I don't know exactly how this happens, all I know is its like a damn force of nature. The only thing I've ever seen kill morale and tank projects faster is random periodic layoffs.
- aeternus 7y agoI've seen this as well, in my experience much of it comes from other orgs that see the engineering team come in late, or walk around the office tossing a ball into the air. They start putting pressure on engineering managers to make sure their team is "working". Their team clearly needs more discipline and those 'slackers' need to be cut. What they don't see is that the engineer tossing the ball figured out that the solution they were about to spend 2 weeks coding can be achieved by leveraging an existing library requiring only a couple days effort.
- grepthisab 7y ago> What they don't see is that the engineer tossing the ball figured out that the solution they were about to spend 2 weeks coding can be achieved by leveraging an existing library requiring only a couple days effort. Maybe this is an unpopular opinion, but that wouldn't mean that the engineer shouldn't implement in a couple days and then work on something else. HN loves the trope of the super smart engineer who is smarter than _everyone_ and can look like they're doing nothing.
- logicchains 7y agoThe engineer probably isn't going to get paid any more for finishing it faster, so what incentive do they have?
- NoodleIncident 7y ago
- nzjrs 7y agoNice article, but every time someone mentions imposter syndrome it grinds my gears - it always strikes me as a thinly veiled humblebrag.
- neilv 7y agoI suspect that the main good purpose of the impostor syndrome concept is to tell it to another person, when they need to hear it. When an article gives a personal account of someone feeling impostor syndrome, one possibility is that they are trying to tell it to readers who might need to hear it, or who might tell it to someone else who needs to hear it. What's potentially a bad effect of the impostor syndrome concept is when it causes very rational and needed self-doubt to be dismissed. So, instead of thinking, "I need to figure out how to be better at this," one might think, "Ha ha, my impostor syndrome must be flaring up again. Which means I'm even better than the evidence suggests." (BTW, management-ish articles usually seem to be about self-promotion, one way or another, and I think it's just accepted as something a savvy person does. I try to pick out useful things, but don't assume (as I might with some other genre) that the writer believes what they are saying, nor that they think what they are saying is actually important -- even though both might be true, despite the conventions of the genre, as they might be true with this particular article.)
- deleted 7y ago[deleted]
- kitd 7y agoTo be fair, her use of it was in the context of working for the first time with senior FAANG engineers.
- thecatspaw 7y agoCan you elaborate? For me imposter syndrome usually reads as "I undervalue my own work/skill"
- johnday 7y agoI think the person above you is saying that it sometimes reads as "I cannot believe just how good I really am", or something to that effect.
- Iv 7y agoThe best one I received: "It is easy to like likable people. It is much harder to like people who have flaws. It does not mean you should not do it." I saw a lot of tech people with the same bias as me: instead of dealing with people who think a bit different or act a bit different, we prefer to isolate and stay in our own world. Dealing with different people is hard but can be really rewarding. The lazy approach of sticking with your own crowd is comfortable but not necessarily the best approach. And I double down on her "thinking is work too". I think internet makes us very addicted to have a constant flow of information pouring into our brain. We dont want it to stop. Disconnecting and staying with your thoughts is something that used to happen naturally, now it takes some efforts to do it. Yet we absolutely need it
- draw_down 7y agoYour first point is why I’m quite skeptical of the narrative around “brilliant assholes”. Are they really an asshole, or do they just not communicate in the manner you’d prefer?
- nlh 7y agoThis is an interesting question. I tend to think the narrative is actually true (obviously we’re talking about a very large and vague grouping here - results will vary.) I’ve definitely run into “brilliant assholes” and yes, they are actually assholes — highly sensitive to perceived insults to their intelligence, violently protective of their fiefdom, etc etc. Culture cancer and I’ve never regretted being rid of them. BUT - I think it’s worth considering a variation based on the OP’s first point - maybe it’s not the “brilliant asshole” who we should pay more attention to, but instead the brilliant quiet introvert who maybe doesn’t join in on every chat or share his/her opinion so readily, or the brilliant person-who-doesn’t-fit-whatever-subtle-bias-we-might-have that might look, sound, or be older/younger than we might expect. Those are the people we should be paying more attention to, not the assholes.
- mieseratte 7y ago> Your first point is why I’m quite skeptical of the narrative around “brilliant assholes”. Are they really an asshole, or do they just not communicate in the manner you’d prefer? As someone who generally enjoys working with the "brilliant asshole," there are two types to look for. The first is a brilliant engineer who is an asshole in matters unrelated to the task at-hand. I've seen coworkers physically assaulted by this type. The second is a brilliant engineer who takes no shit when it comes to the task at-hand, which I think is a bit more of the Torvaldian asshole. If you have someone trying to slip in a below-threshold quality solution into place, this person will not let it slide. One of my favorite engineers had a little comic strip tacked to his cube, the punchline was something along the lines of "You're right, let's do it the stupidest fucking way possible because it is easier for you personally." Regarding the second, I tend to see their frustrations come out when interacting with the "politician," the kind of person who puts on a polite veneer but uses it as a shield. This is the kind of person who will tell you they aren't doing something because they don't feel like it, but when management gets involved starts acting surprised at the accusation while playing into the "brilliant asshole's" known-quantity. If you see someone at work getting frustrated with another, don't just buy into the "he's an asshole" narrative. Do a little investigative legwork.
- rurban 7y agoHer #1: "Security and reliability are more likely to go wrong in the seams between components". Cannot confirm for security. Too naive thinking. Security mostly goes wrong in the very core, not at the seams. One of her next is also a big red flag > A big part of what I do as an engineering manager is stopping truly brilliant people from executing on plans that begin with the words “I can just do this myself in a weekend.” It completely denies the impossibility of doing great work in a team. Someone has do it somewhen. She'll loose the brilliant guy who offered to do it properly, and she'll come up with the typical business solution. Unscalable and unmaintainable. I stopped reading then. Way too self-congratulating engineer bashing.
- TheSpiceIsLife 7y agoIs the world not full of great work people have done as teams? If I look around my lounge room right now, literally everything my eyes can see was put together by, not just a team, but a company (literally a team of teams), and much of it is actually very good and has already lasted for many years without fault. I challenge you to name one person who has built a thing on their own without anyone else’s help.
- rurban 7y agoOn the contrary the best works were made by 1, max. 2 people. A team helps with testing or docs, but not much else. Show me a good project made by more than 2. I doubt you'll find any.
- leksak 7y agoWhat's the definition of a good project in your mind? I believe you, and the person you are replying to, are coming at this from two different frames of mind. Is the quality of the final product all that matters? Is how the people working on the project felt during it a factor? I'm, for instance, quite happy with the keyboard I am using at the moment. I doubt, very much, that it is the result of the work of a lone individual or a pair. Is your point that the original design might have been drawn by a lone individual, and you view the rest of the work performed by other people as mere augments to that person's vision? Or does your interjection only apply to software?
- contingencies 7y agoMy collection is at http://github.com/globalcitizen/taoup http://github.com/globalcitizen/taoup .. though not exclusively non-engineers, I find it genuinely useful to recalibrate if stuck for fresh perspective.
- B-Con 7y ago> But trust also degrades naturally over time. Italian researchers Cristiano Castelfranchi and Rino Falcone have a model of trust in which it’s observability not success that is the key factor. Under their theory an entity that is silently successful can end up seen as less trustworthy than an entity that visibly fails. I would believe it. From what I know, trust is a fickle, and irrational attribute. It places disproportionate value on first hand sensory input, and it isn't nearly a commutative as would seem reasonable.
- thelittleone 7y agoThe most trusted client relationships I had in tech consulting where those that had gone through a major foul up (usually a software issue on our side) that was honestly and diligently corrected. Accountability is a big factor in the equation of trust. Finger pointing has the opposite effect.
- appleflaxen 7y ago> “People like us make our money in the seams of things” Who said it: a Senior Official at the National Security Agency (NSA) I find this sentiment to be terrifying when it comes from the government, let alone the NSA. Government employees should be worried about nothing except than the efficient and legal discharge of their legal obligations/goals. I hope the wider context of the conversation makes this more innocent than it initially sounds.
- random42 7y agoI read "make our money" to be "earn our salaries", ie their job is primarily involved with the "seams"
- aerophilic 7y ago> Effective teams need trust. That’s not to say that frameworks for decision making or metrics tracking are not useful, they are critical — but replacing trust with process is called bureaucracy. A thousand times this. Highly effective teams have super high levels of trust and mutual accountability. The moment you lose trust, you now have to replace trust with some other type of mechanism. This leads to process/bureaucracy. Trivial example for those that don’t “get it”: think about why do we need code reviews? If we knew people would write perfect code every time, they would never be needed. However, we hold them because we know that even in our own “best code” we may miss something/forget some detail. However, think about your own process, at least for me, depending on a feature/the engineer, my code review might be cursory rather than super line by line. The difference? How much I trust that engineers ability in that specific type of code. But that was a digression, my main point is that hight trust means high speed, low trust causes slow speeds. The more you can build up trust and eliminate/prevent process, the better your organization will be. For anyone that wants more details on this, I highly recommend the book “The speed of trust” by Stephen Covey.
- Hex-3-En 7y agoTHIS is basically what I feel is the reason why most german software companies are lacking success in international competition... Disclaimer: I'm german, have software engineering degree and hate german conservative company structures not adapting to the 21st century...
- pca2 7y agocan you explain a bit more about "German conservative company structures" for us non-Germans?
- juangacovas 7y agoHere in Mallorca island some call germans "cap quadrats" (being "square heads") for a reason. I'm sure they also call us names...
- mr_overalls 7y ago
- sailfast 7y agoI liked this article and it was nice to think through some of these things in these contexts. That said, if I was speaking at a big government meeting (where the sign on the door often indicates a classification that is above what you can say on Medium) and found myself quoted in a blog post later I would be pissed. In future, I would recommend the author take all the names of the organizations out or get permission from the person. The quote would have been just as powerful without the agency name drops in a security context.
- PopeDotNinja 7y agoMikey Dickerson is a fairly public figure, so in this context I think it's fine.
- sailfast 7y agoAgreed, and he probably wouldn't mind. In this case I was talking about name dropping agencies and how they operate. Example: "A Senior NSA Official" in what was likely a classified meeting with DHS officials and state department, and calling out how they were speaking with each other. I'm not saying making it public is bad for the public overall, but I'm not sure that was the intent (based on the focus and purpose of the article) and generally those kinds of discussions are covered by NDAs and aren't for public record.
- vectorEQ 7y ago"I never regret keeping my mouth shut and letting them speak." love it. even though i like to annoy people with my dumb comments, this is sound advice for sure. :)
- Spellman 7y agoAsking the "dumb" questions is actually often a good thing. For one, you learn faster. Secondly, there's a chance someone else was thinking the same question and was too afraid of looking "dumb" to ask it. Just make sure you don't occupy all of their time with questions, especially in a public forum, thereby wasting other peoples' time. The quote was actually talking more towards speaking up in an attempt to impress the expert with the little bit of knowledge you have in the subject. It's patronizing and they often see right through your front. It is much more effective to let the expert do their thing and for you to learn than trying to impress them with your little bit of subject matter knowledge.
- RocketSyntax 7y agoRegarding #5 - thinking about a schema is the hardest part! The rest is just busy-work.
- Nimitz14 7y agoReally enjoyed that! Minor nitpick though: > Another thing he used to say a lot was “when you punch someone you need to pull your arm back, before you launch it forward. If you don’t your hit will be weak.” This is not true.
- mangoman 7y ago>When I was in a traditional office environment I used to tell my people: If it’s 2pm and you’ve finished your work for the day and you have no meetings, just go home I've often had this thought - what is the ultimate cost of giving someone a random friday off, not counted against any sort of vacation policy? "Hey, you've been working really hard and the team is better off for the work you've done, take a three or four day weekend". Would that really harm the bottom line? I mean, in a metrics driven environment, if we hit our metrics, then why not spend some time gearing up for the next thing by recharging?
- gniv 7y ago“To go left, turn right.” I encountered this idea in a different context, and I too thought it was insightful/funny: (On some divided highways) “Left turn from right lane” The jughandle would make as good a symbol for a philosophical movement as the yin-yang.
- m12k 7y agoA variation is "never replace/remove something if you can't explain what good it does". The classic example is the big code rewrite, where years of bugfixes and nuances get lost in the 'clean' reimplementation.
- lordfoo 7y agoAlso, Chesterton's Fence https://en.wikipedia.org/wiki/Wikipedia:Chesterton%27s_fence https://en.wikipedia.org/wiki/Wikipedia:Chesterton%27s_fence
- AtlasBarfed 7y agoIt's not "curated"?
- lostphilosopher 7y ago> When I find myself itching to interrupt someone with my thoughts about a topic I try to ask myself “what am I being asked to be an expert in here?” Often I realize that in my enthusiasm to show my casual knowledge I’m about to correct someone that who has devoted a considerable amount of time and effort into developing their expertise in the topic. I never regret keeping my mouth shut and letting them speak. This definitely resonated with me.
- amoitnga 7y agothere is rarely a really good reason to speak. All our meetings would be about 10% of what they are if - ppl weren't interrupted - stayed on point - things weren't repeated more than once
- AstralStorm 7y agoThat last bit of only valid if minutes are taken.
- elwell 7y ago> If it’s 2pm and you’ve finished your work for the day and you have no meetings, just go home. It never makes sense to me when people say this. As a Software Engineer, there's always work that can be done. How many people actually have a list of "work for the day"?
- Obi_Juan_Kenobi 7y agoMore precisely: There's no especially valuable work to be done at that moment, so go relax and save your effort for the valuable work that will be there later.
- rabidrat 7y agoI generally pick a goal for the day, and then work hard towards it. If I've done it right, I don't have the energy to start another big rock mid day. Best I can do is think about what tomorrow's big rock is going to be, and get myself set up to hit the ground running. That feeling of never-ending work (and thus, work until your brain is toast) is anathema to being maximally productive. It just makes me take longer on each day's big rock so I'm not burning myself out in the long term anyway.
- maverik 7y agothis is great, thanks for writing it