If you set something new as top of the Job Manager queue, when it gets validated, it'll still (generally, there are exceptions) sit behind what's already been passed on as a wishlist from the JM.
If I have (say) nine magma forges and my recent (or not so recent) job to create shields is not apparently being serviced (noticeable by my dedicated armourer being a No Job person, having all other tasks disabled, for the duration) I may have to go into the forges and bring the shields to the top of the list with the workshop-level (p)romote job mechanism.
It could even be that five of the workshops are actually devoid of jobs (had been making metal bolts, for example, but now all the demanded bolts have been created), and the other four have Tin Goblets in the top of their queues, being dealt by a sometimes-blacksmith who is currently doing a stint in the military or otherwise working on something else, and the shield-creation jobs are sat below them. Once you promote the Shield jobs (or get someone else to make enough goblets to bring a shield into the top of the list, or a combination, thereof), the armourer will (all else being conducive) get along with the job.
The Job Manager is useful for providing "Those thirty yarn sacks you wanted are done, now!" alerts, or setting up essentially perpetual brewing jobs[1], but doesn't give you the control you might want to keep one particular workshop working on just on particular task, and (through the individual workshop controls) by either specific dwarves or dwarves of specific skill-level.
Indeed, if I do set up a masonic workshop that will be for use by only Legendary workers, set deep in the heart of marble rubble (or whatever the situation might be), and I'm putting a Repeat job in the top slot, I will tend to occupy all otehr slots in the queue with copied Repeat+Suspended jobs, to prevent it accidentally taking an order for a Floodgate, which I'd be quite happy to be made of the sandstone or any other stone that is generally fodder material for the main gallery of miscellaneous masonry places, set elsewhere in the fort.
Already mentioned, and something I'd make in conjunction with the above dedicated shop: Burrows. Set the burrow to include the workshop, the raw materials pile, optionally the end-results pile (if you're keeping hauling on the worker(s) you intend to work there[2]), but certainly also nearby food/drink stockpiles and a suitable dining area, plus their bedrooms/dormitories. Everything each dwarf needs/wants is accessible (watch out for "trying to retrieve my sock from outside" cancellation errors, though, and be prepared to add small, insignificant dots of burrow on for those instances), and you've stopped them from sandstone-block manufacturer, defensive wall building or any of the other little tasks that your workaday masons are more suited towards servicing.
There's other prioritisation tricks. Penning/Pasturing animals (which I'm pretty sure it doesn't even get prevented by lacking the Animal Hauling task) tends to grab any dwarf who is not otherwise burrow-restricted from doing this. Certainly removal of conntructions is so, but I'm not sure if it's as top a priority (as my child dwarfs tend to grab those tasks, being the ones often not doing anything at the time, and one of the few jobs that they'll adopt).
Not relevant to the question at hand, but digging designations also have priorities, generally the most top-left available block first, then down towards the bottom-left before heading down from progressively more right, but with a tendency to attack adjacent digging designations to the one they've just finished (meaning sometimes a random-looking snaky path, through a large area-designation being tackled by even just one dwarf... more complex with multiple). There also appears to be a bias towards dealing with meta-blocks-worth of blocks[3], but again it might look different.
And, of course, Construction jobs are in a queue that is LIFO (modified by their changing accessibilities), within their own scope.
But all that is a matter of experience, fudging various issues and generally micromanaging things at times. True "job prioritisation" is not (in an all-encompassing fashion) possible, even though subsets of the job-tree can be. Maybe that'll be a development, later on, or maybe it's just The Way The Fortress Spirit Works and intended (or accepted, in lieu of any decision to 'correct' this) to be one of the challenges to the game.
[1] You can (R)epeat the job at the still, but it cancels when products run out, so either set up at least two lots of Brew*30, or similar, and add another whenever the notification comes in that another has finished,... or just spam it with dozens of Brew*30 and if/when it finally runs out you're probably not bothered any more.
[2] e.g. you have two masons that you consider worthy of creating the marble thrones you desire. Two workshops could be used, but I might set up one workshop, on the basis that for a significant amount of time there's only one in the mood for throne-carving, but when both are working, the other can be specifically clearing the place out to stockpile, if burrows restrict them to such areas and not tree-hauling duties.
[2] In a current fort I have large four-tile-wide ramp-cut designation, exactly straddling the median 'line of longitude' of the map. They tend to enramp the two tiles-worth to the left of this invisible line, from top edge to bottom edge of the area, before going back and enramping the TTW on the RHS. This is less noticable when digging tunnels, as the "the only tile to be dug that is adjacent" aspect overcomes the meta-block aspect totally, when crossing such a meridian. Barring other distractions.
(PS, Sorry, bit of a wall of text, and I've just noted/corrected some typos based upon this keyboard being 'sticky' and sometimes not giving the characters I've typed at high-speed. Some others may remain, so my apologies for making such an impenetrable wall of text slightly more diffiult to read, if that's the case.)