Computer engineering
Occupation | |
---|---|
Names | Computer engineer |
Occupation type | Engineering |
Activity sectors | Information technology, technology industry, engineering industry |
Specialty | Hardware engineering, software engineering, software programming, robotics, networking |
Description | |
Competencies | Technical knowledge, hardware design, software design |
Fields of employment | Science, technology, engineering, industry, computer, exploration |
Computer engineering (CoE or CpE) is a branch of computer science and electronic engineering that integrates several fields of computer science and electronic engineering required to develop computer hardware and software.[1] Computer engineering is referred to as computer science and engineering or Electrical and Computer engineering at some universities
Computer engineers require training in electronic engineering, computer science, hardware-software integration, software design, and software engineering. It uses the techniques and principles of electrical engineering and computer science, and can encompass areas such as artificial intelligence (AI), robotics, computer networks, computer architecture and operating systems. Computer engineers are involved in many hardware and software aspects of computing, from the design of individual microcontrollers, microprocessors, personal computers, and supercomputers, to circuit design. This field of engineering not only focuses on how computer systems themselves work, but also on how to integrate them into the larger picture.[2] Robotics are one of the applications of computer engineering.
Computer engineering usually deals with areas including writing software and firmware for embedded microcontrollers, designing VLSI chips, analog sensors, mixed signal circuit boards, and operating systems. Computer engineers are also suited for robotics research, which relies heavily on using digital systems to control and monitor electrical systems like motors, communications, and sensors.
In many institutions of higher learning, computer engineering students are allowed to choose areas of in-depth study in their junior and senior years because the full breadth of knowledge used in the design and application of computers is beyond the scope of an undergraduate degree. Other institutions may require engineering students to complete one or two years of general engineering before declaring computer engineering as their primary focus.[3][4][5][6]
![](http://upload.wikimedia.org/wikipedia/commons/thumb/8/8f/Dell_Dimension_C521_Motherboard.jpg/220px-Dell_Dimension_C521_Motherboard.jpg)
History
[edit]![](http://upload.wikimedia.org/wikipedia/commons/thumb/8/8b/Babbage_Difference_Engine.jpg/220px-Babbage_Difference_Engine.jpg)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/d/d3/Glen_Beck_and_Betty_Snyder_program_the_ENIAC_in_building_328_at_the_Ballistic_Research_Laboratory.jpg/220px-Glen_Beck_and_Betty_Snyder_program_the_ENIAC_in_building_328_at_the_Ballistic_Research_Laboratory.jpg)
Computer engineering began in 1939 when John Vincent Atanasoff and Clifford Berry began developing the world's first electronic digital computer through physics, mathematics, and electrical engineering. John Vincent Atanasoff was once a physics and mathematics teacher for Iowa State University and Clifford Berry a former graduate under electrical engineering and physics. Together, they created the Atanasoff-Berry computer, also known as the ABC which took five years to complete.[7] While the original ABC was dismantled and discarded in the 1940s, a tribute was made to the late inventors; a replica of the ABC was made in 1997, where it took a team of researchers and engineers four years and $350,000 to build.[8]
The modern personal computer emerged in the 1970s, after several breakthroughs in semiconductor technology. These include the first working transistor by William Shockley, John Bardeen and Walter Brattain at Bell Labs in 1947,[9] planar process by Jean Hoerni,[10][11] the monolithic integrated circuit chip by Robert Noyce at Fairchild Semiconductor in 1959,[12] the metal–oxide–semiconductor field-effect transistor (MOSFET, or MOS transistor) by Mohamed Atalla and Dawon Kahng at Bell Labs in 1959,[13][14][15] and the single-chip microprocessor (Intel 4004) by Federico Faggin, Marcian Hoff, Masatoshi Shima and Stanley Mazor at Intel in 1971.[16]
History of computer engineering education
[edit]The first computer engineering degree program in the United States was established in 1971 at Case Western Reserve University in Cleveland, Ohio.[17] As of 2015[update], there were 250 ABET-accredited computer engineering programs in the U.S.[18] In Europe, accreditation of computer engineering schools is done by a variety of agencies as part of the EQANIE network. Due to increasing job requirements for engineers who can concurrently design hardware, software, firmware, and manage all forms of computer systems used in industry, some tertiary institutions around the world offer a bachelor's degree generally called computer engineering. Both computer engineering and electronic engineering programs include analog and digital circuit design in their curriculum. As with most engineering disciplines, having a sound knowledge of mathematics and science is necessary for computer engineers.
Education
[edit]Computer engineering is referred to as computer science and engineering at some universities. Most entry-level computer engineering jobs require at least a bachelor's degree in computer engineering, electrical engineering or computer science. Typically one must learn an array of mathematics such as calculus, linear algebra and differential equations, along with computer science.[19] Degrees in electronic or electric engineering also suffice due to the similarity of the two fields. Because hardware engineers commonly work with computer software systems, a strong background in computer programming is necessary. According to BLS, "a computer engineering major is similar to electrical engineering but with some computer science courses added to the curriculum".[20] Some large firms or specialized jobs require a master's degree.
It is also important for computer engineers to keep up with rapid advances in technology. Therefore, many continue learning throughout their careers. This can be helpful, especially when it comes to learning new skills or improving existing ones. For example, as the relative cost of fixing a bug increases the further along it is in the software development cycle, there can be greater cost savings attributed to developing and testing for quality code as soon as possible in the process, particularly before release.[21]
Professions
[edit]A person with a profession in computer engineering is called a computer engineer.
Title | Prefix | Suffix | Requirements |
---|---|---|---|
Computer engineer | Engr. | CpE | Passed a degree in computer engineering
Institution: Educational Institution (such as colleges, universities) |
Certified computer engineer | Engr. | CCpE | Passed a certification exam in computer engineering
Institution: Private institution (such as computer engineering organizations and private companies) |
Registered computer engineer | Engr. | RCpE | Passed a licensure exam in computer engineering
Institution: Public Institution (such as Country's Regulatory Board) |
Professional computer engineer | Engr. | PCpE | Passed a professional exam in computer engineering, or work experience
Institution: Public or Private Institution |
*may vary on region and country. |
Applications and practice
[edit]![]() | The examples and perspective in this section deal primarily with the United States and do not represent a worldwide view of the subject. (July 2018) |
There are two major focuses in computer engineering: hardware and software.
Computer hardware engineering
[edit]According to the BLS, Job Outlook employment for computer hardware engineers, the expected ten-year growth from 2019 to 2029 for computer hardware engineering was an estimated 2% and a total of 71,100 jobs. ("Slower than average" in their own words when compared to other occupations)".[22] This is a decrease from the 2014 to 2024 BLS computer hardware engineering estimate of 3% and a total of 77,700 jobs. "[22] and is down from 7% for the 2012 to 2022 BLS estimate[22] and is further down from 9% in the BLS 2010 to 2020 estimate.[22]" Today, computer hardware is somehow equal[clarification needed] to electronic and computer engineering (ECE) and has been divided into many subcategories; the most significant[citation needed] is embedded system design.[20]
Computer software engineering
[edit]According to the U.S. Bureau of Labor Statistics (BLS), "computer applications software engineers and computer systems software engineers are projected to be among the faster than average growing occupations" The expected ten-year growth as of 2014[update] for computer software engineering was an estimated seventeen percent and there was a total of 1,114,000 jobs that same year.[23] This is down from the 2012 to 2022 BLS estimate of 22% for software developers.[24][23] And, further down from the 30% 2010 to 2020 BLS estimate.[25] In addition, growing concerns over cybersecurity add up to put computer software engineering high above the average rate of increase for all fields. However, some of the work will be outsourced in foreign countries.[26] Due to this, job growth will not be as fast as during the last decade, as jobs that would have gone to computer software engineers in the United States would instead go to computer software engineers in countries such as India.[27] In addition, the BLS Job Outlook for Computer Programmers, 2014–24 has an −8% (a decline, in their words),[27] then a Job Outlook, 2019-29 of -9% (Decline),[28] then a 10% decline for 2021-2031[28] and now an 11% decline for 2022-2032[28] for those who program computers (i.e. embedded systems) who are not computer application developers.[29][30] Furthermore, women in software fields has been declining over the years even faster than other engineering fields.[31]
Computer engineering licensing and practice
[edit]Computer engineering is generally practiced within larger product development firms, and such practice may not be subject to licensing.[32][33] However, independent consultants who advertise computer engineering, just like any form of engineering, may be subject to state laws which restrict professional engineer practice to only those who have received the appropriate License.[34][35] The National Council of Examiners for Engineering and Surveying (NCEES) first offered a Principles and Practice of Engineering Examination for computer engineering[36] in 2003.
Specialty areas
[edit]There are many specialty areas in the field of computer engineering.
Processor design
[edit]Processor design process involves choosing an instruction set and a certain execution paradigm (e.g. VLIW or RISC) and results in a microarchitecture, which might be described in e.g. VHDL or Verilog. CPU design is divided into design of the following components: datapaths (such as ALUs and pipelines), control unit: logic which controls the datapaths, memory components such as register files, caches, clock circuitry such as clock drivers, PLLs, clock distribution networks, pad transceiver circuitry, logic gate cell library which is used to implement the logic.
Coding, cryptography, and information protection
[edit]![](http://upload.wikimedia.org/wikipedia/commons/thumb/6/6d/Source_code_in_C.png/220px-Source_code_in_C.png)
Computer engineers work in coding, applied cryptography, and information protection to develop new methods for protecting various information, such as digital images and music, fragmentation, copyright infringement and other forms of tampering by, for example, digital watermarking.[37]
Communications and wireless networks
[edit]Those focusing on communications and wireless networks, work advancements in telecommunications systems and networks (especially wireless networks), modulation and error-control coding, and information theory. High-speed network design, interference suppression and modulation, design, and analysis of fault-tolerant system, and storage and transmission schemes are all a part of this specialty.[37]
Compilers and operating systems
[edit]![](http://upload.wikimedia.org/wikipedia/commons/thumb/7/7f/Windows10abstract.png/220px-Windows10abstract.png)
This specialty focuses on compilers and operating systems design and development. Engineers in this field develop new operating system architecture, program analysis techniques, and new techniques to assure quality. Examples of work in this field include post-link-time code transformation algorithm development and new operating system development.[37]
Computational science and engineering
[edit]Computational science and engineering is a relatively new discipline. According to the Sloan Career Cornerstone Center, individuals working in this area, "computational methods are applied to formulate and solve complex mathematical problems in engineering and the physical and the social sciences. Examples include aircraft design, the plasma processing of nanometer features on semiconductor wafers, VLSI circuit design, radar detection systems, ion transport through biological channels, and much more".[37]
Computer networks, mobile computing, and distributed systems
[edit]In this specialty, engineers build integrated environments for computing, communications, and information access. Examples include shared-channel wireless networks, adaptive resource management in various systems, and improving the quality of service in mobile and ATM environments. Some other examples include work on wireless network systems and fast Ethernet cluster wired systems.[37]
Computer systems: architecture, parallel processing, and dependability
[edit]![](http://upload.wikimedia.org/wikipedia/commons/thumb/e/e7/Intel_80486DX2_bottom.jpg/220px-Intel_80486DX2_bottom.jpg)
Engineers working in computer systems work on research projects that allow for reliable, secure, and high-performance computer systems. Projects such as designing processors for multi-threading and parallel processing are included in this field. Other examples of work in this field include the development of new theories, algorithms, and other tools that add performance to computer systems.[37]
Computer architecture includes CPU design, cache hierarchy layout, memory organization, and load balancing.
Computer vision and robotics
[edit]In this specialty, computer engineers focus on developing visual sensing technology to sense an environment, representation of an environment, and manipulation of the environment. The gathered three-dimensional information is then implemented to perform a variety of tasks. These include improved human modeling, image communication, and human-computer interfaces, as well as devices such as special-purpose cameras with versatile vision sensors.[37]
Embedded systems
[edit]![](http://upload.wikimedia.org/wikipedia/commons/thumb/4/4c/Oxygen_devices.svg/220px-Oxygen_devices.svg.png)
Individuals working in this area design technology for enhancing the speed, reliability, and performance of systems. Embedded systems are found in many devices from a small FM radio to the space shuttle. According to the Sloan Cornerstone Career Center, ongoing developments in embedded systems include "automated vehicles and equipment to conduct search and rescue, automated transportation systems, and human-robot coordination to repair equipment in space."[37] As of 2018[update], computer embedded systems specializations include system-on-chip design, the architecture of edge computing and the Internet of things.
Integrated circuits, VLSI design, testing and CAD
[edit]This specialty of computer engineering requires adequate knowledge of electronics and electrical systems. Engineers working in this area work on enhancing the speed, reliability, and energy efficiency of next-generation very-large-scale integrated (VLSI) circuits and microsystems. An example of this specialty is work done on reducing the power consumption of VLSI algorithms and architecture.[37]
Signal, image and speech processing
[edit]Computer engineers in this area develop improvements in human–computer interaction, including speech recognition and synthesis, medical and scientific imaging, or communications systems. Other work in this area includes computer vision development such as recognition of human facial features.[37]
Quantum computing
[edit]This area integrates the quantum behaviour of small particles such as superposition, interference and entanglement, with classical computers to solve complex problems and formulate algorithms much more efficiently. Individuals focus on fields like Quantum cryptography, physical simulations and quantum algorithms.
Benefits of Engineering in Society
[edit]An accessible avenue for obtaining information and opportunities in technology, especially for young students, is through digital platforms, enabling learning, exploration, and potential income generation at minimal cost and in regional languages, none of which would be possible without engineers.[38] Computer engineering is important in the changes involved in industry 4.0, with engineers responsible for designing and optimizing the technology that surrounds our lives, from big data to AI. Their work not only facilitates global connections and knowledge access, but also plays a pivotal role in shaping our future, as technology continues to evolve rapidly, leading to a growing demand for skilled computer engineers.[39] Engineering contributes to improving society by creating devices and structures impacting various aspects of our lives, from technology to infrastructure. Engineers also address challenges such as environmental protection and sustainable development, while developing medical treatments.[40] As of 2016, the median annual wage across all BLS engineering categories was over $91,000. Some were much higher, with engineers working for petroleum companies at the top (over $128,000). Other top jobs include: Computer Hardware Engineer – $115,080, Aerospace Engineer – $109,650, Nuclear Engineer – $102,220.[41]
See also
[edit]Related fields
[edit]Associations
[edit]References
[edit]- ^ IEEE Computer Society; ACM (December 12, 2004). Computer Engineering 2004: Curriculum Guidelines for Undergraduate Degree Programs in Computer Engineering (PDF). p. iii. Archived from the original (PDF) on June 12, 2019. Retrieved December 17, 2012.
Computer System engineering has traditionally been viewed as a combination of both electronic engineering (EE) and computer science (CS).
- ^ Trinity College Dublin. "What is Computer System Engineering". Retrieved April 21, 2006., "Computer engineers need not only to understand how computer systems themselves work but also how they integrate into the larger picture. Consider the car. A modern car contains many separate computer systems for controlling such things as the engine timing, the brakes, and the airbags. To be able to design and implement such a car, the computer engineer needs a broad theoretical understanding of all these various subsystems & how they interact.
- ^ "Changing Majors @ Clemson". Clemson University. Retrieved September 20, 2011.
- ^ "Declaring a College of Engineering Major". University of Arkansas. Archived from the original on October 12, 2014. Retrieved September 20, 2011.
- ^ "Degree Requirements". Carnegie Mellon University. Retrieved September 20, 2011.
- ^ "Programas de Materias" (in Spanish). Universidad Católica Argentina.
- ^ "John Vincent Atanasoff - the father of the computer". www.columbia.edu. Retrieved December 5, 2017.
- ^ "Iowa State replica of first electronic digital computer going to Computer History Museum - News Service - Iowa State University". www.news.iastate.edu. Retrieved December 5, 2017.
- ^ "1947: Invention of the Point-Contact Transistor". The Silicon Engine. Computer History Museum. Retrieved October 9, 2019.
- ^ Lojek, Bo (2007). History of Semiconductor Engineering. Springer Science & Business Media. pp. 120 & 321–323. ISBN 9783540342588.
- ^ Bassett, Ross Knox (2007). To the Digital Age: Research Labs, Start-up Companies, and the Rise of MOS Technology. Johns Hopkins University Press. p. 46. ISBN 9780801886393.
- ^ Saxena, Arjun N. (2009). Invention of Integrated Circuits: Untold Important Facts. World Scientific. p. 140. ISBN 9789812814456.
- ^ "1960 - Metal Oxide Semiconductor (MOS) Transistor Demonstrated". The Silicon Engine. Computer History Museum.
- ^ "Who Invented the Transistor?". Computer History Museum. December 4, 2013. Retrieved July 20, 2019.
- ^ "Triumph of the MOS Transistor". YouTube. Computer History Museum. August 6, 2010. Archived from the original on December 11, 2021. Retrieved July 21, 2019.
- ^ "1971: Microprocessor Integrates CPU Function onto a Single Chip". Computer History Museum. Retrieved July 22, 2019.
- ^ "History". engineering.case.edu. Case School of Engineering. January 5, 2017.
- ^ "Find an ABET-Accredited Program | ABET". main.abet.org. Retrieved November 29, 2015.
- ^ "Erik Jonsson School of Engineering and Computer Science". The University of Texas at Dallas. January 8, 2024.
- ^ a b "Computer Hardware Engineers". Bureau of Labor Statistics. January 8, 2014. Retrieved July 20, 2012.
- ^ "Feabhas_Infographic_FINAL" (PDF). feabhas.
- ^ a b c d "Computer Hardware Engineers: Occupational Outlook Handbook". U.S. Bureau of Labor Statistics.
- ^ a b "Software Developers: Occupational Outlook Handbook". U.S. Bureau of Labor Statistics.
- ^ "Computer Software Engineer". Bureau of Labor Statistics. March 19, 2010. Archived from the original on July 26, 2013. Retrieved July 20, 2012.
- ^ "Software Developers". Bureau of Labor Statistics. January 8, 2014. Retrieved July 21, 2012.
- ^ "Tech Companies Want You to Believe America Has a Skills Gap". Bloomberg. August 4, 2020.
- ^ a b "Computer Programmers: Occupational Outlook Handbook". U.S. Bureau of Labor Statistics.
- ^ a b c "Computer Programmers : Occupational Outlook Handbook: : U.S. Bureau of Labor Statistics". www.bls.gov.
- ^ "Archive By Publication : Beyond the Numbers: U.S. Bureau of Labor Statistics". www.bls.gov.
- ^ "The Soon-to-Be-Extinct Embedded Software Engineer". designnews.com. May 10, 2018.
- ^ "hp's Developer Portal | HP International Women's Week: Women in Computer Science dropping since 1980s". developers.hp.com.
- ^ "General Statute Sections - North Carolina General Assembly". www.ncleg.gov.
- ^ "G.S. 89C-3". www.ncleg.gov.
- ^ "§ 89C-23". www.ncleg.gov.
- ^ "Professional Licensure for Computer Engineers and Software Engineers". IEEE-USA InSight. April 14, 2015. Retrieved January 6, 2020.
- ^ "PE Electrical and Computer exam, [NCEES]". Archived from the original on September 18, 2020. Retrieved December 13, 2019.
- ^ a b c d e f g h i j "Computer Engineering Overview" (PDF). Sloan Career Cornerstone Center. Archived from the original (PDF) on September 16, 2012. Retrieved July 20, 2012.
- ^ . S2CID 216185589.
{{cite web}}
: Missing or empty|title=
(help); Missing or empty|url=
(help) - ^ Yu, Wenjin; Dillon, Tharam; Mostafa, Fahed; Rahayu, Wenny; Liu, Yuehua (2020). "A Global Manufacturing Big Data Ecosystem for Fault Detection in Predictive Maintenance". IEEE Transactions on Industrial Informatics. 16: 183–192. doi:10.1109/TII.2019.2915846. S2CID 164670300. Retrieved October 26, 2023.
- ^ "What are the Benefits of Studying Engineering?". www.linkedin.com. Retrieved October 26, 2023.
- ^ "8 Reasons to Get an Engineering Degree that Might Surprise You". Eastern Nazarene College. Retrieved October 26, 2023.
External links
[edit]Media related to Computer engineering at Wikimedia Commons