It is important to understand that the postdoc was not designed to "achieve" anything. It is simply a product of the system's incentives. There is no central planner.

In the US a professor at a research university gets tenure and promotion based on the number of publications and grant dollars he has. As you know, a postdoc or PhD student can write several good papers' a year in which the advisor (professor) shows up a second author. So, someone who can fund 10 students will have 10 times as many publications as someone with 1 student. The more publications you have the easier it is to get funding, so we have a positive feedback loop where the top performers get a continually larger share of the money and talent.

Because of this, a professor would rather hire 2 postdocs at \$40K/year than 1 postdoc at \$80K/year since we know that more money does not translate into more papers. In the sciences and math new PhDs are happy to take the job of a postdoc at very low wages, for several reasons:

 1. Some really really want that tenure-track job, so are willing to endure the costs.
 2. Some have few other job prospects
 3. For many foreign students (India, China) the postdoc salary is much higher than anything they could get in their country, and has the added benefit (for some) of a student visa to the US with the prospect of full citizenship to come. It is much easier to become a US citizen if you have a PhD and are employed in the US.

More than half of US Science and Math PhD students and postdocs are foreigners, so point 3 is a big effect.

There are virtually no postdocs in Law, Medicine or Finance, since someone with a law degree, medical degree, or finance PhD commands a starting salary above \$150K/year in the marketplace, so they are not willing to take a postdoc for such comparatively low wages. In Computer Science the postdoc is still somewhat rare since starting salaries for PhDs in CS are around \$100K in industry. Thus, point 1 also seems important.