
010 Unit test gRPC API with mock DB & Redis.mp4 - 265 MB

008 Email verification feature design DB and send email.mp4 - 169 MB

011 How to test a gRPC API that requires authentication.mp4 - 157 MB

009 Implement email verification API in Go.mp4 - 150 MB

006 How to send email in Go via Gmail.mp4 - 117 MB

003 Send async tasks to Redis within a DB transaction.mp4 - 88.8 MB

001 Implement background worker with Redis task queue.mp4 - 86.4 MB

004 How to handle errors and print logs for Async workers.mp4 - 76.9 MB

002 Integrate async worker to Go web server.mp4 - 68 MB

005 Some delay might be good for your async tasks.mp4 - 56.2 MB

007 How to skip test in Go and config test flag in vscode.mp4 - 24.7 MB

001 54-presentation-async-worker.pdf - 4.07 MB

006 trouble-shoot-gmail-app-password.pdf - 1.26 MB

010 Unit test gRPC API with mock DB & Redis_en.srt - 34.9 kB

001 Implement background worker with Redis task queue_en.srt - 28.2 kB

008 Email verification feature design DB and send email_en.srt - 27.1 kB

009 Implement email verification API in Go_en.srt - 22.6 kB

006 How to send email in Go via Gmail_en.srt - 21.9 kB

002 Integrate async worker to Go web server_en.srt - 20.8 kB

011 How to test a gRPC API that requires authentication_en.srt - 19 kB

004 How to handle errors and print logs for Async workers_en.srt - 16 kB

003 Send async tasks to Redis within a DB transaction_en.srt - 13.9 kB

005 Some delay might be good for your async tasks_en.srt - 9.88 kB

007 How to skip test in Go and config test flag in vscode_en.srt - 5.44 kB

010 How to create and verify JWT & PASETO token in Golang.mp4 - 184 MB

012 Implement authentication middleware and authorization rules in Golang using Gin.mp4 - 176 MB

003 Mock DB for testing HTTP API in Go and achieve 100% coverage.mp4 - 166 MB

004 Implement transfer money API with a custom params validator.mp4 - 93.6 MB

001 Implement RESTful HTTP API in Go using Gin.mp4 - 87.6 MB

006 How to handle DB errors in Golang correctly.mp4 - 73 MB

007 How to securely store passwords Hash password in Go with Bcrypt!.mp4 - 69 MB

011 Implement login user API that returns PASETO or JWT access token in Go.mp4 - 65.2 MB

008 How to write stronger unit tests with a custom gomock matcher.mp4 - 49.9 MB

005 Add users table with unique & foreign key constraints in PostgreSQL.mp4 - 49.6 MB

002 Load config from file & environment variables in Go with Viper.mp4 - 48.1 MB

009 19-presentation-paseto-vs-jwt.pdf - 48 MB

009 Why PASETO is better than JWT for token-based authentication.mp4 - 40.3 MB

001 11-presentation-gin.pdf - 4.49 MB

003 13-presentation-db-mock.pdf - 4.28 MB

002 12-presentation-config-viper.pdf - 4.15 MB

007 17-presentation-hash-password.pdf - 4.01 MB

012 22-presentation-gin-auth-middleware.pdf - 2 MB

011 21-login-api.pdf - 522 kB

012 Implement authentication middleware and authorization rules in Golang using Gin_en.srt - 45.4 kB

003 Mock DB for testing HTTP API in Go and achieve 100% coverage_en.srt - 39.9 kB

001 Implement RESTful HTTP API in Go using Gin_en.srt - 36.5 kB

010 How to create and verify JWT & PASETO token in Golang_en.srt - 34.4 kB

007 How to securely store passwords Hash password in Go with Bcrypt!_en.srt - 23.9 kB

009 Why PASETO is better than JWT for token-based authentication_en.srt - 22.4 kB

004 Implement transfer money API with a custom params validator_en.srt - 20.8 kB

005 Add users table with unique & foreign key constraints in PostgreSQL_en.srt - 20.6 kB

011 Implement login user API that returns PASETO or JWT access token in Go_en.srt - 20.2 kB

008 How to write stronger unit tests with a custom gomock matcher_en.srt - 18.7 kB

006 How to handle DB errors in Golang correctly_en.srt - 16.4 kB

002 Load config from file & environment variables in Go with Viper_en.srt - 13.5 kB

007 Store & retrieve production secrets with AWS secrets manager.mp4 - 179 MB

010 How to deploy a web app to Kubernetes cluster on AWS EKS.mp4 - 149 MB

005 Auto build & push docker image to AWS ECR with Github Actions.mp4 - 130 MB

009 How to use kubectl & k9s to connect to a kubernetes cluster on AWS EKS.mp4 - 120 MB

013 Auto issue & renew TLS certificates with cert-manager and Let's Encrypt.mp4 - 115 MB

014 Automatic deploy to Kubernetes with Github Action.mp4 - 114 MB

008 Kubernetes architecture & How to create an EKS cluster on AWS.mp4 - 99.2 MB

003 How to write docker-compose file and control service start-up orders.mp4 - 99.1 MB

001 How to build a small Golang Docker image with a multistage Dockerfile.mp4 - 70.8 MB

012 How to use Ingress to route traffics to different services in Kubernetes.mp4 - 58.2 MB

004 How to create a free-tier AWS account.mp4 - 37.3 MB

011 Register a domain & set up A-record using Route53.mp4 - 33.3 MB

002 How to use docker network to connect 2 stand-alone containers.mp4 - 25.9 MB

006 How to create a production database on AWS RDS.mp4 - 25.2 MB

008 30-presentation-kubernetes-cluster.pdf - 13.5 MB

001 23-presentation-minimal-docker-image.pdf - 1.72 MB

007 Store & retrieve production secrets with AWS secrets manager_en.srt - 35.2 kB

010 How to deploy a web app to Kubernetes cluster on AWS EKS_en.srt - 32.4 kB

005 Auto build & push docker image to AWS ECR with Github Actions_en.srt - 29.3 kB

008 Kubernetes architecture & How to create an EKS cluster on AWS_en.srt - 27.7 kB

003 How to write docker-compose file and control service start-up orders_en.srt - 24.6 kB

009 How to use kubectl & k9s to connect to a kubernetes cluster on AWS EKS_en.srt - 23.1 kB

014 Automatic deploy to Kubernetes with Github Action_en.srt - 20.9 kB

013 Auto issue & renew TLS certificates with cert-manager and Let's Encrypt_en.srt - 20.1 kB

001 How to build a small Golang Docker image with a multistage Dockerfile_en.srt - 18 kB

002 How to use docker network to connect 2 stand-alone containers_en.srt - 16.3 kB

011 Register a domain & set up A-record using Route53_en.srt - 15.5 kB

012 How to use Ingress to route traffics to different services in Kubernetes_en.srt - 15.2 kB

006 How to create a production database on AWS RDS_en.srt - 14.6 kB

004 How to create a free-tier AWS account_en.srt - 10.5 kB

external-links.txt - 103 B

013 Video-a-complete-overview-of-SSL-TLS-and-its-cryptographic-system.url - 52 B

002 Switch DB driver from libpq to pgx.mp4 - 176 MB

004 Docker compose port + volume mapping.mp4 - 98.2 MB

003 How to properly handle DB errors with pgx driver.mp4 - 84.3 MB

005 How to install & use binary packages in Go.mp4 - 58.7 MB

001 Upgrade and config sqlc with version 2 syntax.mp4 - 42.8 MB

002 Switch DB driver from libpq to pgx_en.srt - 25.1 kB

003 How to properly handle DB errors with pgx driver_en.srt - 12.7 kB

004 Docker compose port + volume mapping_en.srt - 12 kB

001 Upgrade and config sqlc with version 2 syntax_en.srt - 8.19 kB

005 How to install & use binary packages in Go_en.srt - 6.52 kB

007 What's next.html - 654 B

006 Hey, it's not the end yet!.html - 454 B

external-links.txt - 350 B

004 Pull-request-for-this-change.url - 72 B

007 Tech-Schools-Youtube-channel.url - 60 B

007 Tech-Schools-Twitter.url - 58 B

006 Tech-Schools-Discord-group.url - 51 B

007 Tech-Schools-Discord-group.url - 51 B

011 Deeply understand transaction isolation levels & read phenomena.mp4 - 152 MB

004 Use Docker + Postgres + TablePlus to create DB schema.mp4 - 139 MB

006 Generate CRUD Golang code from SQL Compare dbsql, gorm, sqlx & sqlc.mp4 - 135 MB

007 Write unit tests for database CRUD with random data in Golang.mp4 - 132 MB

009 DB transaction lock & How to handle deadlock in Golang.mp4 - 123 MB

012 Setup Github Actions for Golang + Postgres to run automated tests.mp4 - 114 MB

008 A clean way to implement database transaction in Golang.mp4 - 112 MB

002 Setup development environment on Windows WSL2, Go, VSCode, Docker, Make, Sqlc.mp4 - 99.1 MB

010 How to avoid deadlock in DB transaction Queries order matters!.mp4 - 77.1 MB

005 How to write & run database migration in Golang.mp4 - 74.6 MB

001 Design DB schema and generate SQL code with dbdiagram.io.mp4 - 66 MB

003 Setup Go and Visual Studio Code tools + theme.mp4 - 65.3 MB

011 09-presentation-transaction-isolation.pdf - 27.9 MB

006 04-presentation-sqlc-crud.pdf - 12.6 MB

008 06-presentation-db-transaction.pdf - 10.7 MB

005 03-presentation-db-migration.pdf - 6.67 MB

001 01-presentation-backend-master-class.pdf - 4.87 MB

004 02-presentation-docker-postgres-table-plus.pdf - 3.88 MB

012 10-presentation-github-action.pdf - 3.59 MB

004 trouble-shoot-root-does-not-exist.pdf - 291 kB

011 Deeply understand transaction isolation levels & read phenomena_en.srt - 44.5 kB

009 DB transaction lock & How to handle deadlock in Golang_en.srt - 38.3 kB

006 Generate CRUD Golang code from SQL Compare dbsql, gorm, sqlx & sqlc_en.srt - 32.4 kB

008 A clean way to implement database transaction in Golang_en.srt - 30 kB

007 Write unit tests for database CRUD with random data in Golang_en.srt - 29 kB

012 Setup Github Actions for Golang + Postgres to run automated tests_en.srt - 27.3 kB

004 Use Docker + Postgres + TablePlus to create DB schema_en.srt - 20.1 kB

010 How to avoid deadlock in DB transaction Queries order matters!_en.srt - 19 kB

005 How to write & run database migration in Golang_en.srt - 14.9 kB

001 Design DB schema and generate SQL code with dbdiagram.io_en.srt - 14.5 kB

002 Setup development environment on Windows WSL2, Go, VSCode, Docker, Make, Sqlc_en.srt - 13.3 kB

003 Setup Go and Visual Studio Code tools + theme_en.srt - 7.86 kB

external-links.txt - 1.39 kB

004 Troubleshooting-role-root-doesnt-exist.url - 106 B

002 Microsoft-documentation-page-Install-WSL.url - 77 B

006 Sqlcs-documentation-page.url - 77 B

004 Download-Docker-Desktop-available-for-Mac-Windows-Linux-.url - 71 B

004 Other-open-source-DB-clients.url - 70 B

001 Github-repository-of-the-course.url - 64 B

006 A-tour-of-Go-for-those-whos-new-to-the-language-.url - 53 B

005 How-to-make-a-beautiful-terminal-with-Oh-my-zsh-.url - 52 B

004 Join-Discord-group-to-chat-directly-with-me.url - 51 B

005 Join-Discord-group-to-ask-questions-directly.url - 51 B

006 Join-Discord-group-to-get-help-if-you-got-stuck.url - 51 B

001 Join-our-Discord-group-to-discuss-ask-questions-and-share-knowledge-with-each-other.url - 50 B

001 DB-diagram-website.url - 49 B

004 Table-Plus-website.url - 46 B

001 Learn-basic-Go-syntax-on-the-Tour-of-Go-webiste.url - 43 B

005 Learn-basic-Go-syntax-on-the-Tour-of-Go-website.url - 43 B

013 Partial update DB record with SQLC nullable arguments.mp4 - 129 MB

007 gRPC Gateway write code once, serve both gRPC & HTTP requests.mp4 - 119 MB

016 Write structured logs for gRPC APIs.mp4 - 115 MB

004 Define gRPC API and generate Go code with protobuf.mp4 - 106 MB

009 Automatic generate & serve swagger documentation from Go server.mp4 - 106 MB

001 How to manage user session with refresh token.mp4 - 103 MB

012 Run DB migrations directly inside Golang code.mp4 - 97.7 MB

015 Add authorization to protect gRPC API.mp4 - 96.9 MB

017 How to write HTTP logger middleware in Go.mp4 - 91.7 MB

002 Generate DB documentation page and schema SQL dump from DBML.mp4 - 66.4 MB

005 How to run a golang gRPC server and call its API.mp4 - 64 MB

006 Implement gRPC API to create and login users in Go.mp4 - 63.7 MB

014 Build gRPC update API with optional parameters.mp4 - 60.5 MB

011 Validate gRPC parameters and send humanmachine friendly response.mp4 - 58.5 MB

008 How to extract information from gRPC metadata.mp4 - 58.2 MB

010 Embed static front-end files inside Golang backend server's binary.mp4 - 45.6 MB

003 Introduction to gRPC.mp4 - 27.8 MB

001 37-presentation-session-refresh-token.pdf - 9.95 MB

003 39-presentation-grpc.pdf - 4.83 MB

016 52-presentation-grpc-logger.pdf - 4.59 MB

004 40-presentation-grpc-protobuf.pdf - 4.41 MB

008 44-grpc-metadata.pdf - 2.9 MB

005 41-presentation-grpc-server-evans-client.pdf - 1.98 MB

001 How to manage user session with refresh token_en.srt - 33.7 kB

007 gRPC Gateway write code once, serve both gRPC & HTTP requests_en.srt - 25.9 kB

013 Partial update DB record with SQLC nullable arguments_en.srt - 25.1 kB

004 Define gRPC API and generate Go code with protobuf_en.srt - 23.6 kB

011 Validate gRPC parameters and send humanmachine friendly response_en.srt - 23 kB

016 Write structured logs for gRPC APIs_en.srt - 22.7 kB

015 Add authorization to protect gRPC API_en.srt - 20.9 kB

006 Implement gRPC API to create and login users in Go_en.srt - 20.2 kB

014 Build gRPC update API with optional parameters_en.srt - 20 kB

009 Automatic generate & serve swagger documentation from Go server_en.srt - 19.4 kB

012 Run DB migrations directly inside Golang code_en.srt - 18 kB

010 Embed static front-end files inside Golang backend server's binary_en.srt - 15.8 kB

002 Generate DB documentation page and schema SQL dump from DBML_en.srt - 15.5 kB

017 How to write HTTP logger middleware in Go_en.srt - 15.5 kB

005 How to run a golang gRPC server and call its API_en.srt - 14.9 kB

008 How to extract information from gRPC metadata_en.srt - 13 kB

003 Introduction to gRPC_en.srt - 11 kB

external-links.txt - 552 B

004 Protocol-buffer-documentation.url - 82 B

007 Github-repository-of-gRPC-gateway.url - 70 B

007 gRPC-gateway-documentation-page.url - 70 B

004 gRPC-Go-Quick-Start.url - 69 B

010 Note-since-Go-v1.16-embedded-files-feature-is-included-in-the-language-so-no-need-statik.url - 63 B

008 Join-TECH-SCHOOLs-Discord-group.url - 51 B