That's pretty much a good analogy for it.

Our company has several different departments that data gets shifted around between. For example, models get built by the modelling department. Those get used by the tracking department. Then, what the trackers use gets sent off to the animation department, who also imports stuff from the character rigging department. All that goes off to the effects, or lighting, who then render. The renders go off to the compositors who assemble all the bit pictures into one final pretty image, which then goes off to be recorded onto film. The point of the pipeline department is to make sure that process is as smooth and painless as possible by writing scripts that munge data from one form into another (because half of what we do doesn't use the same software as the other half), or writing code to keep track of where assets are being used, or what stage a shot is in, and things like that. Inevitably leaks spring up, which we either try to patch, or invent a whole new process from scratch that's (theoretically) more robust. So a pipeline programmer is a person that helps write software tools, or parts of those tools that the department needs to do all the above.

Does that explain it well enough?