Computer scientists solve problems using technology. They write and program software, create applications for mobile devices, and develop websites. Their primary objectives are to validate and to develop mathematical models capable of computer interaction between people and other computers. They do this by running computer programs and improving computer processes and performance.
Beyond working within theoretical frameworks, computer scientists can also research and focus in areas such as data structure and algorithms, information and database theory, software engineering, numerical analysis, computational complexity theory, computer graphics, programming language theory, and computer vision.