Yes your boots should be firm fitting. But the amount of 'firmness' depends on what type of skier you are and waht type of skiing you prefer.
1. choose the right brand. Is your forfoot wide then atomic, medium, salomon, narrow lange (and of course there are all the other brands).
2. shell fit first. Take the liner out, put your foot in with your heel at the back, going into ski stance (not too far forward just the perfect center) get someone else (if you do it yourself when you bend over it will change your stance) to put their fingers between the back of your calf and the back of the boot. A squashed finger is competitors race fit, 1 finger is someone that wants a lot of quick response, two fingers is for the cruisers.
3. put the liner back in, stamp your heel into the back of the boot (especially langes b/c they have a tight heel fit). Strecth into the boots, adjust your fore/aft then feel where your toes are. There should be 2-3mm from the front if you are an advanced skier.
4. YOU MUST GET FOOTBEDS. For the extra cost this will make a huge difference. Many westerners have pronated feet (usually only slightly but it makes a big difference when your are skiing and relying on small movements), and most people need some arch support. There are different kinds of footbeds but it's important that you get a boot fitter that knows a little bio-mechanics to do it properly. They should also grind down the sides to make it fit in the boot properly.
You may also need other adjustments ie heel grips, lifters or blow outs in certain places. Don't look for the cheap deal, look for a good boot fitter. So many people out there sell boots with no clue what they are doing. Your boot transfers your movements to the ski so it is more crucial than edges (and I'm an aussie that normally skis ice, so that's a big call).