Software engineers may eventually find themselves facing a fork in the road, with their career. It's not hard to imagine, given the way most people take only a few conscious steps toward becoming a software engineer. Here's some of the typical steps people take when first starting out:

  1. Casual coding. Many of us started off coding for fun (before we started coding for profit!). Not everyone starts here, however. Some people start writing code in a college program or on the job.
  2.  A technical, non-engineering job. Some people go straight into engineering, but others go through a technical job that doesn't involve writing code. Support, IT and QA are all common. It should be noted that some engineers stay in these functions and have great careers. Others move on to a developer or engineering role.
  3. A junior engineering job. This is the first professional coding many of us get. Usually it's done on a team with the supervision of more experienced engineers.
  4. A more senior engineering job. Congratulations, You've arrived!