Home University Courses Fundamentals of Computer Science

Fundamentals of Computer Science

Fundamentals of Computer Science
IITBombay Online Course Highlights
  • 4-6 months
  • 186 – 248 hours of effort
  • Learn for FREE, Ugpradable
  • Self-Paced
  • Taught by: Ajit Diwan, Supratik Chakraborty, Ganesh Ramakrishnan, Deepak B. Phatak, Nagesh Karmali, Firuza Aibara
  • View Course Syllabus

Online Course Details:

If you want to be the software designer who can architect systems for successful startups like Flipkart, this XSeries provides the foundational knowledge you need.Google search, Netflix personalization, and self-driving cars rely on complex algorithms and data structures that can scale to a billion users.

In this 5 course XSeries, you will learn the importance of software design, programming skills, data structures, and algorithm principles, that drive every electronic gadget that you see in the market.


Programming Basics
  • 6–8 hours per week, for 9 weeks
  • Learn basic computer programming skills and master the art of writing C/C++ programs to solve real world problems.
Object-Oriented Programming
  • 6–8 hours per week, for 4 weeks
  • Learn the principles of programming for building large and extensible systems.
Foundations of Data Structures
  • 6–8 hours per week, for 6 weeks
  • Learn the best way to structure and represent data.
Implementation of Data Structures
  • 6–8 hours per week, for 6 weeks
  • Learn how to write correct and efficient data structures manipulation using existing standard template library (STL) of C++. Get introduced to the power of STL and make your code more solid, reusable, and robust.
  • 6–8 hours per week, for 6 weeks
  • Learn how to structure and use algorithms to solve real life problems.

What you will learn:

  • Basic programming skills
  • How to write C++ programs to solve real world computational problems
  • How to use object-oriented programming to design modern software systems that adapt to highly rapid change
  • How best to use different data structures to represent, organize, and manipulate data
  • To inculcate design thinking for building system that scale
  • The importance of efficient algorithms in terms of time and space complexity

Take This Online Course