Hacker News new | ask | show | jobs
by PaulRobinson 508 days ago
(Good) meetings are deep work.

Too many engineers think that engineering work is sat in front of the thing they're building, building it.

You need to know what to build. You need feedback on how to build it (no matter how experienced you are, you want other perspectives to help improve your thinking). You need feedback on iterations. You need to discuss and get ideas on problems.

These are all done with other people. The best way to discuss them with other people is not to swing by and have a chat. It's to block out some time.

If you spend too much time in meetings, the balance is wrong. But so is too little.

If your manager is going to the meetings, you're not being a good engineer, and they're not letting you be a good engineer.

I'd recommend to try and block these up a bit, have meeting free days and the like, but if you're the kind of engineer who thinks meetings are not work, you're going to lose out to those engineers who want to collaborate and engage with colleagues, partners and other stakeholders.

3 comments

> You need to know what to build

I like to refer to this as "the hardest problem in computer science."

Several times over my ten-year career I've spent months building a thing to what we thought were the specs, only to have to throw most of it away because the specs change at the last minute, or somebody learned the hard way that details like are you paying for access to the thing, or access to the group the thing is in can actually matter a whole lot when you're building software. I would say I nearly always spend more time defining the problem than solving it.

This was my work in defense. Weeks or months are spent in design and the code itself only takes a few days.

Now at my company teams will spend no time planning, code like crazy, only to redo it multiple times.

Illusion of progress. There must be a middle ground.

As mentioned below, it seems you don't like true agility (though, the critical piece is re-evaluating often, most teams miss that).

If you want a successful example in a traditional engineering industry, you don't need to look further than SpaceX vs Boeing and their rocket development (one got a smaller budget and blew up a number of rockets and has been earning money for 4+ years, the other got twice the grant and wasn't trusted to bring astronauts back from ISS a few months ago).

Is this the core tenant of agile development? To release often and speak to stakeholders often? The hardest part is deciding when to do that first release I suppose.
As soon as you've got something releasable.

Though, you should break work up in a way to get to something releasable asap.

The latter is where I think it's more art than science still, or at least I can't come up with a good written process on how you do it (other than the constant "where is the value in this" and "what's the smallest thing we can build" questioning), but I can always do it!

Love your point.

> (Good) meetings are deep work

Sadly not enough managers think that either. I've seen a hierarchy where managers only pay attention when their superiors are around. Day-to-day engineering meetings were not their moment to shine, so they took those meetings from the car driving in. The other option, railroading meetings with a strict slide deck, is also not the way to get engineers' minds to engage.

Good meetings are deep work, but there are two sides to it, and it must be lived in the culture.

I think SW people are entitled. "I can't work unless I have hours of uninterrupted time. Waah!"

Figure it out and get over yourselves (myself included).