Software engineers are involved in the design and development of many types of software, including software for operating systems and network distribution, and software for compilers (which convert programs for execution on a computer).