miniaturadaimagem|Um processador utilizado em computadores pessoais, o resultado dos esforços da Engenharia de Computação.

A Engenharia de Computação é um ramo da engenharia que integra conhecimentos das áreas da Ciência da Computação e da Engenharia Elétrica necessários para desenvolver hardware e software. Os engenheiros de computação podem atuar no design de softwares ou integração de hardware e software, podendo desenvolver projetos de microcontroladores individuais, microprocessadores, computadores pessoais e supercomputadores até o projeto de circuitos. Este campo de engenharia não se concentra apenas em como os próprios sistemas de computadores funcionam, mas também em como eles se integram no quadro geral., "Os engenheiros de computação não precisam apenas entender como os próprios sistemas de computador funcionam, mas também como eles se integram a um cenário mais amplo. Considere o carro. Um carro moderno contém muitos sistemas de computador separados para controlar coisas como o tempo do motor, os freios e os air bags. Para ser capaz de projetar e implementar um carro desse tipo, o engenheiro de computação precisa de uma ampla compreensão teórica de todos esses vários subsistemas e como eles interagem.

Tarefas usuais envolvendo engenheiros de computação incluem desenvolver software para microcontroladores embutidos, projetar chips VLSI, projetar sensores analógicos, projetar placas de circuito de sinal misto e projetar sistemas operacionais. Os engenheiros de computação também são adequados para a pesquisa em robótica, que depende muito do uso de sistemas digitais para controlar e monitorar sistemas elétricos, comunicadores e sensores."IEEE Computer Hardware Engineers". Bureau of Labor Statistics. January 8, 2014. Retrieved July 20, 2012.

Em muitas instituições, os estudantes de Engenharia de Computação podem escolher áreas de estudo aprofundado em seu primeiro e último ano, porque a amplitude total do conhecimento usado no projeto e na aplicação de computadores está além do escopo de um curso de graduação. Outras instituições podem exigir que os estudantes de Engenharia concluam um ou dois anos de Engenharia Geral antes de declarar a Engenharia de Computação como seu foco principal.

História A Engenharia de Computação começou em 1939, quando John Vincent Atanasoff e Clifford Berry começaram a desenvolver o primeiro computador digital eletrônico do mundo através da Física, Matemática e Engenharia Elétrica. John Vincent Atanasoff já foi professor de Física e Matemática na Universidade Estadual de Iowa e Clifford Berry, era graduado em Engenharia Elétrica e Física. Juntos, eles criaram o computador Atanasoff-Berry, também conhecido como ABC, que levou 5 anos para ser concluído. Em 1940, o cientista britânico Alan Turing contribuiu para a quebra de códigos nazistas durante a Segunda Guerra Mundial, construindo um equipamento que serviria para decifrar as mensagens criptografadas da máquina alemã Enigma, sendo considerado um dos primeiros computadores modernos.COPELAND, B. Jack (Editor) (2004). The Essential Turing. The Ideas that Gave Birth to the Computer Age. Oxford: Clarendon Press, Oxford. 613 páginas

O primeiro programa de graduação em Engenharia de Computação nos Estados Unidos foi estabelecido em 1972 na Case Western Reserve University em Cleveland, Ohio. Em 2015, havia 250 programas de Engenharia de Computação certificados pela ABET nos EUA.WAZLAWICK, R. S. História da Computação. São Paulo: LTC, 2017.

Brasil No caso do Brasil, a maioria dos cursos de Engenharia de Computação surgiu como uma especialização do curso de Engenharia Elétrica, unindo com disciplinas provenientes do curso de Ciência da Computação. Enquanto em Ciência da Computação há um foco maior em desenvolvimento de software, teoria de algoritmos, e bancos de dados, a Engenharia de Computação foca mais em hardware, e tecnologia das ferramentas base da computação, processos de microeletrônica, eletrônica digital e sistemas embarcados.JUNIOR, A.H. Eletrônica Básica para Computação. São Paulo: LTC, 2009. Como a graduação em Ciência da Computação começou a surgir no país no final da década de 1960 - o primeiro curso de Bacharelado em Ciência da Computação foi criado na Universidade Estadual de Campinas (Unicamp) em 1968 - ocorreu que, em várias universidades que já ofereciam aquele curso, a instauração do curso de Engenharia de Computação seguiu o padrão do MIT. Um exemplo disso é a própria Unicamp, que instaurou duas modalidades de curso: um com ênfase em desenvolvimento de software, ministrado pelo Instituto de Computação, e outro com ênfase em hardware e processos, ministrado pela Faculdade de Engenharia Elétrica e de Computação. Mais tarde, ela voltou a oferecer o curso de Bacharelado em Ciência da Computação - apenas no período noturno.

O primeiro curso no Brasil a oferecer graduação na área foi o de Engenharia de Sistemas e Computação da Faculdade de Engenharia da UERJ.Engenharia de Sistemas e Computação da Faculdade de Engenharia da UERJ Criado pela portaria 466,Resolução 466/76 do Conselho Superior de Ensino e Pesquisa da UERJ de dezembro de 1976, do Conselho Superior de Ensino e Pesquisa da UERJ, o curso começa a funcionar efetivamente em 1977, como uma ênfase do curso de Engenharia Elétrica. Criado em uma época onde o ambiente da área de ensino de Computação era inteiramente dominado por entidades particulares, este curso foi um dos pioneiros, visto que praticamente inexistiam cursos de graduação voltados para Sistemas e Computação e as oportunidades existentes eram poucas e dispendiosas. O Curso de Engenharia de Sistemas e Computação surgiu então com o objetivo de suprir as necessidades de um mercado de trabalho carente de profissionais com formação superior na área específica de computação. O currículo do curso foi revisado em 1986, em 1994 e atualmente passa por uma revisão com o objetivo de torná-lo um curso independente da engenharia elétrica, passando a se chamar simplesmente graduação em Engenharia de Computação.

Outros exemplos recentes que seguiram o modelo do MIT é o da Universidade Federal de Pernambuco - que criou a graduação em Engenharia de Computação numa parceria entre o Centro de Informática e o Departamento de Eletrônica e Sistemas - mantendo também o curso original de Bacharelado em Ciência da Computação, a Universidade Federal de Ouro Preto (UFOP), que sedia o curso em um campus em João Monlevade, com turmas não formadas ainda e a Universidade Federal de Itajubá (UNIFEI) - que seguindo a mesma tendência do MIT, uniu os institutos de elétrica e ciências da computação para dar origem ao bacharelado em Engenharia de Computação. Um caso diferente foi o da Universidade Federal de São Carlos, que possuía duas modalidades do curso de Ciência da Computação: um com ênfase em software e outro com ênfase em hardware. Neste caso, foi mantido o curso original de Bacharelado com ênfase em software, e o curso com ênfase em hardware foi transformado no curso de Engenharia de Computação. Atualmente (2006), uma nova grade curricular foi proposta e hoje o curso consta como uma Engenharia de Computação com conteúdos mais atualizados frente ao mercado.

No caso da Universidade de São Paulo (USP), o curso de Engenharia de Computação foi criado dentro da Escola Politécnica, que já oferecia um curso de Engenharia Eletrônica com ênfase em sistemas, e o curso original de bacharelado em Ciência da Computação continuou sendo oferecido pelo Instituto de Matemática e Estatística, não havendo qualquer relação entre os dois cursos. A primeira turma de engenheiros de computação da Poli-USP iniciou-se em 1989 na cidade de Cubatão, no modelo cooperativo, intercalando ciclos de estágio com ciclos acadêmicos, similar ao existente na Universidade de Waterloo. Na USP de São Carlos, o curso de Engenharia de Computação foi criado através da parceria entre a Escola de Engenharia de São Carlos e o Instituto de Ciências Matemáticas e de Computação da Universidade de São Paulo.

Na Universidade Federal do Rio Grande (FURG), sita em Rio Grande, Rio Grande do Sul, o Curso de Engenharia de Computação foi criado em 1993 e teve seu primeiro ingresso em 1994, e a primeira turma formada em 1998. Em 2008 integrou-se ao então recém fundado Centro de Ciências Computacionais. Neste caso, o curso, apesar de embasar-se nas posturas gerais do ensino e da formação em Engenharia, não é uma especialidade da Engenharia Elétrica, mas prima por uma abordagem da Ciência da Computação mais direcionada para a solução computacional de problemas técnicos e tecnológicos, visando a atuação autônoma do engenheiro de computação ou em conjunto com profissionais de outras áreas da Engenharia e demais carreiras tecnológicas ou científicas. Atualmente, após extensa reforma estrutural, além de contar com toda a formação básica tradicional dos cursos de Engenharia (Cálculo, Física, Desenho, Administração etc.), o currículo opera sob o conceito de sistema, com eixos que vão do embasamento matemático e da própria Ciência da Computação (Matemática Discreta, Estruturas de Dados, Bancos de Dados, Linguagens de Programação, Análise de Algoritmos, Engenharia de Software, Teoria da Computação etc.), às especificidades das tecnologias em Computação, como os sistemas de informação e programação, gráficos, inteligentes, de manufatura, microprocessados e distribuídos. A grade curricular do Curso pode ser consultada na página online da Universidade. Uma aproximação que o Curso tinha com os aspectos de análise de sistemas foi bastante diminuída a partir da instituição dos Cursos de sistema de informação na mesma Universidade, em 2009. Atualmente a FURG conta, inclusive, com Mestrado em Engenharia de Computação, que por sua gênesis não atrelada a Engenharia Elétrica, é um dos únicos do Brasil associado ao Comitê de Área da Computação na CAPES.

O curso de Engenharia de Computação da Universidade Federal do Vale do São Francisco (UNIVASF) foi autorizado pela decisão de 2005 do Conselho Universitário da UNIVASF. Em 2005 foi realizado o primeiro concurso para a contratação dos primeiros dois docentes do curso, que iniciaram as suas atividades em 2006. Em 2006 ocorreu também o primeiro vestibular para a área de Engenharia de Computação. Em 2008 o corpo docente foi ampliado para 9 membros, e depois para 14 em 2009. Em 2010 o corpo ficou completo, com a contratação do décimo quinto membro. O curso de Engenharia de Computação tem um papel importante na região do Vale do São Francisco. Apesar dos desenvolvimentos e investimentos recentes, a região ainda está longe de atingir o limite de seu potencial econômico. Existe clara possibilidade de aumento de produção, redução de custos, diversificação de produção/serviços e inserção em novos mercados. Na Universidade Federal do Rio de Janeiro (UFRJ), o curso de Engenharia de Computação e Informação foi criado na Escola Politécnica em 2003, que já contava com o curso de Engenharia Eletrônica e de Computação (Engenharia Eletrônica com ênfase em computação), mantendo a base de eletrônica e enfatizando as partes de software e sistemas de informação.

Atualmente, uma nova metodologia de ensino vem sido aplicada a cursos de Engenharia de Computação no Brasil: a Aprendizagem baseada em problemas ou Problem Based Learning (PBL). Essa metodologia, que tem como principal objetivo explorar o autodidatismo do aluno, bem como sua capacidade de trabalho em grupo, já vem sendo aplicada em cursos novos de EC no Brasil, como na Universidade Estadual de Feira de Santana (UEFS), que foi a pioneira no Brasil, e na Universidade Federal da Bahia (UFBA).

Especializações Existem muitas especializações no campo da Engenharia de Computação. Codificação, criptografia e proteção de informação Artigo principal: Segurança da Informação