Jovian Data Science and Machine Learning Bootcamp


The Jovian Data Science and Machine Learning Bootcamp is a 24-week program designed to help you learn industry-standard tools & techniques for data science, build real-world projects, and start your data science career. The following topics are covered:

  1. Programming with Python
  2. SQL & Business Intelligence
  3. Statistics for Data Science
  4. Data Analysis & Visualization
  5. Supervised Machine Learning
  6. Career Readiness Training

Start working through the lessons, assignments, and projects below and try to complete them before the given deadlines to stay on track with other participants in your batch.

Bootcamp Introduction and Overview

  • Curriculum and schedule walkthrough
  • How to get help on Slack and Zoom
  • How to succeed and stay on track

1.1 Python Programming Fundamentals

  • Introduction to Python & Jupyter notebooks
  • Arithmetic, conditional & logical operators
  • Variables and common data types in Python

1.2 Next Steps with Python

  • Branching with if, elif and else
  • Iteration with while and for loops
  • Functions, scope, and exceptions

Assignment 0 - Python Basics Practice

  • Solve word problems with arithmetic operations
  • Manipulate data types with methods & operators
  • Use branching and iteration to analyze data

Assignment 1 - Sudoku Solver in Python

  • Reading Sudoku puzzles from a file
  • Performing validations using functions
  • Recursive solution with backtracking

2.1 Introduction to Probability

  • Coin tosses, dice rolls and playing cards
  • Intersection, union and independence
  • Conditional probability and Bayes theorem

2.2 Measures of Central Tendency

  • Mean, standard deviation & variance
  • Median, percentiles, quartiles & range
  • Mode of a dataset & frequency tables

Assignment 6 - Statistics & Probability Practice

  • Simple and compound probability
  • Mean and standard deviation
  • Median, quartiles, and mode

1.3 Web Scraping and REST APIs

  • Reading from and writing to CSVs
  • Downloading files and web pages
  • Extracting information from HTML

2.3 Counting Techniques and Random Variables

  • Factorials, permutations & combinations
  • Discrete and continuous random variables
  • Probability distributions and expected values

Project 1 - Web Scraping with Python

  • Select a website for scraping
  • Scrape and parse data from site
  • Write the results to CSV files

1.4 Local Development with Conda & Git

  • Local development environment setup
  • Running Python scripts & notebooks
  • Managing large Python projects with Git

2.4 Hypothesis Testing and Statistical Significance

  • Stating null and alternate hypotheses
  • Computing Z scores and p values
  • Significance and confidence levels

Assignment 3 - Evaluating A/B Tests

  • Introduction to A/B tests
  • Computing the p-value
  • Picking a winning variant

Python Programming Course Review

  • Review of course topics
  • Answers to common questions
  • Discussion of project ideas

1.6 Documentation and Storytelling

  • Improving clarity and readability of code
  • Documenting notebooks using Markdown
  • Storytelling techniques for improving projects

Workshop - How to Write a Data Science Blog Postoptional

  • Why writing blog posts is important
  • Crafting a great blog post step by step
  • Publishing and sharing your blog posts

Workshop - Web Scraping with Selenium & AWSoptional

  • Building Python projects with GitHub & Replit
  • Scraping dynamic websites using Selenium
  • Deploying to AWS and sending results via email

3.1 Numerical Computing with Numpy

  • Arrays, vectors, and matrices in Numpy
  • Array operations, slicing, and broadcasting
  • Reading from and writing to CSV files

Assignment 4 - Exploring Numpy Functions

  • Explore the Numpy documentation website
  • Demonstrate usage 5 numpy array operations
  • Publish a Jupyter notebook with explanations

3.2 Analyzing Tabular Data with Pandas

  • Querying, filtering, and sorting data frames
  • Grouping and aggregation for data summarization
  • Merging and joining data from multiple sources

4.1 Visualization with Matplotlib and Seaborn

  • Basic visualizations with Matplotlib
  • Advanced visualizations with Seaborn
  • Tips for customizing and styling charts

Assignment 5 - Pandas Data Analysis Practice

  • Query and sort data from data frames
  • Group, merge, and aggregate data frames
  • Fix missing and invalid values in data

3.3 Advanced Data Analysis Techniques

  • Downloading and processing large datasets
  • Categorical data and datatype-specific methods
  • Dataframe concatenation, merging, and joins

4.2 Interactive Visualization with Plotly & Folium

  • Creating interactive graphs with Plotly
  • Markers, 3D charts, and animation
  • Plotting on maps using Folium

Assignment 6 - Data Analysis & Visualization Practice

  • Querying and filtering pandas data frames
  • Static charts with Matplotlib & Seaborn
  • Interactive charts with Plotly & Folium

4.3 Exploratory Data Analysis Case Study

  • Data preparation and cleaning with Pandas
  • Open-ended exploratory analysis & visualization
  • Asking and answering interesting questions

Data Analysis Course Review

  • Review of course topics
  • Answers to common questions
  • Discussion of project ideas

Project 2 - Exploratory Data Analysis

  • Find a large real-world dataset using online sources
  • Clean, process & analyze dataset using Pandas
  • Visualize the data, ask & answer relevant questions

Object Oriented Programming with Python

  • Classes, objects, and inheritance
  • Class properties and methods
  • Exploring library source code

Data Visualization Course Review

  • Review of course topics
  • Answers to common questions
  • Discussion of project ideas

Workshop - How to Present Your Data Science Projectsoptional

  • Understanding the audience for your presentation
  • Crafting an impressive slide deck for your project
  • Tips for practice, delivery, and audience engagement

5.1 Linear Regression with Scikit-Learn

  • Linear regression with multiple features
  • Using numeric and categorical features
  • Regression coefficients & features importance

6.1 Relational Databases and SQL

  • Setting up MySQL and creating tables
  • Inserting and querying data with SQL
  • Keys, references, and aggregations

5.2 Logistic Regression for Classification

  • Downloading and processing Kaggle datasets
  • Training a Scikit-learn logistic regression model
  • Model evaluation, prediction, and persistence

Assignment 7 - Train Your First ML Model

  • Download and prepare a dataset for training
  • Train a linear regression model using sklearn
  • Make predictions and evaluate the model

6.2 Aggregation and Joins with SQL

  • Aggregation functions and grouping
  • Combining data with SQL joins
  • Improving performance with indexes

Assignment 8 - SQL Querying Practice

  • Selection, filtering, and ordering
  • Functions, aggregations, and joins
  • Adding new tables and records

5.3 Decision Trees and Random Forests

  • Traning decision trees & random forests
  • Overfitting and hyperparameter tuning
  • Model interpretation and feature importance

Assignment 9 - Decision Trees and Random Forests

  • Prepare a real-world dataset for training
  • Train decision tree and random forest
  • Tune hyperparameters and regularize

6.3 Data Analysis and Visualization with Excel

  • Working with sheets, cells, formulas & functions
  • Analyzing and visualizing a real-world dataset
  • Styling, data validation & conditional formatting

How to Approach Machine Learning Problems

  • Understand business needs and explore the data
  • Prepare data for modeling and create a baseline
  • Train, evaluate, finetune, and ensemble models

Tableau for Visualization & Dashboards

  • Installing Tableau and importing data
  • Answering questions using visualizations
  • Creating interactive online dashboards

Assignment 10 - Excel and Tableau Practice

  • Data analysis using Microsoft Excel
  • Data visualization using Tableau
  • Creating and publishing dashboards

5.5 Gradient Boosting Machines with XGBoost

  • Data preprocessing and feature engineering
  • GBMs training, evaluation, and interpretation
  • K-fold cross validation and hyperparameter tuning

6.5 Introduction to Product Analytics

  • User journeys and the Pirate funnel
  • Key metrics & tools to measure them
  • Improving products using machine learning

Project 3 - Machine Learning with Python

  • Perform data cleaning & feature engineering
  • Training, compare & tune multiple models
  • Document and publish your work online

5.6 Unsupervised Machine Learning using Scikit-Learn

  • Clustering using KMeans and DBSCAN
  • Dimensionality reduction using PCA and t-SNE
  • Collaborative filtering and recommendations

Workshop - Machine Learning Project from Scratch

  • Choosing, downloading & preparing a dataset
  • Feature engineering, model selection & tuning
  • Practical tips for training better models faster

Data Science & Machine Learning Bootcamp Recap

  • Recap of topics covered in the bootcamp
  • How to organize knowledge using mental maps
  • Tips and tricks to learn new topics quickly

Career Readiness Training Overview

  • Challenges in making a career transition
  • Overview of resources shared in the course
  • Common mistakes and how to avoid them

7.1 Researching Data Science Job Roles

  • Understanding data science job roles
  • Researching salaries & company reviews
  • Identifying the right job role to target

6.2 Crafting a Job Winning Resume

  • Writing a Bio with education and work history
  • Extracting information into a 1-page Resume
  • Customizing your Resume based on job roles

AMA - Aakanksha N S, ML Engineer at Snap

  • Data science & ML in the real-world
  • Importance of projects & blog posts
  • How to find your first data science job

Assignment 11 - Write Your Data Science Resume(s)

  • Research and identify your target job roles
  • Write your bio and data science Resume(s)
  • Complete your hiring profile on Jovian

7.3 Building Your Professional Profile

  • Improving LinkedIn, GitHub, and Jovian profiles
  • Writing blog posts and sharing your work online
  • Improving, documenting & publishing your projects

Preparing for Data Science Interviews

  • How employers shortlist & evaluate candidates
  • How to prepare for non-technical interviews
  • How to prepare for technical interviews

AMA - Aditya Prasad, Principal Data Scientist at Dream11

  • Making a career transition to data science
  • How to learn on the job & keep improving
  • What employers look for during interviews

Assignment 12 - Improve Your Professional Profiles

  • Improve your LinkedIn profile for job readiness
  • Improve your Medium profile to showcase blog posts
  • Improve your GitHub profile to showcase projects

7.5 Applying for Jobs the Right Way

  • How to ask for referrals from working professionals
  • How to send cold emails to recruiters & employers
  • How to keep track of your job application pipeline

7.6 Finding Part-Time and Freelance Work

  • How, when & where to look for part-time work
  • How to write proposals and set expectations
  • How to deliver great work and resolve conflicts

AMA - Kartik Godawat, Founder & ML Consultant, DeepKlarity

  • Making a career transition to data science
  • Tips for self-learning and staying motivated
  • Balancing Kaggle, freelance and side projects

Assignment 13 - Cold Emails and Cover Letter

  • Write a cover letter for job applications
  • Write a cold email template for referrers
  • Write a cold email template for employers

7.7 Rejection, Feedback and Improvement

  • How to deal with shortlisting & interview rejections
  • How to ask for and react to constructive feedback
  • How to continue learning while applying for jobs

Mock Interview and Graduation Day

  • Mock interview preparation guidelines
  • Graduation day preparation guidelines
  • Recap, next steps, and ongoing support

AMA - Nishant Poddar, Data Engineer at Solita

  • Learning while working full time
  • Preparing for job interviews
  • How to handle rejections

Assignment 14 - Hiring Profile Presentation & Video

  • Create your hiring profile presentation
  • Write a script for your hiring profile video
  • Record & publish your hiring profile video

Data Science Mock Interview

  • Introduce yourself & answer general questions
  • Talk about your best data science project(s)
  • Answer technical data science & ML questions

6.6 Window Functions in SQL

  • Syntax and use cases of window functions
  • Aggregation, ranking, and value functions
  • Advanced windowing with rows & ranges

6.7 Advanced Topics in SQL

  • Working with dates and strings
  • Advanced clauses and functions
  • Stored procedures and recursion

Web Development with Python

  • Getting Started with GitHub, Replit & Flask
  • Web development with HTML, CSS & Bootstrap
  • Cloud deployment and domain configuration

Database-Driven Web Applications

  • Connecting Flask apps to a cloud DB
  • Rendering dynamic database-driven pages
  • Saving form responses to database

How to Finish Projectsoptional

  • Principles for scoping projects
  • Common objections to scoping
  • Linear work vs iterative work

Assignment - Advanced SQL Practiceoptional

  • Window Function Syntax
  • Date, Aggregate & Ranking Functions

Solving Programming Challengesoptional

  • Finding practice problems online
  • Approaching LeetCode problems
  • Debugging and fixing errors

Recommendations using Collaborative Filteringoptional

  • Downloading a movie ratings dataset
  • Representing movies and users as vectors
  • Training a recommendation model with FastAi

Dashboarding with Power BIoptional

  • Installing Power BI and importing data
  • Answering questions using visualizations
  • Publishing interactive dashboards online

Deploying a Machine Learning Modeloptional

  • Create a Simple Web app using Flask
  • Run the model locally on your machine
  • Publish the Webpage using Render

Assignment - Business Case Studyoptional

  • Understand the business problem
  • Analyze the business problem
  • Identify & propose a solution to the problem

Lesson - Solving SQL Challengesoptional

  • Finding practice problems online
  • 3 Step Approach for solving SQL problems
  • Approaching Stratascratch, LeetCode & Hackerrank problems