image_fx_ - 2024-10-22T195522.074
Learn C:
Join Our C Programming Course
Introductory to intermediate C programming course for those who want to learn C.
Course Overview Introductory to
Intermediate C
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.

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.

This course is NOT for:
  • Beginners, people learning to code
  • High schoolers
  • Anyone without a basic CS foundation

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.
Required Pre-requisites
1
Use the command line, use an IDE
2
Use Git, and in a group setting with mains, branches
3
Intermediate to advanced coding skills in a mid to low level language
4
Some previous professional development experience preferred
5
Must be competent and confident in at least one other mid or low level programming language (Javascript, Python, HTML/CSS and other high-level languages don’t count)
6
Extensive technical interview, resume, and profile training/resources
Find the Course Option that Works For You
Full-time and part-time and flexible pathway options available remotely.
Anytime Self-Paced Upskill
Study on your own schedule, at your own pace, fast or slow. No attendance requirements and no deadlines.
Up to 6 months
No meetings
START DATES
Start anytime
Apply now
Part-time Professional Flex​
Study on a part-time basis with somewhat flexible options on course meetings.
No project deadlines.
6 months
Saturday meetings
START DATES
21 Jan 2025 • 25 Mar 2025
Apply now
Part-time OR Full-time Intensive Bootcamps
Study full-time or part-time in a highly structured intensive bootcamp. Attendance is required and projects have deadlines.
3 or 6 months
Tues/Thurs or Mon - Fri meetings
START DATES
21 Jan 2025 • 25 Mar 2025
Apply now
Join a specific cohort Virtual meetings 1-3x per day, Learn in a community 100% hands-on learning Accountability & motivation.
Stack courses back to back OR take breaks between courses Duration estimates are based on back-to-back courses
Introductory to
Intermediate C
Course Curriculum
What you’ll cover throughout your learning journey.
Data Structures and Data Types in C Introductory
  • 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 Introductory
  • 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 Intermediate
  • 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 for Part-time Flex and Intensive Bootcamps
Morning Standup
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.
Live Coding Sessions
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.
Collaborative Coding Workshop
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 Technical Presentation
Explore industry-relevant technical subjects that are not typically addressed in projects. Activities range from individual presentations to  group work completing “new technology canvas” worksheets followed by brief presentations.
Engineering Case Studies
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.
Required Study Time
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.
Pair Programming Pods
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.
image_fx_ (33)
Stop Boring Online Courses!
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
image_fx_ (29)
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:
Learn more
Group debugging session
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
How Learning Works What you will be doing throughout the program.
Learn more
Projects
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 or data science degrees. Your specialty is being an elite developer at a world-renown level.
Excercises
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!