Kotlin Backends built for the real world.

Master Kotlin Spring Boot development by building a production-grade backend for a chat app in over 120 video lessons and 20h of content

System Design

PostgreSQL

Redis

Authentication

Security

Notifications

CI/CD

You want to…

  • ... learn to build ANY backend using your favourite language Kotlin?
  • ... go beyond simple REST principles and learn about a system design made to scale?
  • ... build backends for a large user base?
  • ... learn about databases, caching, message queues, web sockets and more advanced principles?
Enroll now
In collaboration with

Developers from these companies are learning with Philipp’s Courses…

Accenture
dpd
Allegion
IBM
Jetbrains
Siemens
Check24
Lovoo

After this course, you will…

Deploy Spring Boot instances via CI/CD pipelines

Deployment is simple once automated. In this course, you’ll learn to implement a GitHub Actions pipeline that brings it online with a simple GitHub push.

Confidently build apps for 6 platforms

You won’t just work on the backend code itself, but also learn about how the entire server infrastructure needs to look like to support the level of scale you need.

Confidently build backends built for a scaling user base

This course does NOT focus on building quick hobby backends – instead you will learn real-world practices that prepare your backend for a growing user base.

Start Learning

Built to Scale.

This course focuses on teaching you build backends for a real scaling user base – and how you can come up with a system design yourself that matches your app’s unique requirements.

Spring Security

Use Spring Security & JWT to build a secure authentication system for your users.

PostgreSQL

Structure an SQL database with 10 tables and relations to save complex user data.

Redis

Implement caching strategies with Redis to ensure fast data access for any client.

RabbitMQ

Ensure no important event gets lost by relying on RabbitMQ message queues.

WebSockets

Exchange messages with clients in real-time via WebSockets.

Firebase Admin SDK

Send push notifications to Android & iOS clients via the Firebase Admin SDK.

Mailing

Send transactional emails with Mailgun, for example for forgot password emails.

File Storage

Learn to efficiently store files remotely and work with pre-signed URLs.

Start learning

These 120+ videos are waiting for you

Get Instant Access to 20+ Hours of Exclusive Video Material

1. Prerequisites
    • Disclaimer Before Watching
    • What We’ll Build
    • How You Get the Most Out of This Course
2. System Design
    • Understanding Our Architecture & Module Structure
    • Project Creation
    • Managing Gradle Dependencies With Version Catalogs
    • Creating the Gradle Modules
    • Sharing Config With the Build-Logic Module
    • Kotlin Common Convention Plugin
    • Spring Boot Service Convention Plugin
    • Spring Boot App Convention Plugin

3. Multi-Module Setup
    • Understanding Our Architecture & Module Structure
    • Project Creation
    • Managing Gradle Dependencies With Version Catalogs
    • Creating the Gradle Modules
    • Sharing Config With the Build-Logic Module
    • Kotlin Common Convention Plugin
    • Spring Boot Service Convention Plugin
    • Spring Boot App Convention Plugin

4. User Service
    • Setting up the User Domain Models
    • Supabase Setup
    • Creating the User Service Schema
    • Creating the User Database Entity
    • Building the User Repository
    • Password Security With BCrypt
    • User Registration DTOs & Mappers
    • User Registration Service Logic
    • Understanding JWT Token Refresh
    • Building the JWT Service
    • Refresh Token Storage System
    • User Login Service Logic
    • Logging In Users
    • Token Refresh Service Logic
    • Token Refresh API Endpoints
    • Logging Out Users
    • Email Verification Token Database Setup
    • Generating Email Verification Tokens
    • Email Verification Service LogicEmail Verification API Endpoints
    • Password Reset Token Database Setup
    • User Registration DTOs & Mappers
    • User Registration Service Logic
    • User Registration API Endpoint
    • Understanding JWT Token Refresh
    • Building the JWT Service
    • Refresh Token Storage System
    • User Login Service Logic
    • Logging In Users
    • Token Refresh Service Logic
    • Token Refresh API Endpoints
    • Logging Out Users
    • Email Verification Token Database Setup
    • Generating Email Verification Tokens
    • Email Verification Service Logic
    • Email Verification API Endpoints
    • Token Refresh API Endpoints
    • Password Reset Token Database Setup
    • Password Reset Service Logic
    • Why & When to Use Rate Limits
    • Connecting to Redis
    • Email Rate Limiting
    • Resolving the True Client IP
    • IP-Based Rate Limiting System
    • JWT Authentication Filter
    • Spring Security Config

5. Sending Emails From the Notification Service
    • Spring Security Config
    • User Events
    • Setting up Rabbit
    • MQ Queues
    • Building the Event Publisher
    • Resend Verification Email Mechanism
    • Listening to User Events
    • Creating HTML Email Templates With Thymeleaf
    • Email Template Service
    • Mailgun Setup
    • Building the Email Service

6. Building the Chat Service
    • Creating the Chat Domain Models
    • Chat Service DB Setup
    • Chat Participants Repository
    • Chat Repository
    • Chat Message Repository
    • Creating Chats
    • Chat Management API Endpoints
    • Creating Participants
    • User Event Integration For Chat
    • Adding & Removing Participants From a Chat
    • Building the Message Service
    • Message Management API
    • Message Events & Notifications
    • Redis for Message Caching
    • Loading Chats For Users
    • Building the WebSocket Handler – Connection Management
    • WebSocket Message Handling
    • Broadcasting Chat Updates
    • WebSocket Ping/Pong Mechanism
    • Handling Closed Connections
    • Supabase Storage Integration
    • Profile Picture Service Implementation
    • Profile Picture API Endpoints

7. Push Notifications
    • Project Setup
    • Linking Your Apple Developer Account
    • Creating the Firebase Notification Client
    • Device Token Database Setup
    • Implementing the Push Notification Service
    • Device Token API Endpoints
    • Retry Mechanism For Failed Deliveries
    • Triggering Push Notifications

8. Deployment
    • Preparations
    • Base Setup for VPS Server
    • Deployment & GitHub Actions Automation

Enroll now

Philipp Lackner has over 14 years of experience in the software field. Over the past years, he built a following of over 250,000 developers on social media who trust his work. With over 25,000 sold copies of his courses and 1,000h+ spent for teaching Android concepts, he already helped hundreds of thousands people to learn practical skills they can immediately apply.

He has a degree in computer science, however it didn’t go as expected. The amount of theory that was taught in university made him think about a better approach to learn what is really needed in the real world. Over time, Philipp found mentors who taught him exactly that in a practical setting. That was the game changer for his career.

After having worked for dozens of companies around the globe as a consultant, Philipp now wants to teach other Kotlin developers what really counts for becoming an outstanding developer in today’s competitive industry.

800
h
+

Of created Android content

15.000
+

Enrolled students

14
+

Years of software dev

Resultss & case studies from our students

Martin Kiper convinced his interviewers thanks to Philipp’s courses.

Martin
,
Argentina
🇦🇷
Before Learning With PL Coding:
  • Felt lost in his own projects
  • Didn't feel confident in Android interviews
After Learning With PL Coding:
  • Confidently nailing coding interviews
  • Feels confident about advanced topics like multi-module architecture
  • Convinced employers of having a higher seniority than before
Rahul
,
Canada
🇨🇦
Before Learning With PL Coding:
  • Android developer in India
  • No real hands-on experience on developing complex apps
  • Low salary
After Learning With PL Coding:
  • Got a well-paying job in Canada
  • Understood the new company's tech stack the moment he joined
  • Confidently develops real-world applications
Pavel
,
Croatia
🇭🇷
Before Learning With PL Coding:
  • Wasn't able to build his own apps
  • Felt insecure about architecture, Compose and more advanced topics
After Learning With PL Coding:
  • Approaches projects for himself and clients confidently
  • Truly understands the entire relevant Android tech stack

What people are saying
about Philipp’s courses

Real-world insights, structured learning, and expert mentorship that transform careers.

"This course brought me back on track really fast and Philipp really took care to convey general knowledge that can be applied on every Android project."

Matthias Kerat

"I have been using modularization for a long time, but I learned new cool stuff and tricks in your course that will change my way of thinking about how I should design my code."

Amer Hadi

"What’s unique about Philipp, that he cares about those who are looking for help, he answers to PM’s, I’ve never had experience like that."

Ozzy

"Your course let me also the opportunity to enhance my jetpack compose and unit test skills . So, I can consider me super satisfied. Please, don’t stop mentoring."

Vitanio Daniele

"Taking any of Philipp’s courses makes you go from 0 to almost 100 in understanding the concepts in no time. He explains the basics so well and teaches real world application use cases."

Messy Limes

"I’ve had struggles working with big projects, but after this course I feel so much more confident in my skills in building large robust apps."

Luka Luković

"I recently completed this course, and I couldn't be more thrilled with the experience! This course exceeded my expectations in every way. Philipp's real-world experience was evident. He covered everything from Ul design to integrating APls and managing databases,... Overall, this course was an incredible learning journey. I highly recommend it to anyone looking to start or advance their career in Android development!"

Erdem Kaya

"Philipp is an amazing developer who explains the most difficult topics in a way that's digestible and it stays with you. Everything is through practical examples. He's someone you'd want to go to, to understand something that you can't understand"

Omer Quadri

"This is one of the best courses for android development I have taken, not only we get to learn a lot but we also get an insight of where the industry is heading and how to approach problems and projects."

Jose Agustin Reinoso

View all
Total value:
249€
Launch Deal:
179€
Spring Sale
:
#
You save
#
Enroll now
30% On All Courses & Bundles
We celebrate our website relaunch! Discount is already applied in checkout!
07
Day
:
07
Hours
:
07
Minutes
:
07
Seconds
FAQ

Frequently
asked questions

What are the prerequisites to take this course?
Will I get a certificate on completion?
What does "in collaboration with JetBrains" mean?
Is there a money back guarantee?
Do I get lifetime access?