Skip to main content

Intermediate Software Engineering Fundamentals

5h 2m 52s
English
Paid

The course "Fundamental Principles of Software Development for Middle Developers" serves as a seamless progression from the beginner's program. Initially, we covered programming basics and took introductory steps into practical coding. Now, our objective is to empower you to transition from simple code examples to developing fully functional applications, while gaining confidence in your role as a mid-level developer. We will continue to focus on core principles, but with an emphasis on advanced topics that will enhance your technical knowledge and equip you with a comprehensive skill set needed for real-world projects.

Course Objectives

Throughout the course, you will:

  • Learn how to develop frontends for your own backend services, enhancing your full-stack development skills.
  • Master practical applications of JavaScript and TypeScript, two essential programming languages for modern web development.
  • Comprehend proper API design and application architecture, which are crucial for building scalable and efficient software solutions.
  • Gain hands-on experience in transforming business concepts into functional code and detailed specifications.
  • Acquire the ability to describe interfaces and generate documentation for APIs, ensuring clear communication and effective use.
  • Become familiar with data modeling and database management, key components of application development.
  • Engage in larger project work, both independently and as part of a team, to simulate real-world professional environments.
  • Challenge yourself with a final independent project to apply the skills and knowledge gained throughout the course.

Course Outcome

This course is meticulously designed to elevate you to the level of a middle developer. By the end of the program, you will have a thorough understanding of application structure, architecting solutions, and managing data effectively, preparing you for success in your software engineering career.

About the Author: Caleb Curry

Caleb Curry thumbnail
When I started my career in the field of development, I was completely confused. I didn't know what exactly to study, what to expect, and how to truly improve. I really wished there was someone by my side who could help build the path to success. Over time, I realized: mastering technologies is only part of the task. The real challenge lay in discipline, in understanding what exactly needs to be studied, and in maintaining self-confidence. Today, more than 10 years later, I am still passionate about programming and enthusiastically learning new technologies. But now I learn not only from successes but also from my mistakes. My mission is to become a guide for those who are now at the same stage I once was. It doesn't matter where you come from, how old you are, or what experience you have: I am sure that everyone is capable of mastering programming and changing their life for the better.

Watch Online 30 lessons

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 30 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: 1.1 - Introduction
All Course Lessons (30)
#Lesson TitleDurationAccess
1
1.1 - Introduction Demo
06:35
2
1.2 - Stashing Local Changes with Git
09:51
3
1.3 - Tags and Branches
09:54
4
1.4 - Forks vs Cloning
06:44
5
1.5 - Starting Our API (Start Following Along)
08:58
6
1.6 - Code Structure Overview
07:39
7
1.7 Creating multiple Apps
13:02
8
1.8 - Django REST Framework
10:46
9
1.9 - Reviewing our Endpoints
12:24
10
1.10 - Nesting Data in an Object
09:44
11
2.1 - Intro to Docker
10:52
12
2.2 - Docker Images, Containers, Volumes
09:57
13
2.3 - Database Concepts
13:01
14
2.4 - Database Relationships and Design
14:22
15
2.5 - Database Migrations
15:16
16
2.6 - Django ORM with Postgres
08:26
17
2.7 - Environment Variables
09:46
18
2.8 - ORM Relationships and Migrations
09:04
19
2.9 - Updating our Endpoints
09:04
20
2.10 - Nested Data in Serializer
08:53
21
3.1 - Introduction
10:09
22
3.2 - Retrieving Nested Data
11:24
23
3.3 - URL Parameters
04:53
24
3.4 - Pagination
10:54
25
3.5 - Pagination with Offset
05:42
26
3.6 - Cursor Pagination
09:26
27
3.7 - Auth
10:25
28
3.8 - Registration
14:18
29
3.9 - Refresh Tokens and Options
06:53
30
3.10 - User Owned Data
14:30
Unlock unlimited learning

Get instant access to all 29 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription