Engenheiros de software projetar, desenvolver, testar e manter aplicativos de software. Eles trabalham com clientes e outras partes interessadas para reunir requisitos, projetar soluções e implementar e testar software. Os engenheiros de software usam uma variedade de linguagens de programação, ferramentas e técnicas para criar software que atenda às necessidades dos usuários.  
 Existem muitos tipos diferentes de engenheiros de software, incluindo: 
 * 
Engenheiros de software de aplicação desenvolver software que seja usado pelos usuários finais, como processadores de texto, planilhas e jogos. 
 * 
Engenheiros de software de sistemas desenvolver software usado para operar e manter sistemas de computador, como sistemas operacionais, bancos de dados e software de rede. 
 * 
Engenheiros de software da Web desenvolver software usado para criar e manter sites, como sistemas de gerenciamento de conteúdo, plataformas de comércio eletrônico e aplicativos de mídia social. 
 * 
Engenheiros de software incorporado desenvolver software que seja usado em outros dispositivos além de computadores, como smartphones, eletrodomésticos e dispositivos médicos.  
 Os engenheiros de software normalmente possuem diploma de bacharel em ciência da computação ou áreas afins. Eles também podem ter experiência com linguagens de programação, ferramentas e técnicas relevantes para suas funções específicas.  
 A engenharia de software é um campo em rápido crescimento e há uma grande demanda por engenheiros de software qualificados. Os engenheiros de software podem ganhar salários competitivos e desfrutar de uma variedade de oportunidades de carreira.