Acredito que seja um questionamento que todo mundo que tem que tomar uma decisão que não faz parte da sua expertise se faz em algum momento. Isso pode acontecer com alguém de back que não tenha experiência com infra e tenha que tomar uma decisão por conta ou mesmo com um dev mobile (meu caso) que tenha que definir alguma regra de negócio que será implementada no back, por exemplo.
Com isso posto, eu diria que se sentir inseguro e se questionar se vc tomou a melhor decisão vs "a melhor que deu" é esperado e faz parte do processo de amadurecimento.
Num mundo ideal, todas as decisões seriam tomadas por quem tem xp naquele assunto, mas sabemos que na grande maioria dos casos, a gnt tem que resolver o b.o independente se a gnt tem ideia do que tá fazendo ou se estamos seguindo uma dica do @anonymous_victory9272 do StackOverflow ou de qualquer LLM atual.
Sobre as suas dúvidas:
- Minha área é front + mobile, mas é bem comum terem situações onde tenho que explicar pra cliente/colega de time pq devemos ou não fazer do jeito X pq é uma boa/má prática de UI/UX;
- Não tenho nenhuma ferramenta específica, se tenho alguma dúvida sobre como seguir com uma decisão, normalmente procuro referências daquilo em sites/apps do mesmo seguimento;
- Quando tenho que tomar a decisão e a insegurança vem, tento me apoiar ao máximo em boas práticas e exemplos externos e tento deixar o mais claro possível pra quem for necessário que aquela decisão foi baseada na minha xp na área e nas refs que usei;
- Atrito com PO sempre tem, mesmo que seja velado - faz parte do trabalho, assim como DEV x QA. Mas o caminho é sempre deixar o mais claro e documentado possível suas recomendações e seguir a vida conforme der.
A melhor chefe que já tive na minha carreira sempre diz:
Não importa o que vc decida agora, sempre vai ter mais uma task ou mais um ajuste com base no que o time de produto/mkt/comercial vai precisar amanhã.
Espero ter ajudado a clarear as ideias de alguma maneira. :)