Design of programmable scaling amplifier as a project for undergrad
For signal fidelity (SNR), here are concerns

(1) plan on using a steel box, unless you can guarantee no magnetic fields (only steel handles the 60Hertz power and rectifier surge peak fields)

(2) plan on a Ground Plane; I'd default to 4" by 4" area, plus Power Supply; plan on a steel metallic strip between Power Supply and your analog circuits.

(3) assuming a goal of 0.1 millivolt PeakPeak random + deterministic "noise", with half of that for the Random, in 100Hertz bandwidth, the OpAmp noise density is

50uVPP / [ 6.2 sigma * sqrt(100Hertz) ] = 50uV/62 

or 

about 800 nanoVolt noise Density.

(4) assuming the output stage is gain-of-10, you are allowed 80 nanoVolt noise Density 
referred-to-input; that is total noise contributors of 400,000 ohms.

(5) to not be burdened by 1/F noise, the 1/F noise plot corner needs to be 50Hz or lower

(6) If this is knob-controlled, then use 10-turn pots with verniers.

If this is computer-controlled, then consider CMOS 10-bit or 12-bit multiplying DACs or DigiPots.

(7) Topology: do the math up front, followed by Gain_of_10X amplifier including a Low Pass Filter to set the noise (random and deterministic) floor.

(8) plan on +- 15 volt supplies, so life is easy. You only need about 1 watt total power, so the Ground plane easily removes heat. Maybe as low as 0.1 watt.

(9) stability over 12 hours: have heat paths from the Ground Plane (metal mounting posts that contact the Steel case and contact the Ground Plane, with metal screws). The thermal time constant of 1 cubic meter of copper is 11,400 seconds. The thermal time constant of 0.1 cubic meter (4") is 100X faster at 114 seconds. Having a central metal mounting post speeds that up by (2*2) to 32 seconds. That's probably acceptable.

(10) pick a good opamp: ensure it is spec'd by a plot for 1/F noise (I may have gone overboard on the achievable noise floor; your call); ensure opamp handles +- 15 volt rails (IMHO)

As with any free suggests, your mileage may vary.

(11) black brick power supplies (switching Regulators) will be a problem.
You want to avoid Ground Loops (charges such as from the black_brick that MUST find a return path).