How Big Tech Ships Code to Production

Поделиться
HTML-код
  • Опубликовано: 8 ноя 2023
  • Get a Free System Design PDF with 158 pages by subscribing to our weekly newsletter: bytebytego.ck.page/subscribe
    Animation tools: Adobe Illustrator and After Effects.
    Checkout our bestselling System Design Interview books:
    Volume 1: amzn.to/3Ou7gkd
    Volume 2: amzn.to/3HqGozy
    The digital version of System Design Interview books: bit.ly/3mlDSk9
    ABOUT US:
    Covering topics and trends in large-scale system design, from the authors of the best-selling System Design Interview series.

Комментарии • 49

  • @gekkogordon
    @gekkogordon 5 месяцев назад +10

    I'm an Agile project manager at a major financial institution, and it's incredible to witness our daily operations summarized in an impressive and efficient SDLC flow. Thank you!

  • @alwinsebastian7499
    @alwinsebastian7499 6 месяцев назад +46

    Often times convincing that a issue is fixed takes more time than actually fixing it.

  • @ApplyIT2021
    @ApplyIT2021 6 месяцев назад +5

    Concise video with the required information for newbies in less than 5 minutes.

  • @prashantjain9988
    @prashantjain9988 6 месяцев назад +5

    Quite close to what we do, just a small change, instead of deploying main/master to production, we create Release Branch with a cutoff of 1 week before rollout for UAT, stress testing and Marketing SignOff, then deploy that package.

  • @dushyantchaudhry4654
    @dushyantchaudhry4654 6 месяцев назад

    every single word you said is gold!!! nothing extra said nothing missed out

  • @TheTacoReview
    @TheTacoReview 3 месяца назад

    We automate our unit testing on PUSHes. So that PR only happens on tested code. We have automated functional tests and fuzzing on pre-prod code, before pushing to production. Good video!

  • @Fer_S.
    @Fer_S. 6 месяцев назад

    Great explanation!👏🏼👏🏼👏🏼
    Thanks Sahn 🎉

  • @rupeshsingh2203
    @rupeshsingh2203 4 месяца назад

    I learned so many concepts from you

  • @rafaelvschneider
    @rafaelvschneider 6 месяцев назад

    Nice video, well explained!

  • @STONEcreator999
    @STONEcreator999 6 месяцев назад

    Nice work!!!

  • @mohitamgaonkarmv
    @mohitamgaonkarmv 6 месяцев назад +1

    You are doing great work sahn lam.
    Most of the seniors in the IT field are not aware of this.

  • @quanghuy9854
    @quanghuy9854 5 месяцев назад

    That's great, we are applying that as well.

  • @rupeshsingh2203
    @rupeshsingh2203 4 месяца назад

    Thanks Sir
    You are great explained very clear

  • @dasnohvit
    @dasnohvit 5 месяцев назад

    This is an excellent video to show AI-Advocates the real complexity of the software industry, especially as an answer to the new mainstream phrase "IA will replace developers".

  • @ziaurrezajoy
    @ziaurrezajoy 6 месяцев назад +1

    Thank you

  • @rizkiinsankamil1742
    @rizkiinsankamil1742 6 месяцев назад

    well explained!

  • @raj_kundalia
    @raj_kundalia 6 месяцев назад

    thank you!

  • @tarikkranda
    @tarikkranda 6 месяцев назад +1

    Wondering if it is a typo in Release Step the environment labeled as "Development Environment" which is supposed to be "Production Environment"?

  • @AmeerHamza-cy6km
    @AmeerHamza-cy6km 5 месяцев назад

    thanks now i can change the color of button for our production site. thanks

  • @ChadRStewart
    @ChadRStewart 6 месяцев назад +2

    Awesome video!
    Wanted to ask if you could make a video or newsletter issue about how a RFC / Design Document gets created and is used? Would really love to see how Big Tech works through this specific part of the process!

  • @gdthegreat
    @gdthegreat 6 месяцев назад

    Title is changed 👍

  • @Jevinrandhawa
    @Jevinrandhawa 6 месяцев назад

    Cool video

  • @TheRavageFang
    @TheRavageFang 6 месяцев назад +1

    In our case, merge to the main branch is only done after all the testing is done and all the tasks run on the PR branch first, only then it gets merged to the main branch, otherwise everything seems very familiar ✌😊

    • @sourandbitter3062
      @sourandbitter3062 6 месяцев назад

      You have a staging environment for each branch? Or do you mean you have a ci pipeline?

    • @grustyn
      @grustyn 6 месяцев назад

      Same here, only merged to master when fully tested in QA env.

    • @grustyn
      @grustyn 6 месяцев назад

      ​@@sourandbitter3062In my case we use a CI pipeline with multiple instances. QA1, QA2, QA3 and so on.
      The QA Analyst pushes the branch to one of the nodes and test it isolated.

    • @jora5483
      @jora5483 6 месяцев назад

      Is the main branch pushed to ci/cd pipeline? Do env variables reside in main?

  • @monarch.war2024
    @monarch.war2024 6 месяцев назад

    How do we draw such maps ? What software do we use ?

  • @joelmathew5655
    @joelmathew5655 6 месяцев назад +1

    Should we merge to main branch before QA testing is done ? Also, do big tech companies follow a release cycle ? Also there should be multiple deployable environments in dev if they are following a release cycle

    • @Steelrat1994
      @Steelrat1994 6 месяцев назад +3

      There is no single way or solution. Every company and sometimes even teams within a company do it their own way. Some follow release cycles, some ship code continuously. Some have development/testing/integration/preprod environments, while others might only have a testing environment for QA to check end to end functionality. There are different approaches to maintaining your git repos as well, he described a trunk based development, where everything gets merged into master(trunk). Some people might still follow git flow with its merging hells.

  • @rossalexenderwilson
    @rossalexenderwilson 5 месяцев назад

    Great video, though at the bottom shouldn’t that say “Production environment” rather than “Dev environment”?

  • @FaintArt
    @FaintArt 6 месяцев назад

    I miss those long in depth videos..

  • @InterfaceTrading
    @InterfaceTrading 6 месяцев назад

    That's nice, but can you make the logo bigger?

  • @mirzasohailhussain
    @mirzasohailhussain 6 месяцев назад

    What tools you use for presentation and animations? Anyone have idea?

    • @pratiyush123
      @pratiyush123 6 месяцев назад

      I want to know this too

    • @zeektm1762
      @zeektm1762 5 месяцев назад +1

      It’s in the description

    • @mirzasohailhussain
      @mirzasohailhussain 5 месяцев назад

      @@zeektm1762 thanks. I didnt notice that.

  • @custard131
    @custard131 6 месяцев назад +5

    whats this "testing" you talk of? :p

    • @TheForge47
      @TheForge47 6 месяцев назад

      Overrated bs i guess 🤪

  • @nigh7swimming
    @nigh7swimming 6 месяцев назад +2

    Don't use feature branches, use small self-contained incremental stories which can be tested and delivered using CI approach. This is more agile and gives early feedback and reduces chances of merge conflicts.

    • @user-dq7vo6dy7g
      @user-dq7vo6dy7g 6 месяцев назад

      I don't see how those techniques are exclusive?

    • @sonic1957
      @sonic1957 6 месяцев назад

      Don't use feature branches if your solution is trivial.

    • @nigh7swimming
      @nigh7swimming 6 месяцев назад +1

      We tried both approaches on a large scale project and found feature branches cause more problems then small increments. When trunk is evolving fast it's hard to keep branches in sync and merge.

    • @user-dq7vo6dy7g
      @user-dq7vo6dy7g 6 месяцев назад

      @@nigh7swimming Above, you say "don't do this". Then you say you tried and "it didn't work for you".
      I don't see how you get from it didn't work for us to nobody should do it. Maybe there is even a skill issue involved.

    • @nigh7swimming
      @nigh7swimming 6 месяцев назад

      @@user-dq7vo6dy7g it didn't work for us, a big American corporation full of pros. But sure you know better, suit yourself. We tried and it didn't work is what I'm saying.

  • @sagancobra6402
    @sagancobra6402 5 месяцев назад

    Funnily enough i knew one company that didn't do any sort of 'staging'. Code was directly deployed into prod.no CICD even configured. Literally uploading code to prod hosts. Insanity

  • @Tony-dp1rl
    @Tony-dp1rl 6 месяцев назад

    Jenkins .... urggghh