Software engineering
Algorithm design: Using ideas from algorithm theory to creatively design solutions to real tasks
Computer programming:The practice of using a programming language to implement algorithms
Formal methods: Mathematical approaches for describing and reasoning about software designs.
Reverse engineering:The application of the scientific method to the understanding of arbitrary existing software
Software development. The principles and practice of designing, developing, and testing programs, as well as proper engineering practices.
System architecture
Computer architecture:The design, organization, optimization and verification of a computer system, mostly about CPUs and memory subsystems (and the bus connecting them).
Computer organization:The implementation of computer architectures, in terms of descriptions of their specific electrical circuitry
Operating systems: Systems for managing computer programs and providing the basis of a useable system.
Communications
Computer audio: Algorithms and data structures for the creation, manipulation, storage, and transmission of digital audio recordings. Also important in voice recognition applications.
Networking:Algorithms and protocols for communicating data across different shared or dedicated media, often including error correction.
Cryptography.Applies results from complexity, probability and number theory to invent and break codes.
Databases
Data mining:Data mining is the extraction of relevant data from all sources of data.
Relational databases: Study of algorithms for searching and processing information in documents and databases; closely related to information retrieval.
OLAP
Online Analytical Processing, or OLAP, is an approach to quickly provide answers to analytical queries that are multi-dimensional in nature. OLAP is part of the broader category business intelligence, which also encompasses relational reporting and data mining.
Artificial intelligence ( My Master's area )
Artificial intelligence: The implementation and study of systems that exhibit an autonomous intelligence or behaviour of their own.
Artificial life: The study of digital organisms to learn about biological systems and evolution.
Automated reasoning: Solving engines, such as used in Prolog, which produce steps to a result given a query on a fact and rule database.
Computer vision: Algorithms for identifying three dimensional objects from one or more two dimensional pictures. ( my Thesis for PHD)
Machine learning: Automated creation of a set of rules and axioms based on input.
Natural language processing/Computational linguistics: Automated understanding and generation of human language
Robotics: Algorithms for controlling the behavior of robots.
Visual rendering (or Computer graphics)
Computer graphics: Algorithms both for generating visual images synthetically, and for integrating or altering visual and spatial information sampled from the real world.
Image processing: Determining information from an image through computation.
Human-Computer Interaction
Human computer interaction:The study of making computers and computations useful, usable and universally accessible to people, including the study and design of computer interfaces through which people use computers.
Scientific computing
Bioinformatics: The use of computer science to maintain, analyse, and store biological data, and to assist in solving biological problems such as protein folding, function prediction and phylogeny.
Cognitive Science: Computational modelling of real minds
Computational chemistry: Computational modelling of theoretical chemistry in order to determine chemical structures and properties
Computational neuroscience:Computational modelling of real brains
Computational physics:Numerical simulations of large non-analytic systems
Numerical algorithms: Algorithms for the numerical solution of mathematical problems such as root-finding, integration, the solution of ordinary differential equations and the approximation/evaluation of special functions.
Symbolic mathematics:Manipulation and solution of expressions in symbolic form, also known as Computer algebra.
Didactics of computer science/informatics
The subfield didactics of computer science focuses on cognitive approaches of developing competencies of computer science and specific strategies for analysis, design, implementation and evaluation of excellent lessons in computer science.
I hope this helps as a general introduction.