While job duties can mix for some positions, computer engineers usually specialize in either developing physical hardware, such as modems, or designing software applications, such as games and operating systems. These computer engineering careers both require a computer science background along with the analytical mindset required to visualize and solve complex problems. A monthly computer engineering salary is usually generous due to the skill set required, although wages vary based on specialty, experience and industry. In general, software engineers tend to make higher wages when starting out, but both can lead to a six-figure yearly salary with experience.
Computer engineering technology jobs can involve creating computer hardware, developing systems or applications software or a combination of both. Computer hardware engineers spend their time coming up with ideas for new hardware and hardware upgrades and then testing these computer components once developed. Their work requires coordinating with the company's research and development team and assisting with the manufacturing process.
In contrast, software engineers design software based on the specifications a company or client provides them. Whether that software is an application or an entire operating system, software engineers use models and flowcharts to break the program down into smaller pieces. They assist programmers with development and run tests to check for bugs.
Computer engineers usually need a bachelor's degree in computer science or another field relevant to hardware or software engineering. Some degree programs prepare graduates for both hardware and software engineering roles and provide more flexibility with career options. Computer degree programs tend to emphasize programming, math, electrical engineering, networking and systems design. They also often include internships to give students some of the work experience that companies hiring computer engineers like to see. Since some companies prefer a graduate education, aspiring engineers may benefit from continuing their education with a computer-related master's degree.
Computer systems design firms, engineering services firms and manufacturers are common employers of both hardware and software engineers. Hardware engineers also work for research and development firms and the government, while other employers of software engineers include software companies and financial services firms. Both types of computer engineers usually work on teams with other computer professionals and have full-time hours with occasional overtime. Software engineers may enjoy more flexibility since they may have the option to telecommute rather than work onsite in a laboratory setting.
Years of Experience and Salary
Based on the May 2017 computer engineering salary data from the Bureau of Labor Statistics, median monthly incomes are around $9,593 for hardware engineers, $8,967 for systems software engineers and $8,483 for applications software engineers. This means that monthly earnings are more for half and less for half. The lowest-paid 10 percent of hardware engineers make below $5,524 a month, and the top earners make over $14,740 a month. Monthly earnings for the bottom 10 percent of systems and applications software engineers are less than $5,473 and $4,989, respectively. The top earners exceed $13,679 and $13,340 a month, respectively.
While hardware engineers do tend to make more than software engineers overall, PayScale's October 2018 data shows that a software engineering salary is actually higher when starting out. The following progression shows the monthly average pay for a computer engineer, based on experience:
- 0 to 5 years: $5,417 (hardware), $6,417 (software)
- 5 to 10 years: $7,083 (hardware), $7,583 (software)
- 10 to 20 years: $9,417 (hardware), $8,500 (software)
- 20 or more years: $8,917 (hardware), $9,167 (software)
Job Growth Trend
Between 2016 and 2026, the Bureau of Labor Statistics expects software engineers to have stronger job growth and better prospects than computer hardware engineers. While hardware engineers can expect a modest growth at 5 percent, software engineers can expect 24 percent job growth. This difference is due to an increased focus on software rather than hardware development, so hardware developers with software expertise may fare better. Software engineers have the best prospects if they focus on making applications software rather than systems software and know multiple programming languages.
- Bureau of Labor Statistics: 17-2061 Computer Hardware Engineers
- Bureau of Labor Statistics: Software Developers
- Bureau of Labor Statistics: 15-1133 Software Developers, Systems Software
- Bureau of Labor Statistics: 15-1132 Software Developers, Applications
- PayScale: Computer Hardware Engineer Salary
- PayScale: Software Engineer Salary
- Virginia Tech: About Computer Engineering
- School of Engineering at Brown University: Computer Engineering
- Bureau of Labor Statistics: Computer Hardware Engineers
- Wavebreakmedia Ltd/Wavebreak Media/Getty Images