Programs IT & Computing Blockchain Technology Program

Blockchain Technology Program

Blockchain is an emerging technology that enables the transfer and storage of information in a secure and fast way.

Semesters: Spring | Summer | Fall | Winter

Program Overview

Blockchain is an emerging technology that enables the transfer and storage of information in a secure and fast way. It has revolutionized every industry and managerial function. It has the potential to change business processes and models in a distributed and decentralized manner. Blockchain has been redefining the ways we do business, exchange ideas, and manage workflows. Currently, there has been a significant rise in demand for blockchain developers in the market. Glassdoor reported a 300% increase in blockchain-related jobs in 2019 over the last year. However, there has also been a lack of technical skills and talent in blockchain development. Hence, there is a desperate need for hands-on educational programs to potentially address this talent gap in the market.

The Blockchain Technology Analyst Program will introduce students to the concepts, tools, and development of blockchain technology. The program not only provides learners with an understanding and practical knowledge of blockchain fundamentals but also an essential skill set for designing and developing smart contracts and methods for developing decentralized applications on the blockchain. The program will further provide an in-depth exploration of a wide range of other concepts including cryptocurrency, FinTech, blockchain platforms and frameworks, and secured peer-to-peer transactions. Students will be engaged in experiential learning activities that will enable them potentially addressing real-world issues in blockchain development. Through the lab-oriented courses and practical assignments, students will develop essential skills and competence required for a career in blockchain development.

Course Highlights

Study hours: 816

Full-time duration: 40.8 weeks

Homework hours: 10-15 hours per week

Attendance Expectations: Students are required to maintain their attendance as per the FC attendance policy.

Homework hours: instructional time of 10-15 hours per week

Delivery methods: in-class, online, or combined

Graduation Requirements: To graduate, students must successfully complete all courses with minimum C grade (50% to 59%)

This program has been approved by the Private Training Institutions Regulatory Unit (PTIRU) of the Ministry of Post-Secondary Education and Future Skills. This program is not eligible for PGWP.

Career Opportunities

  • Blockchain Developer
  • Blockchain Technologist
  • Blockchain Technology Analyst
  • Blockchain Project Manager
  • Blockchain Solution Provider
  • Smart Contract Developer
  • Cryptocurrency Analyst
  • Cryptocurrency trader
  • Blockchain Quality Technologist

Salary Range

Blockchain Developer

Anticipated Salary Range

$68,000
AVERAGE ESTIMATED STARTING WAGE PER YEAR
$114,000
AVERAGE ESTIMATED EXPERIENCED WAGE PER YEAR

*This estimate is based on available employment data at the time. Actual salary will be based on numerous factors.

Source: Glassdoor

Get Your Information Kit

Course Curriculum

Computer Systems Fundamentals

Computer Systems Fundamentals — 48 hrs

This introductory course is designed to provide students not only a comprehensive grounding in fundamental knowledge of computers but also some of the latest advances in technology. More specifically, using both lectures and laboratory practices, the course would introduce students to essential computing concepts in hardware, software, data storage and manipulation, operating systems, programming, e-commerce, networking and the Internet. Students will gain hands-on experience with different operating systems including Windows, Linux, and Mac, application software packages including spreadsheets, word processing, and presentation, security software, email, the World Wide Web, and the Internet. Students will also learn techniques of refined searching, evaluating, and validating information on the Internet. Furthermore, the course will provide a very basic understanding of advanced and emerging computing technologies including artificial intelligence, machine learning, cloud computing, virtual and augmented reality, Internet of things, blockchain technology, quantum, fog, and edge computing, and 5G technology. Finally, the course would examine the social, legal, and ethical aspects of computing including privacy, data protection, intellectual property, health concerns, and accessibility.

Discrete Maths for Computing

Discrete Maths for Computing — 48 hrs

The main goal of this course is to provide the mathematical foundations for many computer science courses, with particular emphasis on sets of mathematical facts and how to apply them; more importantly, this course will teach students how to think logically and mathematically. The course will start with a discussion of mathematical logic that serves as the foundation for mathematical reasoning and constructing mathematical arguments. The course would further teach leaners how to work with discrete structures, which are the abstract mathematical structures used to represent discrete objects and relationships between these objects. These discrete structures include sets, permutations, relations, graphs, trees, and finite-state machines. Furthermore, students will learn how to write efficient algorithms for solving computational and real-world problems and how to illustrate the analysis of the complexity of algorithms, focusing on the time an algorithm takes to solve a problem. The course will also focus on combinatorial analysis, which is an important problem-solving skill to count or enumerate objects. Finally, graph theory would be introduced to provide an understanding of graph models and its applications in computing and how graph theory can be applied to solve computing and real-world problems.

Programming Languages

Programming Languages — 48 hrs

This introductory course is the first of its kind in computer programming which is designed to introduce essential programming and scripting concepts to students. The main purpose of this course is to develop learners’ basic structured and web programming skills and prepare them for advanced programming and application development. Students will learn writing fundamental computer programs and scripts from scratch and will gradually practice major programming tools and techniques to implement them. More specifically, students will learn not only the design and implementation of the constructs of structured programming (variables, sequence, selection, iteration, functions, parameter passing, and arrays) in the context of a procedural development environment but also implement the same constructs in web programming scripting languages. Students will get familiarity with a number of languages including C++, Python, HTML, CSS, JavaScript, and PHP. The course will enable students to write small pieces of code and implement them in the aforementioned programming languages. Finally, the course will enable learners to develop small client-server applications in scripting languages.

Introduction to Computer Networks

Introduction to Computer Networks — 48 hrs

This course is designed to provide learners the fundamental knowledge of networking, with particular emphasis on the architectural components of a computer network and network technologies. More specifically, this course will introduce students to the architecture of a computer network, different types of networks, network technologies including both local and global, networking hardware, and the design and configuration of a computer network. The course will begin with the introduction of basic terminologies and concepts and will move on to explore the core components of a network including basic hardware and software, end systems, access networks, network applications, network links, and physical media. The course will explore various types of computer networks including LAN (Local Area Network), WAN (Wide Area Network), and the Internet. Students will also gain an understanding of physical topologies of a computer network and different types of cabling used for networking. The course presents a brief introduction to each layer of the TCP/IP protocol stack and the protocols used on the Internet. Students will also learn about the operations and functions of different networking hardware, with particular emphasis on router, switch, network interface card, and modems. During the course, students will gain a hands-on experience on how to design and configure a computer network. Furthermore, the course will also explore wireless networking, particularly wireless LAN (WLAN) including characteristics of wireless transmission, WLAN standards, and technologies. Finally, the course will introduce network security and troubleshooting of computer network. The course will help students prepare for the Network+ certification exam.

Database Fundamentals

Database Fundamentals — 48 hrs

The main purpose of this course is to introduce essential concepts in databases and help students learn and apply foundational knowledge of SQL (Structured Query Language), with particular emphasis on designing and implementing a relational database in SQL. More specifically, this course will teach students how to create a relational data model and implement it in a current open-source relational database management system, e.g., MySQL. The course presents a thorough introduction to conceptual data modelling, entity-relationship diagram (ERD), and enhanced ERD constructs, primarily supertype/subtype relationships. Students will learn the process of converting a conceptual data model into a relational data model. The course will also introduce a conceptually sound and practically relevant introduction to normalization, emphasizing the importance of the use of functional dependencies and determinants as the basis for normalization. The course also aims at gaining hands-on experience and working knowledge of MySQL database management system. Through a series of hands-on labs and practical assignments, students will practice building and running SQL queries to create tables and insert, update, and delete data in a database. Finally, students will learn how to develop a small application to demonstrate communication between the front-end and back-end of information systems.

Python Programming

Python Programming — 48 hrs

This course is designed to introduce both essential and advanced programming concepts in Python language, with particular emphasis on data manipulation and analysis. The main purpose of this course is to develop not only learners’ programming skills in Python but also introduce them with necessary data science libraries and packages required for data analysis. Students will learn how to install and configure the Python language, Anaconda distribution, Jupyter Notebook, and PyCharm. More importantly, the course will cover different Python data structures including lists, tuples, dictionaries, sets, and data frames, user-defined functions and core statistical functions, object-oriented design and development, importing data in Python, data manipulation and visualization techniques. Students will get familiarity with a number of data science Python libraries and statistical programming packages. The course will help students build hands-on experience with important data science tasks including implementing techniques for preparing data for analysis, representation, and visualization in Python.

Data Structures and Algorithms

Data Structures and Algorithms — 48 hrs

The main purpose of this course is to introduce fundamental concepts of data structures, algorithms, and abstract data types, with particular emphasis on implementing algorithms involving problem-solving and their applications. More specifically, students will learn how to implement both linear and non-linear data structures using Python and C++ and perform fundamental operations including searching and sorting using efficient algorithmic techniques to solve both computing and real-world problems. The course will cover topics including abstract data types, arrays, stacks, queues, linked-lists, graphs, trees, binary search trees, heaps, linear and binary search algorithms, sorting algorithms, recursion algorithms, hash tables, and Dijkstra’s shortest-path algorithm. Furthermore, students will learn how to compare the efficiency of different algorithms and programs by performing time-space complexity analysis using mathematical techniques. Through a series of hands-on labs and practical assignments, students will be equipped with the programming skills to implement various data structures and algorithms using Python and C++ programming languages.

Introduction to Distributed Databases

Introduction to Distributed Databases — 48 hrs

This course is designed to introduce the fundamental concepts in distributed databases and will explain how they differ from centralized databases. The course will provide students with the working knowledge of the architecture, functions, design issues, and data management in a distributed database environment. The course will cover topics including advantages and limitations of distributed databases, homogeneous and heterogeneous distributed DBMS, architecture and functions of distributed database management system (DDBMS), ACID (Atomicity, Consistency, Isolation, Durability) properties of transaction, issues associated with distributed relational database design including data allocation, fragmentation, and replication, types of transparency including distribution transparency, transaction transparency, performance transparency, and DBMS transparency, transaction management, data distribution, distributed database recovery, distributed deadlock management, and architecture of Peer-to-Peer (P2P) networks. The course will also introduce a practically relevant introduction to data management and query processing in a Peer-to-Peer systems, which plays a key role in managing transactions using the Blockchain technology. Finally, through a series of labs sessions and practical assignment, students will gain hands-on experience and skills of using Oracle to handle data distribution and data replication in a distributed database environment.

Introduction to FinTech

Introduction to FinTech — 48 hrs

This course is designed to provide a broad overview of the essential concepts of FinTech (Financial Technology). The course will begin with the definition of FinTech and will discuss further the evolution of FinTech, FinTech typology, emerging economics, and financial regulations. The course will then explore payment methods and the transformation of finance through technology, looking at new things including cryptocurrencies, Bitcoin, blockchain, and mobile payments. Students will gain a deeper understanding of the effects of technology in changing personal financial practices. The course will then turn to the digitization of finance and the development of new forms of alternative finance, crowdfunding, initial coin offerings (ICOs), new forms of lending and security settlement. Students will discuss the FinTech regulation challenges and the evolution of RegTech (regulatory technology). Students will further discover the interaction between data and finance and the emergence of data-driven finance, and the major technologies driving FinTech transformations including AI, machine learning, and blockchain. Finally, the course will examine the future of data-driven finance through five different specific case studies including Revolut, Alibaba, Aadhaar, Credit Karma, and Digibank. These case studies will illustrate the concepts students have already learned before and show how FinTech is being implemented around the world.

Foundations of Blockchain Technology

Foundations of Blockchain Technology — 48 hrs

This course is designed to provide a broad overview of the essential concepts of Blockchain technology. More specifically, the main purpose of this course is to give the basic understanding of Blockchain technology i.e. what is blockchain, how does it work, what are its types, and how to create blockchains. Students will learn the key elements of the software architecture underlying the blockchain technology. The course will cover other topics including the limitations of the Internet in terms of doing business and economic activities, the design principles, architecture, and core components of blockchain, characteristics of peer-to-peer system, an overview of the methodology, tools, and techniques to create blockchains, and the applications of Blockchain and its implications on digital economy. Students will learn the design principles of blockchain, which are used for creating software, services, business models, and markets. The course will give an in-depth knowledge of the structural elements and operational aspects of Bitcoin including identity, transactions, record-keeping, consensus, wallets, wallet mechanics, mining, and governance. Through hands-on programming labs and practical assignments, students will be equipped with the working knowledge and skills to create their own blockchains. Finally, the legal and social aspects and issues associated with blockchain will be discussed.

Cybersecurity Fundamentals

Cybersecurity Fundamentals — 48 hrs

The main purpose of this course is to provide a foundational background for understanding the basics of cybersecurity. More specifically, the course will teach students the skills required to identify basic security threats related to operating system, computer networks, software and applications, hardware, personal data and databases, and choose the best security practices to address those threats. The course will begin with the origin of cyberattacks and will discuss further the cybersecurity roles, processes, and types of security threats and cyberattacks. Students will learn about password management, multi-factor authentication, device hardening mechanisms, and will understand the difference between authentication, authorization, and accounting. An introduction to operating system threats and security techniques will be provided. The course will further examine different types of network attacks including denial of service (DOS), distributed DOS, and botnets attacks and how to defend networks against such threats. Students will learn about the data and database vulnerabilities and the safeguarding measures to protect against database breaches. The course will introduce web-browsing safety concerns with applications and public browsing, including managing plug-ins, extensions, and toolbars. Students will gain knowledge of web browser security configurations, cookies, and computer caches. A brief overview of infrastructure security will also be provides. Finally, students will get an overview of IT governance and best practices and compliance frameworks and standards. The course will provide students the working knowledge and hands-on experience to develop their cybersecurity skills through industry specific and open-source security software, tools, and utilities. This course will help students prepare for the CompTIA Security+ certification exam.

Introduction to Cryptography

Introduction to Cryptography — 48 hrs

The main purpose of this course is to understand how cryptographic systems work to protect information in computers and how to apply them in real-world applications. The course will begin with the definition of cryptography illustrated by examples of ciphers and discuss pseudo- randomness and its use in encryption. The course will then introduce block ciphers, more powerful algorithms, including Advances Encryption Standard (AES) and the Triple Data Encryption Standard (3DES). Through programming assignments, students will learn how to use AES and 3DES to encrypt data. To ensure further data integrity, students will investigate the MAC (Message Authentication Codes) systems. The course will then turn to discuss authenticated encryption methods to ensure both confidentiality and data integrity. Furthermore, the course introduces key exchange protocols to safeguard against eavesdropping and public-key cryptography algorithms to encrypt file systems and messaging systems. Students will examine two popular public key algorithms including RSA and the Diffie-Hellman protocol. The course will also give a brief overview of digital signatures and will teach students how to sign a digital message or document using RSA algorithms. Students will examine some identification and authentication protocols including Kerberos, Zero- Knowledge Identification Protocol (ZKIP), PAP, CHAP, and AAA. Finally, students will learn the working of SSL (Secure Socket Layer) and TLS (Transport Layer Security) protocols and how they are implemented in web browsers to secure data and authenticate a connection on the Internet.

Smart Contracts

Smart Contracts — 48 hrs

This course is designed to provide the fundamental concepts of smart contract, which is the computational element (self-executing computer program or a transaction protocol) of the blockchain technology. More specifically, the main purpose of this course is to provide students the working knowledge and skills of how to design, code, deploy, and execute a smart contract using Solidity computer programming language. The course will thoroughly cover the key elements, structure, basic concepts, and reasons of a smart contract and its critical role in transforming blockchain technology from enabling decentralized systems. The course will also introduce the syntax and semantics of Solidity computer programming language and the Remix integrated development environment (IDE) for building and testing smart contracts. Students will also be equipped with the working knowledge and skills of deploying a smart contract using Remix and invoking it from a simple web interface. Through hands-on programming labs and practical assignments, students will demonstrate the ability to master the basics of Solidity language. The course will also focus on the development of the Ballot smart contract incrementally to illustrate various features. At the end of the course, students will be able to analyze a problem statement to design a smart contract and implement it using Solidity language and Remix IDE. Finally, students will learn the best practices including evaluating whether a blockchain-based solution is suitable for their problem, designing Solidity smart contracts, and those relating to Remix IDE.

Decentralized Applications

Decentralized Applications — 48 hrs

This course aims at introducing the foundational knowledge of designing and developing end-to-end decentralized applications (DApps). Students will gain the basic understanding of the architecture of DApp which will provide them with access to the blockchain’s features and services. More specifically, the course will provide the working knowledge and skills of how to design a DApp i.e., designing the front-end client interface, backed by the blockchain and smart contracts running on a decentralized network. Students will explore the notion of the blockchain server as the foundation for a decentralized application and will demonstrate how to install it and establish a peer-to-peer network of nodes. The course will cover other topics including the Truffle development process that provides an environment for developing and testing DApps, Truffle commands including develop, init, compile, migrate, and test, test-driven development of DApp, DApp application models, Ethereum Improvement Proposal (EIP), Ethereum Request for Comments (ERC) process and framework, and emerging standards in a decentralized system. Students will also explore the best practices exclusive to smart contracts and DApps that will improve the basic DApp design. Through hands-on programming labs and practical assignments, students will be equipped with the working knowledge and skills to develop their own end-to-end decentralized applications.

Blockchain Platforms

Blockchain Platforms — 48 hrs

This main purpose of this course is to provide learners an understanding of blockchain platforms, with particular emphasis on Hyperledger and Ethereum. The course will begin with discussing the architecture of blockchain stack including computation, storage, and messaging platforms, and will move on to compare and contrast the existing popular blockchain platforms including both the open-source and enterprise systems. The course will then take a deeper dive into exploring the contributions of the Linux Foundation’s Hyperledger and Ethereum. Students will gain the knowledge of the architecture and working of both Hyperledger Fabric and Ethereum, explore the tools and application development for both platforms, and will demonstrate how to develop and test their own business network on Hyperledger Composer and Ethereum. The course will further provide an overview of the architecture, components, and development environments of two enterprise blockchain platforms including Corda and Quorum. Furthermore, students will examine and analyze two decentralized prediction market application platforms including Augur and Grid+ that are implemented on Ethereum.

The course will discuss the architecture and working of Augur

platform, list use cases for Augur, explain the architecture and working of

Grid+ platform, and explore how Grid+ can be used. Finally, the structure

and operations of the Interplanetary File System (IPFS) will be discussed.

Communication Skills

Communication Skills — 48 hrs

The main purpose of this course is to help students develop and enhance effective communication skills in English for successful interaction. More specifically, the course will focus on particular domains of communication in English including the role of listening, verbal and non-verbal communication, holding a formal conversation at interviews and meetings, writing professional emails, making effective presentations, and networking online. The course begins with the introduction of elements of communication and will move on to discuss communication style, barriers to communication, and the process and core principles of effective communication. Students will learn how to improve their listening skills, understand non-verbal cues in communication, write persuasive messages, and select the right medium of communication. The course will focus on building students’ speaking and writing skills and will enable them to clearly articulate their thoughts and ideas in writings and speaking including in-person, online, and telephonic conversations. Students will also learn how to write effective business emails to fulfil their professional needs. The course will further cover interviewing and presentation techniques to help students prepare for better interviews and design and deliver effective presentations. Finally, the course will cover online networking and will equip students with the necessary skills required for making meaningful online connections with other professionals.

Career Development Planning

Career Development Planning — 48 hrs

This course is designed to help students plan, develop, and pursue effective career and employment strategies. More specifically, the course will focus on particular domains and stages of career development including devising career strategies for before, during, and after the job interview. The course is divided into three major parts. The first part of the course will focus on the before the interview stage. Students will learn about the techniques of choosing an appropriate career that suit them their interests, knowledge, and skills and also comply with the type of work they choose. Students will further learn how to create an effective professional resume from scratch or update the current one. The course will also cover creating a profile on LinkedIn and Indeed employment website, the tips and techniques of tapping the hidden job market, and assessment of online presence. Students will also learn how to write and adapt a professional cover letter. The second part of the course will focus on preparing students for the job interviews. Students will participate in video-recorded mock interviews that will enable them to assess their own interests, skills, competence, performance, personality, and values. The final part of the course will cover the after the interview stage and will discuss the follow-up, negotiations, weekly manager meetings, and the impact of contemporary issues on career choices and self-management. Finally, the course will discuss the BC Human Rights Code, BC Employment Standards Act, federal Employment Equity Act, and employees’ rights.

Admission Requirements

Academic Eligibility
  • Grade 12 (or equivalent) Canadian high‑school credential OR
  • Relevant professional experience / mature‑student status
English‑Language Proficiency

Applicants must provide proof of English language proficiency through any one of the following:

  • Completion of 2 years of secondary education (including English 10 and 11 with a grade of ‘C’ or higher) from a country where English is one of the principal languages
  • Completion of 2 years of full-time post-secondary education at an accredited institution where English is the language of instruction
  • An English Language Proficiency Test with one of the following minimum scores:
    • International English Testing (IELTS) Academic: Minimum overall score of 6.0
    • Test of English as a Foreign Language (TOEFL) IBT: Minimum overall score of 67 (TOEFL-Home test not accepted).
    • Canadian English Proficiency Index Program (CELPIP): Listening 7, Speaking 7, Reading 7, and Writing 7
    • Duolingo English Test: Minimum overall score of 105
    • Pearson Test of English (PTE) Academic: Minimum overall score of 52

See full English Language Proficiency Requirements for details.

Technology Access
  • Reliable high‑speed internet and a device capable of running online‑class software (e.g., Microsoft Teams)
Program Workload
  • Approximately 10-15 hours/week homework is required from students to be successful in this fast-paced and intensive program.

Tuition Fees

Domestic Students
  • Tuition Fee: $13,500
  • Application Fee: $200
  • Assessment Fee: $250
  • Administration Fee: $100
  • Course Material Fee (Books not included): $600
  • Archive Fee: $30
  • Total Fees: $14,680*

*Domestic students may qualify for financial aid or Focus College scholarships. Complete the application form or visit our Financial Assistance page to learn more.

International Students
  • Tuition Fee: $14,000
  • Application Fee: $500
  • Assessment Fee: $250
  • Administration Fee: $100
  • Course Material Fee (Books not included): $600
  • Archive Fee: $30
  • Total Fees: $15,480

Student Success Stories