Programming Principles and Software Design in Scala

Accelerating trends in the adoption of functional programming and specifically Scala are driving much of the innovation in today’s Big Data applications.
Learn via
3 days or 6 evenings
  • Overview
  • Prerequisites
  • Learning Outcomes
  • What's included
  • Course Outline

Accelerating trends in the adoption of functional programming and specifically Scala are driving much of the innovation in today’s Big Data applications. Scala interoperates seamlessly with both Java and Javascript, is the implementation language of many important frameworks, including Apache Spark, Kafka, and Akka and supplies core infrastructure for sites such as Twitter, Apple, the Guardian newspaper and Airbnb.

Ideally at least one year programming experience with proficiency with Java or C# and familiarity using the command line. Experience with other languages such as C/C++, Python, Javascript or Ruby is also sufficient.

Upon successful completion of this course, we expect the delegate to understand and apply design principles of Scala functional programming including libraries and APIs. Delegates will learn how to design and implement Scala programs that leverage functions and state with objects and classes and write functional programs using recursion, pattern matching, and higher-order functions.

•Interactive training classes in 3 days (daytime timetable) or 6 evenings (evening timetable)
•Hands-on practice after the classes with a work-based assignment in 14-21 days
•Access to support by our mentors during the course period
•Pairview Certification for achieving this competency

Learning Goal: This module will enable participants to get up and running with Scala on either Windows or Ubuntu and explain some of the fundamentals of the language as well as key differences between OOP, functional and imperative programming.
• Installation and Java Virtual Machine (JVM)
o Windows
o Ubuntu
…and more.

Learning Goal: In this module, we will go through Scala syntax and introduce participants to how variables are defined. We also cover iteration and looping in Scala and introduce monads and monad laws.
• Running Modes
• Syntax and variables
…and more.

Learning Goal: In this module you will learn about key Scala data structures and data types including lists and immutable data structures, collections and pattern matching.
• Lists
• Covariance and Invariants
• Immutable Data Structures
…and more.

Learning Goal: This module focusses on functions, both as 1st class values and higher order functions and covers key functional programming applications through the use of libraries and APIs. We will also cover state and parallel programming.
• Scala Functions
• Higher Order Functions
• Partially Applied Functions
…and more.

Learning Goal: In this module, you will learn about the importance of data abstraction, hierarchies and polymorphism in programming through the application of methods, classes and objects.
• Classes and Case Classes
• Objects: Singletons & Companions
• Hierarchies
…and more.

Learning Goal: You will learn how to implement Exception Handling to make a Scala more robust and manageable.
• Types of Exception Handlers
• Option/Some/None
…and more.

Learning Goal: This module will teach you how to implement concurrency and the concept of Futures and Promises needed for assign behavior and context to object not yet created at runtime but expected to be instantiated at some point during the program execution.
• Defining the Execution Context
• Implementing Futures
…and more.

Learning Goal: This module will walk you through practical examples on how to implement testing in Scala using several libraries and tools, followed by an introduction focused on methodologies, approaches and best practices.
• Agile Software Development Lifecycle
• CI/CD Pipeline & Continuous Testing
• Types of Software Testing
…and more.

Learning Goal: Our last module bridges the Data Engineering – Data Science gap and trains participants on real-world, big data applications of Scala with a case study for either streaming data or analytical data models.
• Big Data Analysis
• MapReduce and Hadoop
…and more.

What You Will Benefit From

Our expert knowledge and job-focused approach sets us apart in our quest to offer excellent services to our delegates and deliver on their career development goals.

Get Real Employable Skills

Our job-focused courses and quality curriculum is designed and taught by industry experts and highly experienced professionals, not academics, so you learn the high-impact skills that top companies want.

Gain Best Real-World Practices

Apply your skills in real time through interactive trainer-led practices during the classes, and after-class assignments. As you do so, you are empowered with the problem-solving skills and job market insights needed to capture most new job opportunities in this field or take your career to the next level.

Achieve Professional Certification

Obtain Pairview Certification for completing this course, recognised by many employers in the industry.

Personalised Support and Career Consultancy

You will have access to tailored support by our dedicated mentors while you learn and practise. Our mentors guide your learning and are focused on answering your questions, motivating you and keeping you on track. They also give you valuable advice on professional and career development.

What They Think

Pairview is an excellent place to start your career if you dream of an Analytics profession. Firstly, you must believe you can make it. Secondly, utilize all the support provided. And thirdly, ensure you complete all the projects. Pairview trainers are very knowledgeable and patient when explaining things over. Thanks to Pairview’s continuous support, I got my current job.

Jonas Nachis

Great company with thorough professionals that will ensure the process you are taken through is seamless as they will work around the clock to cater to your needs. Highly recommend Pairview for those wishing to make a career change or enter the world of Analytics.


The training was very effective in providing me with the essential skill set and experience that I was able to carry into my job applications. The live project was one of the key topics during my job interviews. Having gone through the project experience and being able to explain it well, I could prove my capabilities and get the


The course delivery was very well-paced, and there were loads of practical examples which helped drive in the knowledge and provided a solid foundation. Really pleased with the service I received, and I will definitely recommend Pairview. I have many colleagues who also trained here and are doing very well in Data and MI analytics.

Ani Madu

Management Information Analyst

Great Training. Highly Recommended! The training I received helped build and equip me with the foundation I needed for a great career path in the field of Data Science.


Data Science Specialist

You’ll never get it wrong when you make the right choice of choosing Pairview programmes for individual and corporate training needs. They are fantastic and supportive, and they know the market, which makes them think ahead. I enjoyed their supportive training, real-time projects, and extra development and have remained a high-flyer.

David Mba

Analytics Specialist

After completing my Masters’s programme, I struggled to secure a job and I was frustrated. The training with Pairview gave me a direction to my career. Since I completed the training, it was easy for me to get the first analytics job and progress to senior positions. Hence, it was a complete value for money.


Senior Data Analyst

I undertook the Insight Analyst programme and although the fee was high, it was worth paying for it. The training was so impactful, with hands-on practices and real-life business scenarios. Sometimes I asked them for help with a next-day interview, the consultant tried his best to prep me that night. I am now an Insight Analyst, all thanks to


Insight Analyst

Personalised Career Development Add-ons

We provide Add-on Services customised for your needs at every step of your learning journey to ensure your success.

  • Project-based Work Experience
  • CV Surgery
  • Placement Support
  • Recruitment Coaching

Gain indispensable experience with our projects

Gain work experience by undertaking real-world projects deriving from our consultancy work with global corporate clients. You will work on some of the most popular problems faced by businesses across industry sectors.

Learn by doing leads to real skills mastery and business acumen competency.



92%+   of delegates completed their projects with Merit or Distinction

4.6+   service ratings



  • 2 months of work experience
  • Assigned Project Manager for supervision and support
  • Weekly support sessions
  • Project presentation and personalised feedback
  • Unlimited submissions and feedback loops
  • Practical tips and industry best practices

Perfect your CV with our bespoke CV Surgery

Marketing yourself effectively to employers is critical so you can get the job you want for the best pay possible.

We will work with you personally on a one-to-one basis to perfect your CV. We will ensure it is a clear and accurate picture of your capabilities, is professionally written, and can capture interest of most recruiters and bring maximum opportunities of job interviews for your relevant roles.



100%   of final CVs captured job opportunities in the first few days

4.9+   service ratings



  • One personalised review and edit
  • Various templates sourced from successful job placements
  • Resume optimisation tips

Have access to our extensive recruitment network

We help our corporate clients solve skill shortage challenges and provide talent security in the hardest to find skill sets on the market. Gain access to the best job opportunities within our extensive recruitment network and channels.



98%+   of delegates got jobs or progressed their career upon completion

4.7+   service ratings



  • Personal assistance in your job search
  • Job opportunities from our corporate partners
  • 1-on-1 calls
  • Helps expand your professional network

Maximise your job opportunities and salary negotiation

Our Recruitment Consultant will help you target the most potential, relevant job opportunities across all available channels for job interviews and provide you with all the necessary interview preparation and techniques to enable you to successfully manage interviews and salary negotiations.

The Consultant will cover responses to those awkward or sensitive questions you may be asked and work with you to increase your level of personal impact and credibility at referral meetings and interviews through role play and practice. You will learn to project what you have to offer calmly and with confidence.



98%+   of delegates got jobs or progressed their career upon completion

4.7+   service ratings



  • Weekly recruitment consultancy sessions
  • Personalized feedback and career guidance
  • Demystifying the hiring process for you
  • Advice on recruitment tests
  • Advice on interview questions and techniques
  • Advice on negotiating job offers

Programming Principles and Software Design in Scala


Choose a learning option and start date to view further information and payment details below.
We are just a click away if you need any assistance

Contact Us!

Have enquiries of a course/programme? Want a career consultation? Or look for bespoke training?

Let’s start a conversation!

All Rights Reserved © 2020

Welcome Back, We Missed You!

Download Now

Please fill out this form to view the brochure