(2-Day) Data Science for Developers

Beginner-level course for developers introducing Data Science, Analytics and Machine Learning. Learn how to extract value from your data, both theoretically and in practice, using a range of tools and techniques.

In this special two-day beginner-intermediate course, you will gain practical data science experience under the guidance of an industry expert. You will learn how to structure a data science project which will significantly increase your chances of producing valuable work.

We will complement this with technical descriptions of a range of techniques, from deriving the decision tree algorithm through to an introduction to deep learning. You will learn different ways of scoring model performance and how to avoid the scourge of data science, overfitting.

The goal of this course is to expose you to as many techniques as possible whilst explaining best practices to avoid common pitfalls. At the end of the two days, you will have the ability to talk about data science with confidence and begin to work on data science projects.

Who Will Benefit?

This course is aimed towards developers with some experience of software development and some experience in Python. We will avoid complex mathematics, preferring visualisation and experimentation, but high-school mathematics knowledge is required.

One-to-one help will be provided for those that are less experienced, but I would recommend learning Python before the training. All new code, classes, libraries and frameworks will be explained in full by the instructor.

No Data Science experience is expected.

Course Outline

  • How data science fits within a business context
  • Data science processes and terminology
  • Information and uncertainty
  • Segmentation
  • Modelling
  • Overfitting and generalisation
  • Holdout and validation techniques
  • Optimisation and simple data processing
  • A range of regression techniques
  • A range of Classification techniques (Logistic, SVM, KNN, Decision Trees, Naive Bayes, Gaussian Processes, etc., etc.)
  • A range of Clustering techniques (NN, Hierarchical, K-Means, etc.)
  • Numerical and visual model evaluation
  • Neural networks/Deep learning
  • Stacked denoising autoencoders
  • Convolutional neural networks
  • Ensemble methods
  • In-class competitions if time allows.


  • All attendees must bring their own laptop
  • The practical material will be delivered through an online environment (i.e. through your web browser). Offline use requires Docker.
  • All content will be delivered to you by email.