For as long as I can remember I’ve had the belief that, at least as far as software is concerned, everything I know how to do everyone else also knows how to do.
I carried that assumption for quite a while and only realised relatively recently how harmful it can be.
The most observable outcome I noticed is that I either didn’t give my opinion in group situations or just didn’t take part in them because I assumed that what I wanted to say would eventually be contributed by someone else anyway.
The danger of doing that is that sometimes people didn’t come up with a solution I’d seen work before and I’d be extremely frustrated because it seemed like the others were making what I considered bad decisions deliberately.
I think this belief evolved from the fact that for several years I was nearly always the least experienced person on the teams that I worked on and it was often true that my colleagues knew way more about almost everything than I did.
As time has gone on I’ve seen more situations and gained some ideas on approaches which work and I haven’t been the least experienced in the teams I’ve been working on so the belief doesn’t necessarily hold anymore.
I’m not sure if this is a common stage to go through on the software journey so it’d be interesting to hear about your experience.
I’m now moving more towards an approach where I give my opinions in situations where I have some knowledge while also accepting the fact that there will be other situations where others know much more than me.
In those situations I can legitimately keep quiet and learn from my colleagues experiences.