Software Engineer Career Fork? Check Out These Ideas

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!

Grabbing The Right Star

The career path after “software engineer” splits pretty quickly. There are a number of different ways to go, some of them more common than others, some more technical than others. Consider these choices:

• Engineering Management. These are positions with titles like “Director of Engineering” or “VP of Engineering” or “CTO”. These are management jobs specifically for managing technical people. Being successful here requires good people skills and frequently business skills. At the executive level, it’s as much a business job as it is a technical job.

• Technical Leadership. These are positions with titles like “Systems Architect” or “Principal Engineer” or “R&D Engineer”. These are jobs that require refined technical skills without all the people management. They often mean going very deep technically into a certain domain (e.g., databases, or healthcare interfaces).

• Software Engineer. It’s perfectly acceptable to continue being a coding software engineer. There doesn’t have to be an “after”.

• Program or Project Management. For the date-oriented among us (I tease!). This is management oriented toward projects or programs, rather than towards people.
Yes, there are a number of career options and the latest figures from the Bureau of Labor Statistics may give you further fodder to point your occupation towards a certain industry sector.

Comments

  1. BY RMS says:

    Is there a difference between an engineer, and a developer? Do the engineers have degrees in engineering?

    • BY MustBeLuckyCauseIHaveAJob says:

      From the software field perspective, in practice I’ve seen no difference between ‘engineer’ and ‘developer’. Those roles usually imply the ability do it all: gather requirments, design/architect and implement complex software systems that are testable and maintainable. While some ‘coder’ or ‘programmer’ might gather requirments and do some design, those roles (IMO) usually just work on the implementation portion.

      In some companies I’ve seen them move away from the engineer term toward ‘member of technical staff’.

    • BY Catherine Powell says:

      Whether there’s a distinction depends on the context. For example, in some companies “Software Engineer” includes the testers as well as the developers. In academia, “computer scientist” and “software engineer” are not the same thing – one focuses on the science and the other on application. I personally don’t see programmer used much in software companies but I do in hardware-oriented companies (I’m not sure how universal that experience is).

      For most software jobs – at least in my area – developer and software engineer are pretty interchangeable.

      • BY Pete says:

        A lot of corporations still use the term Programmer instead of developer or software engineer.

  2. BY Some info for you says:

    RMS, “Software Engineer”, “Developer”, and “Programmer” are all the same job.

    • BY RMS says:

      I am unconvinced the users of those terms are using them as equals, and where does “coder” lie in relationship to the others? Does “SE” involve a measure of analysis, or simply creating a working app based on provided specifications?

Post a Comment

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>