Software that Scales
Software that Scales
  • 15
  • 2 783

วีดีโอ

My Secret to Be a World-Class Developer (Day 14 of 100 to Scale)
มุมมอง 1432 ชั่วโมงที่ผ่านมา
If you want to become a truly remarkable software developer, having a high level of energy is key. In this video, I am teaching what I am doing to keep that high level of energy every single day.
How to Cut By 10x Your Request Latency (Day 13 of 100 to Scale)
มุมมอง 334 ชั่วโมงที่ผ่านมา
How to Cut By 10x Your Request Latency (Day 13 of 100 to Scale)
I suck at speaking... but I'm getting better (Day 12 of 100 to Scale)
มุมมอง 3047 ชั่วโมงที่ผ่านมา
Learning to speak effectively is one of the most powerful skill you can develop to grow you career and have a bigger impact. In this video, I'm sharing my top 5 tips on how to improve how you speak. Vinh Giang TH-cam channel: www.youtube.com/@askvinh STAGE Academy: stageacademy.mykajabi.com/ (not an affiliate link, I just genuinely love this guy)
The world’s fastest protocol you must know (Day 11 of 100 to Scale)
มุมมอง 1.2K9 ชั่วโมงที่ผ่านมา
gRPC is one of the most efficient way of communicating between services. In this video, I introduce how you can use it for sending requests as well as streaming responses. GitHub repo: github.com/softwarethatscale/stock-grpc gRPC Website: grpc.io/ Overview for gRPC on .NET: learn.microsoft.com/en-us/aspnet/core/grpc/?view=aspnetcore-8.0
The Biggest Issue With Event-Based Architecture (Day 10 of 100 to Scale)
มุมมอง 5412 ชั่วโมงที่ผ่านมา
Event-based architecture is great, but it can be tricky. Be careful of using the right patterns or you might be loosing events! In this video, I teach about how you can use the Transactional Outbox Pattern to make sure you don't loose events.
The Power of Messaging with Google Pub/Sub (Day 9 of 100 to Scale)
มุมมอง 6212 ชั่วโมงที่ผ่านมา
Messaging is an important part on building a scalable and reliable system. Learn how you can use Google Pub/Sub to build a worker queue, an event bus and a distributed transaction.
Modular Monolith Is A Scam! (Day 8 of 100 to Scale)
มุมมอง 77316 ชั่วโมงที่ผ่านมา
Modular monolith is often presented as an alternative to microservices but this is a scam! Let me tell you why.
Tracing With Open Telemetry & Zipkin (Day 7 of 100 to Scale)
มุมมอง 3419 ชั่วโมงที่ผ่านมา
Tracing is one of the most important tool to know how to use when debugging a production issue. Learn how to use Open Telemetry and Zipkin to know more about your latency. GitHub repo: github.com/softwarethatscale/prime-number-demo/tree/part-06/tracing Open Telemetry: opentelemetry.io/ Zipkin: zipkin.io/
Find Your Bottlenecks With Load Testing Using K6 (Day 6 of 100 to Scale)
มุมมอง 4721 ชั่วโมงที่ผ่านมา
Load testing is the best way to find what are your bottlenecks, know your limit and that you have no performance regression. Let me show you how you can use K6 to super easily write a load test for your API. GitHub repo: github.com/softwarethatscale/prime-number-demo/tree/part-05/load-testing K6 Website: k6.io/
Monitoring like Sauron with Grafana & Prometheus (Day 5 of 100 to Scale)
มุมมอง 81วันที่ผ่านมา
Good monitoring is about saving time, finding issues quicker and acting before everything falls apart. This is about a great monitoring stack: Grafana and Prometheus. Learn how you can collect metrics and build great dashboards. GitHub demo repo: github.com/softwarethatscale/prime-number-demo/tree/part-04/monitoring You can also use Grafana Cloud so that you do not need to host it yourself: gra...
The Serverless Dream Team Terraform + Cloud Run (Day 4 of 100 to Scale)
มุมมอง 49วันที่ผ่านมา
Learn how to build a dream serverless team using Google Cloud, Cloud Run and Terraform. GitHub demo repo: github.com/softwarethatscale/prime-number-demo/tree/part-03/terraform-cloudrun Terraform Cloud Run resource: registry.terraform.io/providers/hashicorp/google/latest/docs/resources/cloud_run_v2_service Terraform Google Serverless NEGs module: registry.terraform.io/modules/GoogleCloudPlatform...
How Terraform makes your life easier (Day 3 of 100 to Scale)
มุมมอง 61วันที่ผ่านมา
Terraform is an infrastructure-as-code tool that allows you to easily review and replicate any infrastructure change into your environments. Use it before making a mistake that can cost you a bad mistake! GitHub demo repo: github.com/softwarethatscale/prime-number-demo/tree/part-02/terraform Terraform install guide: developer.hashicorp.com/terraform/tutorials/aws-get-started/install-cli
Google best serverless service every developers should know (Day 2 of 100 to Scale)
มุมมอง 164วันที่ผ่านมา
Cloud Run is a Google Cloud service that allows you to run fully managed containers with some really cool features like auto-scaling and canary deployment out of the box. Let me show you how to run any application on it so that it can scale like crazy.
100 Days of Free Software Development Training!!! (Day 1 of 100 to Scale)
มุมมอง 24414 วันที่ผ่านมา
In the next 100 days, I will teach every single day about a new topic from system design, software architecture, cloud architecture or general advices for software developers. Like and subscribe to follow along and let me know in the comments what would you like me to cover?

ความคิดเห็น

  • @xpsprogamer3691
    @xpsprogamer3691 3 ชั่วโมงที่ผ่านมา

    Since I'm unfamiliar with the GCP services and cloud infra - It's hard to understand what each service does in the video. It might be helpful to explain the purpose of each cloud service.

    • @SoftwareThatScales
      @SoftwareThatScales 34 นาทีที่ผ่านมา

      This is my bad for not mentioning it, this is the continuation of the Cloud Run video: th-cam.com/video/L9xUK-9GWXM/w-d-xo.html This one is turning what I've explained into infrastructure as code. It will make much more sense afterwards.

  • @xpsprogamer3691
    @xpsprogamer3691 4 ชั่วโมงที่ผ่านมา

    Excited to see where this goes :D

  • @daliborilic5358
    @daliborilic5358 5 ชั่วโมงที่ผ่านมา

    ...and I'd recommend some eye drops, your eyes seem like they are either dried and a bit bloodshot from watching the screens for so long, or you smoked a doobie. Great advice, thank you!

    • @SoftwareThatScales
      @SoftwareThatScales 3 ชั่วโมงที่ผ่านมา

      I appreciate the feedback, thank you. My eyes were really bad that day. I get that sometimes and always have to swear I took nothing 🤣

  • @HonzaJenicek
    @HonzaJenicek 8 ชั่วโมงที่ผ่านมา

    Your channel randomly popped up on my recommended feed. I love the idea, the videos are great and I'll definitely watch more!😄Keep it up

    • @SoftwareThatScales
      @SoftwareThatScales 7 ชั่วโมงที่ผ่านมา

      Thank you so much! What other topics would you like me to cover? What are you struggling with?

  • @imshivashankaran
    @imshivashankaran 8 ชั่วโมงที่ผ่านมา

    Hey There, love your content ❤ I have an idea/suggestion, how do i contact you ?

    • @SoftwareThatScales
      @SoftwareThatScales 7 ชั่วโมงที่ผ่านมา

      @@imshivashankaran Thank you so much for the love! You can contact me at benoit@softwarethatscale.com (be carefully there is no s in the domain).

  • @ash_ithape
    @ash_ithape 9 ชั่วโมงที่ผ่านมา

    100% agreed, good communication is the most important skill to have as a software developer.

  • @sathya3596
    @sathya3596 วันที่ผ่านมา

    GREAT JOB!

  • @SajjadAhmed-lc2dr
    @SajjadAhmed-lc2dr วันที่ผ่านมา

    Thank God I found this mine of gold

    • @SoftwareThatScales
      @SoftwareThatScales วันที่ผ่านมา

      Appreciate the support! What other topics would you like me to cover? What are you struggling with the most?

  • @shariarshakhawat
    @shariarshakhawat 2 วันที่ผ่านมา

    Subscribed to the channel. I am going to take this challenge from today. Hopefully I will be able to catch up with your pace.

  • @cloudboogie
    @cloudboogie 5 วันที่ผ่านมา

    Just because you load balance requests to replicated monolith, it doesn't suddenly become equivalent to micro-services based application. It doesn't have to worry about network partition, graceful degradation, data denormalization and about a thousand of other things. If you think that micro-services are a solution to a technical issue you are wrong. They were invented to solve scaling of organizations. And since it's a technical solution to a human issue, they fail by definition. But of course, you can throw 200 engineers into a problem and eventually they'll manage to make it work. For any small company that's not ready to create a plethora of SRE, platform engineering and ops teams , going full micro-service based approach is a suicide.

    • @SoftwareThatScales
      @SoftwareThatScales 4 วันที่ผ่านมา

      Microservices doesn't have to be bloated. They can be kept simple, but it does require a team with a high level of proficiency with them. Nevertheless, I would never use microservices without a platform with a high number of users already using a monolith.

  • @karanchauhan-j7b
    @karanchauhan-j7b 5 วันที่ผ่านมา

    helpful😊

  • @karanchauhan-j7b
    @karanchauhan-j7b 5 วันที่ผ่านมา

    bruh love form india

  • @ruhitarman2677
    @ruhitarman2677 5 วันที่ผ่านมา

    Why not use a hybrid model? If a module is taking too many resources, that module can be separated and used as a microservice, while other modules can be kept within a modular monolith architecture. This way, we can balance scalability and performance, ensuring that resource-intensive components are isolated for independent scaling, while simpler or less demanding parts of the application remain in the monolith for easier management. This approach combines the best of both worlds, reducing complexity and avoiding unnecessary overhead, while enabling flexibility for future scaling and system evolution.

    • @stgogm
      @stgogm 5 วันที่ผ่านมา

      @@ruhitarman2677 👏👏👏

    • @SoftwareThatScales
      @SoftwareThatScales 4 วันที่ผ่านมา

      It is always better to start simple and extract into microservices when there is an actual business need. I've seen a few examples of people migrating fully to microservices and it never ends well. I've even seen a big company throw out a $100M rewrite project because it was not going to be sustainable.

  • @Gringohuevon
    @Gringohuevon 5 วันที่ผ่านมา

    Microservices are a scam

    • @stgogm
      @stgogm 5 วันที่ผ่านมา

      @@Gringohuevon the have their uses but it's not a silver bullet

    • @SoftwareThatScales
      @SoftwareThatScales 9 ชั่วโมงที่ผ่านมา

      th-cam.com/video/8YS8vBuzee4/w-d-xo.html

  • @forinda
    @forinda 6 วันที่ผ่านมา

    I always wonder how joins work with M/Services Let's say users service and Billing/Blogs and the fact that you can use Mongo for users and PG for other services. Assuming blog also has comments how do you handle joins and the F_key constraints I see a lot of network requests. Until I understand this I still believe small scale apps should be monoliths

  • @marksto6581
    @marksto6581 6 วันที่ผ่านมา

    Thus, the Modular Monolith is not a scam. Perfect. Thanks for a clickbatey title! The point behind the Modular Monolith is to start with it first, extracting parts into separate services along the way only when it's necessary. And it is not always necessary, per se, so you might not end up with a full-blown microservices zoo when following this path. And this is awesome, since usually you do not need to have everything distributed and eventually consistent since day 1. P.S. In Clojure (and some Python) we tend to use a so-called Polylith architecture for large multi-service projects. It's a glorified Modular Monolith with all the benefits of a monorepo and handy tooling for things like workspace consistency checks and incremental testing. You'll lose all or some of these, if you start building it another way around, splitting everything on all architectural levels (static source code, logical/functional components, deployment).

    • @SoftwareThatScales
      @SoftwareThatScales 6 วันที่ผ่านมา

      Thanks for sharing your experience with it 🙏 My main point is they are both the same architecture outside of the fact one goes through the network and the other doesn't. You can build a messy coupled modular monolith as well. It's just an implementation detail and you have to treat it as a monolith (lots of coupling between modules) or microservices (very little coupling). There is always the in between, which is what most people have to go through before thinking about splitting it.

    • @stgogm
      @stgogm 6 วันที่ผ่านมา

      Totally agree here. Jumping to microservices at the start is most likely suicide, unless you have a big enough team. Going from monolith > modular monolith > microservices is a more sustainable way to grow a backend. Having a clear set of rules for when and how is also essential and that applies to any kind of architecture.

    • @marksto6581
      @marksto6581 6 วันที่ผ่านมา

      @@SoftwareThatScales I would insist that coupling in your system is an orthogonal question. The high coupling problem does not get magically solved just by splitting your code into microservices, which is a deployment (!) architecture more than anything. The thing that really helps to achieve "low coupling, high cohesion" quality of your system, is a great design effort with regards to separating things out (hopefully, along the natural seams), distilling the abstractions (components' interfaces) and naming these properly.

    • @SoftwareThatScales
      @SoftwareThatScales 6 วันที่ผ่านมา

      @marksto6581 Oh I misspoke when I said microservices, I meant splitting modules in a low coupling "microservices style", totally agree

  • @krazyesko
    @krazyesko 10 วันที่ผ่านมา

    invest to a mic that reduce background echo - < just an advice

    • @SoftwareThatScales
      @SoftwareThatScales 10 วันที่ผ่านมา

      Thank you for letting me know. Unfortunately the first two videos have a pretty bad echo but it's fixed in all the next ones.