Slashdot Mirror


Software Engineering vs. Systems Engineering?

An anonymous reader asks: "I recently graduated with a master's degree in computer engineering. I am currently a software engineer for a defense contractor. They (same company) have now offered me a position as a systems engineer. Any advice? What are the long and short term ramifications of the change, in respect to job duties, advancement, compensation? I am pretty much fresh out of college, with only a year of co-op experience. I am a little over whelmed by the choice with no experience to go by, but I also don't want to pass up a great opportunity. Thanks for the help."

5 of 79 comments (clear)

  1. A layer of abstraction by daedalus-prime · · Score: 4, Informative
    The main difference between a Systems Engineer and a Software Engineer (at least in defense/aerospace) is the level of abstraction you're working at. A Systems Engineer works at a higher level of abstraction. They are the ones who right the high level requirements and make sure the design fits the customer requirements. They rarely get down to the code level.

    A Software Engineer will be closer to the code, though in the defense industry there are software engineers who don't do alot of coding.

    As far as career advancement, I don't see a whole lot of difference. It all depends on what you want to be doing....

  2. I've been both by Thumper_SVX · · Score: 5, Informative

    During my long years I've been both a software engineer and a systems engineer (and a brief stint as a manager that we just won't talk about, mmmmkay?)

    Anyway, the choice basically comes down to what you prefer. Both are heavily analytical but software engineering is probably a little less "dynamic" (not in the good sense) than systems. The reason is that systems primarily deals with hardware and operating systems; stuff that changes often. You get behind and it's tough to catch up. It's not often that you get a new language to work with as a software eng, but sometimes concepts change.

    I personally have gravitated recently toward being a systems engineer (R&D) because I actually get a kick out of the dynamic nature of systems at the moment. However, stability isn't really there; there's plenty of people younger than I who are quite willing and able to do some of the same stuff I do... but often I bring a level of experience to the table that they can't beat. On the other hand, software engineers are easier to outsource / offshore!

    Do whatever you think you will enjoy. Myself I find that systems engineering can be tedious; I've just spent an entire day at work troubleshooting problems with Lights Out cards on HP Blades (turned out to be another engineer had cocked up the IP subnets on 2/3 of them!), and so to be honest I feel like I've come full circle and accomplished next to nothing today. I must admit I had fewer days like this in Software because at the end of the day no matter what I had usually made strides in the code I was working with.

    I guess this might help; if you enjoy massive bugfixing sessions in your current software engineering job, then you might be a good match for systems engineering. If you prefer the creative element to software engineering then systems is probably not for you.

    Hope this helps!

  3. A title is just a title... by Curmudgeonlyoldbloke · · Score: 4, Informative

    What do the job descriptions say? What are you likely to spend your time doing during, say, the first 6 months? What are the prospects going forward? Which do you think you might enjoy doing more?

  4. Hobson's Choice by aminorex · · Score: 2, Informative

    Frankly, either one and you're screwed.
    Pick door number 2.

    --
    -I like my women like I like my tea: green-
  5. Do you like to have a job? by HalWasRight · · Score: 4, Informative
    Coding may be a noble profession, but you are replaceable. If you are a code pig, you are nothing. A spec can be coded by anyone. If you want to keep a job (and buy a house, and that lease that BMW), and pay for your kid to go to college to not be a code pig, then you better be one writing the spec, not implementing it.

    Dude, this is a no brainer. Take the JOB, not the dirty, blue collar, life limiting, chicken shit cop out. You can always code for free on the weekends on some open source project to get your ya yas out.

    --
    "This mission is too important to allow you to jeopardize it." -- HAL