What are the practical differences between software engineering and systems engineering?
-
Out of college, I was interviewing for a few jobs and I had a few offers from a company. Some of the offers were for a junior software engineering position and some were for a junior systems engineering position. I had a computer science degree and was mostly looking for a software development job, so the software engineering job seemed like the best fit. Since then, I've worked with people with the Systems Engineering title and it never seems like their day-to-day work is any different from mine. If I had to guess, I would say that their job concerns the entire software development lifecycle, whereas my software engineering job mainly deals with the design and implementation of the code. Is this right? Are there some details that I'm missing?
-
Answer:
Keep in mind that different companies and segments of the industry use different job titles or terms to describe jobs. So this isn't universal. But, in my general experience working at software companies... The difference is that Systems Engineers typically focus on building, setting up, and maintaining computer systems: they put together server infrastructure, they do a lot of network engineering, they manage security and connections with the outside world at a corporate level. They build the internal platform upon which a company runs. Software engineers write applications for distribution, platform code, APIs and services for external partners to call, mobile apps, websites, etc. They tend to build the products that the company is making. The line may very well get pretty blurred at companies that are producing a hardware offering with integrated software, or at companies early-stage enough where people really wear a lot of different hats.
Ian Peters-Campbell at Quora Visit the source
Other answers
The term "Systems Engineer" was copied from the true discipline of Systems Engineering around the time of the http://dot.com boom. Real systems engineering has been around for more than a century, and has simply been a term used in recent times by IT types in an incorrect fashion for the most part. Real Systems Engineering is a discipline that involves the design, construction, testing, and troubleshooting of devices or machines that involve more than a single discernible component. A great example where true systems engineering is a key discipline is at NASA. All of our space vehicles are very complicated and are made up of systems of systems. There is the on-board computer subsystem for instance, which has hardware and software components, some of which are user-interface components like the flight computer and climate control, and unseen but critical diagnostic components that send and receive information to and from mission control involving trajectory, temperature inside and outside the crew module, and health and status checks of all critical subsystems and the astronauts themselves. Then there is the propulsion subsystem, involving the several stages of the rocket (in the case of the space shuttle, there was a main fuel tank and two solid rocket boosters, in addition to the main engines on the shuttle itself) The propulsion subsystem is designed by rocket scientists and built by mechanical, electrical, and systems engineers. It also has diagnostics involving fuel levels, flow rates, and temperature. All of these subsystems make up the system we called the space shuttle, Apollo, Gemini, etc -- the final product you see on the launch pad, complimented by the software and hardware at mission control that interfaces wirelessly with the shuttle or what have you. A road vehicle such as a car is very similar- there's the engine system, braking system, the computer system, and the physical assembly itself. Hopefully this gives you an idea of what systems engineering really is. Systems Engineers in the IT arena are sometimes correctly labeled, as they are looking for a software and hardware person to build the block diagrams of the various IT system's sub-components, how they interact (usually via what's called API's- application programmer interfaces). But sadly in my looking at job postings i rarely see a Systems Engineer in the IT field be asked to be the big picture guy, looking at and making sure all the development of the software and h/w modules are passing the right info. What I usually see as job duties for an IT systems engineer invokes lots of programming and that is a humongous distraction from being able to look at the big picture. It's kind of like asking a Project Manager of a high rise building to put on work Gloves and pour concrete all day -- in that case, nobody is watching to see that the building as a whole is being constructed according to building design, government code, as well as ensuring its being done so in an efficient manner.
Greg Schoenig
Software engineering = "deals with the design and implementation of the code". System engineering = deals with design of systems which usually includes software engineering and integration with existing systems/software. Example 1 (SW engineering) - designing and coding a new iPhone game Example 2 (SY engineering) - designing, integrating (and coding if necessary) email infrastructure for email services that require fail-over, backup, security and network monitoring. Of course those examples are over-simplified and vary between companies.
Vasil Dalkalachev
Related Q & A:
- Are there any professional software engineering certifications?Best solution by en.wikipedia.org
- Software Engineering Vs Computer Science?Best solution by Yahoo! Answers
- What are some good colleges for programming/software engineering?Best solution by colleges.usnews.rankingsandreviews.com
- Difference between BA in Software Engineering versus IT?Best solution by programmers.stackexchange.com
- What are the job opportunities for ME software engineering fresher?Best solution by Quora
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
For every problem there is a solution! Proved by Solucija.
-
Got an issue and looking for advice?
-
Ask Solucija to search every corner of the Web for help.
-
Get workable solutions and helpful tips in a moment.
Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.