Posted by vanpra 3 hours ago
Often it is a result of suggesting an improvement to some PR for a program or system that someone is doing some work on, and discovering that for whatever reason it doesn't quite work. This tends to lead to a deep dive of really analyzing and understanding the problem and how the piece of the system fits into the overall picture. This analysis often leads to a more structured approach to a problem, placing it in the context of wider industry or CS theory, thus enabling us to leverage prior art and other people who have grappled with similar problems.
Basically a StackOverflow guidance on XY problem applies to the general problem solving as well.
They usually find me.
Making sure that the work was actually done.
I've been a Staff Engineer and managed engineers and it's pretty shocking what people consider to be "done".
A couple examples:
- Doing a migration to using Tailscale and an engineer claims it's done even though there is just one giant ACL for the whole firm
- Migrating from one monitoring system to another despite only 80% of the alerts have been migrated
- etc
Some of this is business folks creating bad incentives. Some of it is not creating good "success criteria" for projects. Either way, someone has to go through and make sure that both the details and the big picture deliverables landed correctly.
This being HN, I'm sure someone will say something like "just hire better engineers". I've seen phenomenal engineers make bad choices here due to poor incentive design.
A perfect example:
- you reward people for hitting delivery deadlines
- you punish people when there are outages
you might think you're pretty smart until you realize the odds of getting yelled at if you miss a deadline is 100% but the odds of an outage are <100%. The EV+ outcome then becomes to hit the deadline even if you know the code isn't ready.
Again, the job of senior engineers/engineering managers is to make sure these things don't happen by both double checking work and also pushing back on bad incentives.
Thanks!
I had two jobs:
1. Writing the actual software for the registration website
2. Going to the events and managing the registration tent where people actually checked in
Doing 2 gave me a VASTLY better understanding of who the users were and how they thought. e.g. I assumed it would be tech savvy, organized people like me in their mid 20s. It was actually a mix of 40 something team dads who weren't tech savvy at all (b/c mid 2000s) but very organized and teenagers who were the opposite.
It meant effectively managing two completely different customer bases in the same product.
Coupled with the fact that cable modems were a new thing but not evenly distributed meant that we had to design the site accordingly.
At the time, I remember Joe Spolsky mentioning that at Microsoft they did two way mirror usability testing and it totally made sense. I wish more firms did that today.
- don't be too proactive in solving issues that signals you are not busy to your employers.
- you are not hired to sit around 9-5, what you ship and how it impacts the business bottom line is far more important.
Especially true when I have to juggle 3 different employers. I will be in a long standup meeting with company A while I am answering slack messages from company B or company C has a deadline that overlaps with another and I'd have to work on at the same time.
Previously without LLMs this was very difficult but now its manageable, especially with openclaw and hermes doing a lot of lifting. This let me discover a lot of what's discussed in the article naturally.