The Field
The rapid and widespread use of computers and information technology has generated a need for highly trained workers proficient in various job functions. These computer specialists include computer scientists, database administrators, and network systems and data communication analysts. Job tasks and occupational titles used to describe these workers evolve rapidly and continually, reflecting new areas of specialization or changes in technology, as well as the preferences and practices of employers. Computer scientists work as theorists, researchers, or inventors. Their jobs are distinguished by the higher level of theoretical expertise and innovation they apply to complex problems and the creation or application of new technology. The areas of computer science research range
from complex theory to hardware design to programming-language design. Some researchers work on multidisciplinary projects, such as developing and advancing uses of virtual reality, extending human-computer interaction, or designing robots. They may work on design teams with electrical engineers and other specialists. Computer science researchers employed by academic institutions have job functions that are similar in many ways to those employed by other organizations. In general, researchers in academic settings have more flexibility to focus on pure theory, while those working in other
organizations usually focus on projects that have the possibility of producing patents and profits. However, some researchers in non-academic settings have considerable latitude in determining the direction of their research. With the Internet and electronic business generating large volumes of data, there is a growing need to be able to store, manage, and extract data effectively. Database administrators work with database management systems software and determine ways to organize and store data. They identify user needs and set up new computer databases. In many cases, database administrators must integrate data from outdated systems into a new system. They also test and coordinate modifications to the system when needed, and troubleshoot problems when they occur.An
organization’s database administrator ensures the performance of the system, understands the platform on which the database runs, and adds new users to the system. Because many
databases are connected to the Internet, database administrators also must plan and
coordinate security measures with network administrators. With the growing volume of
sensitive data and the increasing interconnectedness of computer networks, data integrity,
backup systems, and database security have become increasingly important aspects of the job of database administrators. Network systems and data communications analysts, also
referred to as network architects, design, test, and evaluate systems such as local area networks (LANs), wide area networks (WANs), the Internet, intranets, and other data
communications systems. Systems are configured in many ways and can range from a connection between two offices in the same building to globally distributed networks, voice mail, and e-mail systems of a multinational organization. Network
systems and data communications analysts perform network modeling, analysis, and planning, often requiring both hardware and software solutions. For example, a network may involve the installation of several pieces of hardware, such as routers and hubs, wireless adapters, and cables, while also requiring the installation and configuration of software, such as network drivers. Analysts also may research related products and make necessary hardware and software.
Preparation
Computer scientists should be creative, inquisitive, analytical, and detail oriented. They must
have a strong grasp of mathematics, including calculus, probability, and statistics, and
computer systems. Preparation in one or more of the sciences, such as, physics, chemistry,
biology, is also a requirement. Abilities to work as part of a team and to communicate well also
will be important as computer science jobs frequently require interaction with specialists
outside of computer science or engineering. To hone these skills, recommended coursework
includes English, writing, social studies, and humanities.
Entry level positions in the field typically require a four year bachelor-of-science degree in
computer science, information science, or computer engineering. State-of-the-art high
technology research and development positions frequently require the M.S. or Ph.D. degree in
either computer science or computer engineering. Tenure track professorial positions in a
university require the Ph.D. degree.
Computer Science vs. Computer Engineering vs. Information Science
Most four year degree programs in computer science and computer engineering are accredited
by the Accreditation Board for Engineering and Technology (ABET). Typically these degree
programs reside in the university’s College of Engineering. The computer engineering degree
program resides in the Department of Computer Science and Engineering, or the Department
of Electrical and Computer Engineering, or it may be a stand alone Department of Computer
Engineering. In some cases, such as, MIT and University of California at Berkeley, these
degrees are offered in the Department of Electrical Engineering and Computer Science.
Typically there is considerable overlap in the computer science and the computer engineering
degree programs. The major difference between the two accredited degree programs is that
an engineering design component is required in the accredited computer engineering degree
program.
Information science degree programs are tailored to prepare students for careers in the
application of computers in business. Therefore these degree programs typically reside in
business colleges and are not accredited by ABET. Although there are a few ABET accredited
programs offered in engineering colleges. In addition to computer science courses in
programming, computer organization and operation, computer networks, databases, these
degree programs require courses in business and management, and fewer courses are
required in mathematics and the sciences than in computer science and engineering degree
programs
Specialty Areas
Most computer scientists are further classified by areas of focus. The following is a list of
several major specialty areas within computer science:
- Algorithms and Theory
- Artificial Intelligence
- Architecture, Parallel Computing and Systems
- Bioinformatics and Computational Biology
- Database and Information Systems
- Graphics, Visualization and the Human Computer Interface
- Systems and Networking
- Programming Languages, Formal Systems, and Software Engineering
- Scientific Computing
Algorithms and Theory
Research in this area focuses on the design and analysis of algorithms and data structures for
problems arising in several areas of computer science, including automatic software
verification, computational geometry, data mining, and machine learning
Artificial Intelligence
This specialty area focuses on a broad range of topics that include knowledge representation,
learning, vision, reasoning, robotics, information systems, and planning. Application areas
include molecular biology, manufacturing, control theory, and scheduling.
Architecture, Parallel Computing and Systems
Those focusing on the specialty area of architecture develop hardware designs, programming
languages, and their compilers for next-generation computers and computing
components. The specialty area of parallel computing area focuses on projects of varying size
and investigates the software aspects of computation on computers composed of multiple
processors.
Bioinformatics and Computational Biology
Research in this area includes developing efficient and scalable algorithms for biomolecular
simulation and applying data mining, statistical machine learning, natural language processing,
and information retrieval to analyze and mine all kinds of biological data, including DNA
sequences, protein sequences and structures, microarray data, and biology literature, for the
purpose of facilitating biology discovery
Database and Information Systems
Individuals working in this area would conduct fundamental and cutting-edge research in
databases, data mining, web mining, information retrieval, and natural language processing.
Current areas of focus might include data integration, exploring and integrating the "Deep
Web;" schema matching; security; mining data streams and sequential and semi-structured
data; operating systems support for storage systems; text retrieval and mining; bio-informatics;
database support for high performance computing; and top-k query processing
Graphics, Visualization and the Human Computer Interface
Graphics and visualization research includes modeling and animation of natural phenomena,
computational topology, graphics hardware utilization, image based rendering, implicit
surfaces, mesh processing and simplification, procedural modeling and texturing, shape
modeling, surface parameterization, and visibility processing. Human-Computer Interface
research involves user interface tools that better support early design tasks, systems and
environments that help users maintain information awareness, tools for multimedia authoring
and design, interfaces that foster social interaction, and, more generally, human-computer
interaction.
Systems and Networking
Networking and distributed systems group research includes a broad range of topics that
include mobile systems, wireless protocols, ad-hoc networks, Quality of Service management,
multimedia networking, peer-to-peer networking, routing, network simulations, active queue
management, and sensor networks.
Operating system research focuses on distributed resource management, management of
ubiquitous computing environments, reflective middleware, middleware "meta-operating
systems," object-oriented operating system design, user interfaces that allow single users to
interact with multi-computers, peer-to-peer operating system services, and context-sensitive
distributed file systems, power management for data centers, file/storage systems, autonomic
computing, system support for software robustness, and system support for databases.
Security research includes dynamic security architectures; security for active networks;
privacy, authentication, authorization, access control, and trust in ubiquitous computing
environments that have mobile users; authentication in sensor networks; specification and "Computer Science Overview"
Prepared as part of the Sloan Career Cornerstone Center (www.careercornerstone.org)
Note: Some resources in this section are provided by the US Department of Labor, Bureau of Labor Statistics.
validation of security access control policies; simulation of network security problems and
solutions including denial of service; and next generation phone security. Real-time and
embedded systems research areas include open real-time systems QoS driven real-time
scheduling and communication protocols, integrated design of controllers and real-time
schedulers, the integration between real-time, fault tolerant and security protocols, and robust
dynamic real-time architecture for networked devices and smart spaces.
Programming Languages, Formal Systems, and Software Engineering
Those working in this specialty area study the design and implementation of computer
languages, with the goal of improving both programmer productivity and program quality. The
topics of study range from abstract theories of computer languages to practical questions
about the use and implementation of high-level languages.
Scientific Computing
Individuals working in the specialty area of scientific computing conduct research on the
development and analysis of numerical techniques for approximating mathematical models of
physical systems and on algorithms for solving the resulting equations on high performance
computer systems. Specific scientific and engineering applications considered include
biological molecular dynamics, materials science, semiconductor simulation, astrophysics, and
the design of solid propellant rockets.
0 comments:
Post a Comment