Learn C: Join Our C Programming Course

Intermediate C Programming Course Overview

This program focuses on C programming and software engineering principles, as well as strong fundamentals in data structures and algorithms. Learners will cover arrays, strings, algorithms, pointers, hash data structures, and software architecture for C. Our projects include a focus on gaining confidence in your C code and better understanding how a computer works.

Course Contents

19 projects
40 exercises
37 resources
4 academic papers
Certificate of completion

Learn C - Intermediate C Programming Course 1
Learn C - Intermediate C Programming Course 2

Course Outcomes


Upon completing this course, learners will develop proficiency in C programming, including writing, compiling, and debugging complex code while mastering key concepts such as pointers, memory management, and data structures. They will gain a comprehensive understanding of software architecture and design, enabling them to create modular, maintainable, and scalable software solutions.

Learn C: Our C Programming Course Pre-requisites

This course is not for beginners and thus has prerequisites. In order to succeed in this course, you should:

  • Use the command line
  • Use an IDE
  • Use Git, and in a group setting with mains, branches
  • Write, use, and be able to apply loops, functions, if statements, conditionals, in Javascript, Python, or modern language (HTML/CSS doesn’t count)
  • Ability to abstract and infer
  • Basic understanding of memory
  • Basic understanding of operating systems

We’d recommend this course for:

  • Industry professionals
    software engineers & developers
  • Computer Science grads
  • Anyone with a good SWE foundation looking to get hands-on experience in C

 

This course is NOT for:

  • Beginners, people learning to code
  • High schoolers
  • Anyone without a basic CS foundation

Course Options

Full-time and part-time programs available remotely.

Self-Learning Upskill

Study at your own pace, in your own time, without any course meetings – just the assignments, projects, autocorrection, and peer reviews.

Requires 1 business day to register, process payment, submit verifications.

Max time to complete course: 6 months

Part-time Professional Flex

Study on a part-time basis with somewhat flexible options on course meetings. No project deadlines.

Start dates:

  • 9 July 2024
  • 10 Sept 2024

 

Max time to complete course: 6 months

Intensive Bootcamp - Part Time

Study part-time in a highly structured intensive bootcamp. Attendance is required and projects have deadlines.

Start dates:

  • 9 July 2024
  • 10 Sept 2024


Max time to complete course: 6 months

Intensive Bootcamp - Full Time

Study in a highly structured intensive bootcamp. Attendance is required and projects have deadlines.

Start dates:

  • 9 July 2024
  • 10 Sept 2024


Max time to complete course: 3 months

Introductory to Intermediate C Programming Course Curriculum

What you’ll cover throughout your learning journey.

Data Structures and Types in C

  • Understand the fundamental different kinds of data structures in programming and why they are important.
  • Understand and work with different data types in C to understand how a computer treats different types of data, how that affects memory.
  • Work with pointers to control computer memory allocation when using different data structures and types, making your programming more efficient.
  • Discover and work with arrays, a fundamental concept in programming that makes your code more efficient by streamlining data organization and use of variables.

Introduction to C Programming I

  • Understand and use dynamic memory allocation, avoid memory leaks
  • Declare and use pointers to functions, double pointers, passing pointers as function arguments
  • Declare and initialize 2D arrays, arrays of pointers
  • Apply knowledge to matrices and grids, and for manipulating strings
  • Begin using system calls, error handling, and traversing directories
  • Parse command-line arguments

Intermediate C Programming

  • Understand file system interaction, system calls for basic file operations
  • Understand tar archive format and compression
  • Apply recursion
  • Manipulate pointers, use structs, data structures
  • Create a Makefile
  • Begin software architecture and decision-making about architecture choices
  • Understand basics of blockchains (built in C) and how they operate

Course Meetings

Daily standup meetings are conducted to kick off the day, Learners share progress since last session, discuss roadblocks, and brainstorm solutions, fostering support and goal clarity. Facilitated by program managers, these meetings ensure everyone shares updates, mirroring industry practices.

As part of the group session, a learner will tackle a coding problem, sharing their thought process to the group, inviting discussion and alternative solutions.

Students collaborate in small groups on unique timed coding challenges. Results are shared and then to reinforce their grasp of terminology and potential interview questions, a quick ‘Skills Check’ quiz is presented.

Weekly sessions explore industry-relevant technical subjects that are not typically addressed in projects, in preparation for technical interviews. Activities range from individual presentations to  group work completing “new technology canvas” worksheets followed by brief presentations.

A case study is selected in advance that aligns with the program’s curriculum, learning objectives, and student expertise levels, ensuring a variety of topics. Following this, we engage in reading, analyzing, and discussing business challenges and data privacy issues, etc. fostering collaboration and diverse viewpoints.

Our virtual library offers private breakout rooms for one-on-one conversations or focused group discussions. Whether working independently or in groups, respectful communication and active listening are prioritized.

A collaborative workspace where two learners work together on the same project. Partners can readily share ideas, solve problems, and learn from each other’s coding skills.

Learn C - Intermediate C Programming Course 3

Stop Boring Online Courses. Start Coding & Building Applications!

All tracks use project-based learning, meaning you will spend most of your time coding. Manage your work and assignments in our proprietary learning platform that’s designed to reflect the working life of an engineer.

Expect to be assigned projects, coding exercises, and peer code reviews. Our platform includes:

  • Autocorrection system
  • Automatic code quality evaluator
  • Integrated development environment
  • Integrated Git system
  • Sophisticated peer code review system with IDE and Git all connected, gamified with points you earn and spend
  • Discord chat for each course
Learn C - Intermediate C Programming Course 4

Join an Outstanding Learning Community!

Joining Qwasar is about joining a learning community. Learning on your own is hard, watching online videos can be boring, and sharing your learning journey (and certainly lots of jokes) with others is important.

 

Our platform and Discord chat, as well as our program meetings, are all about building and participating in the community. When you join our programs, you have access to:

  • Group debugging sessions
  • Small group sessions
  • Virtual coworking rooms
  • Sophisticated peer code review system
  • Coding collaboration workshops and pair programming
  • Our lively Discord online chat (with a tech news section and a meme section)

What to Expect: 90% Coding

What you will be doing throughout the program.

Elite Full Stack Development Program projects

PROJECTS

Each season has a series of projects to complete that last 1 day to up to 3 months. These are problems and challenges to build software based on certain requirements and restrictions.

One example of a project would be to build a task-management software with tags, permissions, and a basic user interface.

Elite Full Stack Development Program exercises

EXERCISES

Each week, participants will have 1-5 coding exercises to complete. These are accessed through our software and your code is auto-graded to ensure it is up to speed and functioning. This is part of the learning process. We have over 800 exercises in our library with thousands of test cases!

Elite Full Stack Development Program role play

ROLE PLAY

We use role play to develop soft skills such as job negotiations or conflict resolution. We also use role play in technical interview practice where participants will both be the interviewee and the interviewer. This dual-sided perspective is unique to our program & helps build better interviewees.

Elite Full Stack Development Program gamification

GAMIFICATION

Our system is gamified, meaning that you will earn and spend “Qpoints.” As you complete peer code reviews, you earn points and as you submit your projects for review, you will spend Qpoints.

Course Costs & Tuition

Course costs are below and payment is due upfront. If you have any questions about costs, please contact us directly!

Self-Learning Upskill

$500

Sale! $249

Part-time Professional Flex

$1000

Sale! $699

Intensive Bootcamp – Part Time

$2000

Sale! $1499

Intensive Bootcamp – Full Time

$2000

Sale! $1499

What’s included in the price:

  • All program meetings
  • All assignments and course materials: projects, coding exercises, project resources, Discord channel access
  • Program support as applicable by option
  • No textbooks required, no additional purchases required

Career Preparation and Support

For intensive bootcamp learners, we provide career preparation and support. Qwasar has created a career support track and community called Technical Interview Preparation Program (TIPP), which students join in Season 2. This includes:

  • Interview Preparation and Practice
  • Data Structures and Algorithms Course
  • Resume and Profile Preparation
  • Technical Portfolio Development
  • Useful Resources
Learn C - Intermediate C Programming Course 5
Learn C - Intermediate C Programming Course 6

Application Process

Understand how to apply and enroll.

Self-Learning Upskill

Application and verification of identity, followed by agreement to terms and conditions, then payment.

This generally takes 24 hours, and is to help ensure a safe and friendly learning community.

All Other Options

Application form submission

Behavioral and technical interview (both at once) to evaluate skill level

Admissions decision

Enrollment contract

Payment

 

What to Expect

At Qwasar, you are responsible for your learning, just as you would be responsible for your work in a job. Problem-based learning involves finding, trying, and building solutions. With no single source of truth and no answers provided, it’s up to you to figure out how to make your code work, when and how to ask for help, and how to successfully build software in a team.

shotoniphone-echPXDmxHWM-unsplash

What Sets Us Apart

Silicon Valley Standards

We train to standards set by Silicon Valley for full stack developers. This means the level is much higher than that of bootcamps, and higher than that of CS degrees. Your specialty is being an elite developer at a world-renown level.

Technical Skills & Knowledge

Thanks to the depth and breadth of our program curriculum, you acquire a level of technical skills and knowledge that learners in other programs or bootcamps simply never acquire.

Strong Back-end Skills

The vast majority of bootcamps don’t cover data structures or algorithms. CS degrees don’t cover hands-on application of theory or actually developing software architecture. We cover both and your strong back-end skills and experience with databases, data structures, and algorithms will set you apart from other candidates.

Depth of Technical Portfolio

Learners develop a technical portfolio that has depth and shows the extent of their technical skills and ability to handle databases, deployments, and development. Neither bootcamps nor CS degrees offer this.

Questions? Contact us!​​​

For questions about this course, or to speak with one of our Program Managers, contact us via our website form.

Elite Full Stack Development Program shooting star

Information Sessions

Join us for a session on what learning is like at Qwasar. Sign up to learn more about our program options and how each cohort works.

Elite Full Stack Development Program shooting star

Qwasar vs. Others

How do Qwasar programs compare to other tech training options out there? Find out how we stack up.

Elite Full Stack Development Program shooting star

View Platform

Software drives our programs and learners access one of the world’s most innovative learning platforms for tech talent training.