Skip to main content
17 answers
18
Updated 2745 views

What is difference between hardware engineer and software engineer

#engineer #engineering #computer-engineering #engineer #software

+25 Karma if successful
From: You
To: Friend
Subject: Career question for you

18

17 answers


1
Updated
Share a link to this answer
Share a link to this answer

Paul’s Answer

Hmmm, lots of interesting perspectives to the question. Let me add another. In my opinion, a hardware engineer designs an electronic machine with many possible intelligent capabilities. A software engineer harnesses the machine and directs it to do what the programmer needs it to do, to accomplish a particular objective (which hopefully meets customer needs). It's important to note that they work together in most cases, to ensure the hardware and software will run together in the most efficient and problem-free manner possible. The engineering team, consisting of hardware and software engineers (and others, like manufacturing engineers for instance) are typically given a set of requirements, and they focus their designs to meet those requirements.

The hardware engineer needs to learn and understand advanced concepts in physics, chemistry, and many aspects of math (calculus, logic, probability and statistics, etc.) to have a foundation to build their design skills on. The software engineer also needs to learn and understand advanced concepts in math, many of them the same as those for a hardware engineer. However, there is also an abstract component of imagination and creativity that is a benefit to an aspiring software engineer. Folks will say designing hardware is also an art form in some ways, but I think more people will consider imagination playing a larger part in the development of algorithms than hardware.

The bottom line is, in going to college for both types of engineering degrees (hardware and software), you take classes that overlap both majors. In the engineering field you will find that hardware engineers know a certain amount of software engineering, and software engineers know a certain amount about hardware engineering. That's what enables them to work so well together.
1
0
Updated
Share a link to this answer
Share a link to this answer

Wojciech’s Answer

A hardware engineer will focus on the physical components and settings. They would research, test, design, and build computer systems, processors, circuit boards, etc. Whereas a software engineer focuses more on the virtual aspects, such as the operating system and applications that sit on top of the hardware
0
0
Updated
Share a link to this answer
Share a link to this answer

Tyler’s Answer

Only the primary focus. Hardware engineering often requires being able to write code and solve complex problems using custom coded algorithms. Software engineering on the other hand needs to understand the physical systems (at least the ones that do it well).
0
0
Updated
Share a link to this answer
Share a link to this answer

Satish’s Answer

The responsibility of hardware engineer is that all the hardware parts are perfectly assembled together and are working properly in order to support the software to run on that platform. Hardware facilitates software to execute properly.

Software engineers are the developers of different software and applications which are making our life much easy and fast.
0
0
Updated
Share a link to this answer
Share a link to this answer

Hanish’s Answer

Both hardware and software engineers work closely with computers to design, maintain and develop operating systems. However, hardware engineers focus on the physical components of a computer systems while software engineers work with the virtual aspects. Both hardware and software engineering job duties require extensive knowledge about computers, technology, electronics and mathematics. While both jobs focus on computer operations, software engineers are typically more creative, solution-oriented and flexible in their day-to-day workplace environments.
0
0
Updated
Share a link to this answer
Share a link to this answer

Adhiragni’s Answer

Both hardware and software engineers work closely with computers to design, maintain and develop operating systems.
Hardware engineers focus on the physical components of a computer systems while software engineers work with the virtual aspects like designing a game and developing an application and a hardware engineer provided the appropriate physical computer system to create and design that game or the physical specs needed for a device. Both requires extensive knowledge and experience with computers, technology, electronics and mathematics. However, you are also required to possess knowledge on customer service processes, sales, marketing and design. While both jobs focus on computer operations, software engineers are typically more creative, solution-oriented and flexible.
As hardware/system engineers work in labs or manufacturing plants to develop, produce and troubleshoot computer parts such as circuit boards, hard drives, Central Processing Units (CPUs) and keyboards. Also travel to various businesses to assist with hardware installation and maintenance depending on the job roles and responsibility.
0
0
Updated
Share a link to this answer
Share a link to this answer

savitha’s Answer

Hai rida,
I appreciate your question. hardware engineers are works on the physical components like chips ,circuit board testing. software engineers are the one work on write programs for software components.
For Example let talk about computer, Computer software and hardware engineers work together to build the complex components of computers.
While hardware engineers manufacture the physical components like chips and keyboards,
software engineers write programs to teach computers how to function.
0
0
Updated
Share a link to this answer
Share a link to this answer

Sambhav’s Answer

Hardware engineer focuses on computer hardware components. while software engineer focuses on programs and applications.
0
0
Updated
Share a link to this answer
Share a link to this answer

Jen’s Answer

You can replace the words hardware and software with physical and logical. Logical EG cloud, describes the data required for each and physical is the system/equipment.



0
0
Updated
Share a link to this answer
Share a link to this answer

G. Mark’s Answer

This may sound awfully shallow and obvious, but hardware engineers work with hardware and software engineers, well... you get the point. However, at a deeper level, I've found that software engineers tend to think more abstractly and hardware engineers are more fact-based. This is only my experience, mind you, but the result seems to be that hardware engineers tend to be pretty good programmers, while software engineers tend not to be that good at hardware design. However, again, this is quite a generalization, and folks who are good at solving problems seem to be pretty above average at both. Again, in my experience.

0
0
Updated
Share a link to this answer
Share a link to this answer

Vas’s Answer

In simple layman terms: Think of Hardware as Machine with very limited power or just a platform with no engine to run. Software will enable the machine to run or make it work with full power of what ever your required needs are from that machine.

0
0
Updated
Share a link to this answer
Share a link to this answer

Matt’s Answer

In my opinion, Software Engineering is an easier degree and the job opportunities with software engineering are much greater.
0
0
Updated
Share a link to this answer
Share a link to this answer

Caitlin’s Answer

Hi Rida,

A hardware engineer will focus on the physical components and settings. They would research, test, design, and build computer systems, processors, circuit boards, etc. Whereas a software engineer focuses more on the virtual aspects, such as the operating system and applications that sit on top of the hardware.

Think of a smartphone... the hardware engineer would test, design, and build the device itself and the components. The software engineer would design the social media, texting, games, operating system, etc.

I found this neat graphic that compares the two:

https://cdn.computercareers.org/wp-content/uploads/Software-vs-Hardware-Engineer.png

0
0
Updated
Share a link to this answer
Share a link to this answer

Cyril’s Answer

A Computer Hardware Engineer is a person who test, diagnose and also install various computer hardware including microchips, keyboards, circuit boards, modems and also routers. He should have a Bachelor of degree in Computer Engineering or else he can take a Masters Degree or Doctorate in Engineering depending on the area he is planning to practice.

A Computer Software Engineer is a professional who involves in the design and creation of new software. He should have a Bachelor’s degree in Computer Science Engineering where he gets more exposure to programming or else he can take a Masters Degree or Doctorate in Engineering on various specializations related to programming

Source: http://entrance-exam.net/difference-between-computer-hardware-engineer-and-software-engineer/ixzz6IoVmvwNB

Read more at the above URL..
0
0
Updated
Share a link to this answer
Share a link to this answer

Luis’s Answer

There can be an infinity number of perspectives for this question and different responses for each perspective. I will try to answer from a perspective I had when I was young and faced the same question for my self.

A Hardware Engineer will focus on design physical electronic devices that will use electricity to accomplish a specialized or a generic task, or most of the times both. For example, a hardware engineer (or a team) is needed to develop a mobile cellphone, adding electronic circuits together to generate and control electric-magnetic fields, radio frequency, clock signals of different sort and add digital circuits like processors, micro-controllers, voltage regulators and etc. to accomplish this task.

A Software Engineer (also a team here) would create a program, using a set of programming languages, design patterns, frameworks, operational system(s) of sort, database(s) and etc., to create, retain and or exchange information between this device and other devices, or this device and a human interface of sorts.

To learn and become a Software Engineer all you need is a computer and study the aspects of the software engineering in general to start practice with it. Using the computer and other softwares like language compilers or interpreter, OS, IDE, databases, etc.; That you can have running on your computer and/or on the cloud.

As to learn and become an Hardware Engineer, beside the theoretical side of it, you need some "hands-on" on different abilities like soldering, crimping connectors and cables, design and assembling circuit boards, dealing with physics phenomenas while dealing with electricity and electro-magnetic fields, etc. To deal and learn all these aspects, you might need to have a well equipped laboratory that cost a lot more than what cost for you to master the art of Software Engineering. And most of the times, with the digital electronic that we have today, you must be a little of a Software Engineer while being a Hardware Engineer also, specially if you are on the business of designing and/or testing new devices.

So, I hope this perspective on "the path" to become a good Software or Hardware Engineer makes sense and add to these fantastic answers this question already have.

Luis recommends the following next steps:

My answer was kind of generic, of course there are specific specialized fields for Software and Hardware Engineers that might not fit totally to my descriptions and worth a research .
0
0
Updated
Share a link to this answer
Share a link to this answer

Dennis’s Answer

First, I will ask this question: How many software engineers does it take to change a lightbulb? Answer: They can't do it; it's a hardware problem! Ha Ha! I'm sure the software engineers have a similar "gotcha" about hardware engineers.

Why do we put labels on people and their activities? I was trained as an ME, but I got a lot of experience with computers that includes both hardware and software. I started when we used punched cards to program an 8K memory machine.

Let's change the focus: Think of a symphonic orchestra. They are to play a work by Beethoven. What is the hardware in this case? It is the instruments themselves. But they have help - the musicians themselves who interpret the music (score). Then, there is the conductor. He/she has the entire score so he can see what each instrument and section must play. His job is to ensure that everybody stays in balance and to manage transitions from one mood to another. Finally, think about the composer. Beethoven had to know and understand what each instrument and musician could do before he put any notes on the staff. In this analogy, I think the musical notation is the oldest form of programming language that ever existed. So, he is the programmer, or software engineer, but he also had and needed extensive knowledge about the software and environment for which he was programming. The amazing thing is that, 400 years later, we can pretty much re-create what Beethoven had in mind when he wrote the piece. And, we can also play it on a variety of different instruments - including keyboards and synthesizers, etc.
Note that this analogy works even for a small group of musicians playing together. They must have a common language that allows them and their instruments to interact.
In today's world, computers control many things and perform many useful tasks in processing data, creating images, etc. So, whether your focus is on hardware or software, the main thing is to consider how your role fits within the overall objective of your organization. If you are a software engineer, you must still understand the hardware available, including the processor, memory, peripherals, sensors and actuators. If your focus is hardware, you still need to understand when and how the software deals with each physical device. In either case - hardware or software - if you don't understand how software and hardware play together, you won't have a very good orchestra performance.
0
0
Updated
Share a link to this answer
Share a link to this answer

G. Mark’s Answer

A hadware engineer works on the application of physical entities to provide a solution to a problem. A software engineer works with algorithms and idea sequences, i. e., software to do that. The two tend to be very complementary, and you'll usually see one type of those engineers being at least acquainted and often well-versed in the other. In other words, most software engineers have at least a fairly good idea of how a computer is constructed and most hardware engineers have a similar facility with putting a good program together and how to use computers. In my experience, hardware engineers tend to be pretty decent programmers.

0