and mathematical analysis to the design, development, testing, and evaluation of the software and systems that make computers work.... A typical software engineer researches, designs, develops and tests operating systems-level software, compilers, and network...