Comment by socketcluster
13 hours ago
I disagree with the first point because I worked for quite a few companies on many different projects and less than 10% were doing it even approximately right... And these were all well regarded companies. I even worked for a company backed by YCombinator for over 1 year as a contractor.
I agree that you shouldn't plan too much, but my experience is that anticipating requirements is possible and highly valuable. It doesn't require planning but it requires intuition and an ability to anticipate problems and adhere to certain principles.
For example, in my current job, I noticed a pattern that was common to a lot of tasks early on. It was non-obvious. I implemented a module which everyone on my team ended up using for essentially every task thereafter. It could have been implemented in 100 different ways, it could have been implemented at a later time, but the way I implemented it meant that it saved everyone a huge amount of time since early on in the project.
Also, we didn't have to do any refactoring and were later able to add extra capabilities and implement complex requirement changes to all parts of the code retroactively thanks to this dependency.
One time we learned that we had to calculate the target date/time differently and our requirements engineer was very worried that this would require a large refactoring to all our processes. It didn't; we changed it in one place and didn't have to update even a single downstream process.
It was a relatively complex module which required some understanding of the business domain but it provided exactly the right amount of flexibility. Now, all my team members know how to update the config on their own. We haven't yet encountered a case it couldn't handle easily.
I have similar stories to tell about many companies I worked for. When AI can replace me, it will be able to replace most entrepreneurs and managers.
No comments yet
Contribute on Hacker News ↗