G. Mark’s Answer
There was a time when many jobs -- particularly those in large companies -- tended to be lifetime positions to as much a degree as possible, or at least long-term. The trend these days is for that not to be the case. Intense competition, increased mobility and access to many providers of any product or service, financial variability and other factors have made more jobs short-term or even temporary. There is also a lot more contract work, partly because of that mobility factor. Many people are more willing to move to another area either long-term or temporarily in order to command more money. There as also a time when companies thought that engineers could be interchangeable. You could move someone from one area or project to another and have them simply "get on board" and use those "engineering principles" on any new job. This was a nice goal, but tended to be overused and a bit naive. The nature of a technical job is that people will always push the envelope and find ways to do things better and faster and easier for that particular job. There are "cookie-cutter" applications that folks can dive into and perform rapidly in a new position and then leave that job when that particular need or project is complete. So in general, if you have a specialized position that took you time to get very skilled at, and that position is with a project that is long-term or continually releasing new versions of a product with a long usable life, that will be a long-term position. I hesitate to say "permanent" simply because surprises happen all the time, and supposedly "permanent" jobs suddenly become unnecessary. The trend is for jobs to become less permanent and less long-term. But luckily, there is a tremendous amount of overlap between engineering professions, and the skills you gain in one often can be applied in many, many other positions. So while your particular assignment or company may not be permanently associated with you, your career is likely to be permanent. Cool, huh?