This question already has an answer here:
I work as a software developer on a small dev team of three people. One person is my co-worker/main developer, the other is my supervisor who is also a dev. I'm pretty new to the technology we are using, so my usual approach is to go with the flow of how my teammates are developing and copy the way the other devs are doing things.
I recently did some research regarding a specific practice we are using. I discovered that this is not only not considered a best practice, it is actually recommended to specifically never do this because it takes up large amounts of memory and eventually causes Out of Memory exceptions. I believe this is also the reason our application currently takes several seconds to load each page and perform operations on the page.
Now I understand in software development there are many ways to accomplish the same thing, and you often have to be flexible. However this doesn't seem like a trivial case of preference or even best practice, but a serious flaw that will most likely cause problems down the line, especially with large amounts of data involved and this application needs to be highly scalable.
How can I tactfully and respectfully bring this issue up without offending anyone or coming off as condescending? I'm not sure whether it would be best to talk to the main developer directly first, to my supervisor initially, or broach the topic in a group setting with both present?
Also I'm not sure what specific language I should use so as to not imply anyone is wrong or at fault for this issue within the code. I figured I could somehow reference the article I found directly to explain the details to my teammates.
Here is a blog post which explains some of the more technical details for those who are interested.
EDIT: I believe the nature of this suggestion is different than something like process improvement or even best practice.