|
|
|
| It’s the senior+ SWE’s responsibility to ask those questions at the design stage. If the design was approved without those details, that is a failure by technical leadership. |
|
| unless you're in the weeds everyday of a specific problem, it can be hard to ask the right questions. often times the most important details are the ones that are omitted |
|
| Yeah, I hate to be this person that has to constantly say no and no. Sometimes it's like I will say "yes" just so that everyone would see that I'm not saying "no" for nothing after the consequences. |
|
| Hypothetically, could the implementation just not faithfully represent the design, or could enough time have elapsed for some critical detail in the target project to have changed? |
|
| definitely seen this. folks review, say nothing, then wait to critique in front of the bosses in a larger session. critique is only good if seen by someone important not in silence. |
|
| Even if it's prevalent doesn't necessarily mean it's a good idea. There's always diversity in how people react to it - this is even a reason why some people move countries, to escape such things. |
|
| Are you referring to this quote by Admiral Grace Hopper?
"It's easier to ask forgiveness than it is to get permission." I never thought of it as arrogant, but I guess it depends on context. |
|
| Very opinionated but some times some things are owned for accountability and it’s good professional practice to ask for permission in those cases. |
> (...) but if it goes wrong you might end up involving them in the failure: “Hey, I asked that team and they said it was fine.”
I've seen this play out in teams. The part that's omitted is how some unscrupulous team members set up their team members for failure.
I've personally witnessed a case where a team member went out of his way to propose a rewrite of an important feature and reached out to a couple of senior members to do a system design review and provide feedback. They initially told him the design was good as is and required no feedback and change, but once the project was about to be deployed they suddenly became very opinionated and critical of each and every tiny detail, including on the need to rewrite the component.
There are plenty of good reasons why some FANGs enshrine the need to be thorough and extremely critical of projects at the design stage but everyone is obligated to commit to the project once it starts to be implemented. Teams need to commit to projects after they are prompted to give their opinion during the design process, and once their opinions are heard there should be no room for weaseling out and go the backstabbing route to throw everyone around under the bus. There is a time and place to provide feedback, and if you're prompted to deliver your feedback then you should not pretend the project does not reflect your input.