What You Will Learn

What you need to study to become a professional software developer

This course will structure your knowledge and offer learning tips and books recommendations authored by recognised experts.


Introduction to most relevant programming languages and frameworks required to develop enterprise web applications in the world of Java

Java programming language, Spring framework, JavaScript and Angular framework.


Technologies that every software developer needs to know

Version control systems (you will learn basics of Git), databases (you will learn basics of relational databases - we will see PostgreSQL in action), networks and infrastructure (you will learn basics behind networks, virtual machines and containerisation: extremely popular Docker).


Fundamental techniques and practices that distinguish mediocre software developers from professional software developers

Clean Code, SOLID principles, Extreme Programming and more.


A sample enterprise-class web application with a complete source code and business case explanation


Most relevant terms and methodologies that we need in our work on a daily basis

You will learn Scrum, you will see how much value Extreme Programming brings in, how important effective teamwork is and what distinguishes wonderful teams from random people that only happen to work together.


All of this is packaged in a 13 hours on-line course, presented by a senior software developer with 15 years of professional experience, passionate about software development and problem solving.

This Course Is for You If

✔ You are a student of any programming language before your first IT job.
✔ You are a junior software developer who wants to become a senior software developer. 

Structure of the Course

1. In the first module we will start with talking about IT industry in general.
2. In the second module we will talk about our daily work - how we work in teams and how important teamwork is.
3. In the third module we will together set up a complete local development environment, and demo a sample enterprise-class web application - all to give you this impression of how it actually looks like.
4. In the fourth module we will have an introduction to the most essential technologies: programming in Java, Spring enterprise framework, frontend development (JavaScript and Angular), version control systems, databases, networks and infrastructure.
5. In the fifth module we will go through couple of more advanced topics, to inspire you and to give you strong foundation to further developing your skills.
6. We will finish this course with couple of practical tips about job interviews, sample tasks that you might expect on your first days at a new job, and couple of learning tips.

Complete source code for our sample enterprise web application, as well as the source code for all our exercises and coding tasks is available for free. All the necessary links to the source code, as well as all the references mentioned in this course to different books and articles, you will find in this free PDF document

What You Should Expect

13 hours of video content split into 6 modules
Holistic view of IT industry and enterprise software development
Exercises, coding tasks and coding screencasts that demonstrate many of the technical concepts in practice
Straightforward explanations of many of the fundamental techniques and principles illustrated with animated slides
Technologies: Java, Spring, JavaScript, Angular, Git, PostgreSQL, Docker

What You Should Not Expect

✔ This is not a strictly programming course.

In case you want to learn programming A to Z, for example in Java, this is not the course for you. However, this course will explain many of the fundamental techniques and will teach you how you can further study the technologies that we are covering in this course to become a professional software developer.

✔ This course is not for Mac users.

I assume that you have a PC with Windows operating system. In case you own a Mac, you will still benefit from most of the explanations and most of the exercises and all of the coding tasks. However you will not be able to directly repeat all the steps of local development environment setup. Also running a sample system will be even more challenging. Unfortunately I will not help you in case of a Mac.

Hi, I’m Bartosz Kaminski


I am a passionate senior software developer with 15 years of professional experience. I was a developer, an analyst, a designer, an architect and a team leader. I have worked with teams from all over the world for companies located in Poland, Norway, Denmark, Switzerland and USA.

My passions revolve around Clean Code, systems design and architecture, and most of all around solving problems.  

Course Curriculum

  Software Development With Passion: The Guide (5:35)
Available in days
days after you enroll
  Module 1: IT Industry (25:21)
Available in days
days after you enroll
  Module 2: Daily Work (52:45)
Available in days
days after you enroll
  Module 3: The Project (1:27:26)
Available in days
days after you enroll
  Module 4: Basics of Software Development (7:23:57)
Available in days
days after you enroll
  Module 5: Advanced Software Development (2:09:35)
Available in days
days after you enroll
  Module 6: Practicalities (32:34)
Available in days
days after you enroll

Select a pricing plan and sign up

Have a sneak peak at our daily work

Learn how we work in teams, what tools we are using, why teamwork is so important, how to achieve effective communication and how to build effective teams.

Check out a sample system

Get an idea how enterprise web applications look like, what kind of business cases they cover and how we approach analysis of business requirements.

Join me at hands-on exercises

Learn from practical exercises, coding tasks and coding screencasts that will visualise and demonstrate many of the ideas, technologies and techniques that we will cover in this course.

Frequently Asked Questions

When does the course start and finish?

The course starts now and never ends! It is a completely self-paced online course - you decide when you start and when you finish.


How long do I have access to the course?

How does lifetime access sound? After enrolling, you have unlimited access to this course for as long as you like - across any and all devices you own.


What if I am unhappy with the course?

We would never want you to be unhappy! If you are unsatisfied with your purchase, contact us in the first 30 days and we will give you a full refund.