This book is intended to present group representation theory at a level accessible to mature undergraduate students and beginning graduate students. This is achieved by mainly keeping the required background to the level of undergraduate linear algebra, group theory and very basic ring theory. Module theory and Wedderburn theory, as well as tensor products, are deliberately avoided. Instead, we take an approach based on discrete Fourier Analysis. Applications to the spectral theory of graphs are given to help the student appreciate the usefulness of the subject. A number of exercises are included. This book is intended for a 3rd/4th undergraduate course or an introductory graduate course on group representation theory. However, it can also be used as a reference for workers in all areas of mathematics and statistics.