The belly of the beast when it comes to the casual coder lives in the people whose jobs are about something other than writing software but who increasingly need software in order to handle either the scale or scope of what they have to get done.
One really interesting phenotype of this intermediate coder is the scientist (see here for an example of a prototypical one) who need to process data at a scale that precludes manual workflows. They do the work in the name of discovering new things so the code itself is no more important than the beakers a chemist would use to mix compound— that is, it needs to work and just not get in the way.
Another example worth mentioning is the quant investor who trades either partially or fully algorithmically based on strategies that a program can execute much more efficiently than human traders (see what my friends at Quantopian are doing to democratize access to this type of intermediate coding). In the case of good algorithmic trading, the scope of what can be considered by a program as opposed to a human weighing stocks and derivatives means that the edge is with the machines.
When people talk about software eating the world it is the intermediate coders that I think of first: slowly and unwittingly writing what they think of as disposable software with little fanfare that ends up making the gears of the world turn.