Why and How to be a big-tech Principal Engineer

Поділитися
Вставка
  • Опубліковано 13 чер 2024
  • Principal Engineers are high-level software engineers who help deliver complex, multi-team projects. Learn what they do at companies like Amazon and Microsoft, and how to become one! This is based on my 30 years of software engineering experience, 15 years as a principal engineer!
    Table of Contents:
    00:00 - Introduction
    00:52 - Disclaimer
    01:15 - Job Titles at Microsoft, Google, Amazon
    01:53 - Principal Engineer Abilities
    05:30 - How to progress from Senior to Principal
    07:02 - Two principal-level projects
    09:18 - Collaboration and Expertise
    10:40 - Why be a principal engineer?
    11:52 - In summary
  • Наука та технологія

КОМЕНТАРІ • 120

  • @teriyakitears9831
    @teriyakitears9831 2 роки тому +53

    As a junior one month into my first job, these videos are a treasure trove and in my opinion are super underrated considering how many years of experience are being shared here. Thank you for these videos.

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому +8

      Thank you for watching and commenting! You have a lot of fun & interesting career years ahead of you, congratulations on your first job!

  • @josedominguez8782
    @josedominguez8782 Рік тому +42

    I was promoted to Principal Engineer weeks ago, and this video is precious. Thanks.

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  Рік тому +4

      Congratulations! And I'm glad the video is helpful!

    • @user-pi1ve8zr1m
      @user-pi1ve8zr1m Рік тому +3

      me too.principal mechnical engeer in china.this video is so useful.

    • @aznstride4325
      @aznstride4325 8 місяців тому +1

      It’s weird because a principal engineer in Amazon is way different than a principal in another company.
      I joined a company fresh from college, and our principal engineer makes a lot of typos in code, and I essentially outshined them.
      When I moved as a junior engineer to Amazon, everyone that’s a junior is ridiculously smart, let alone a principal which is like 3 levels ahead

  • @DiogoBaeder
    @DiogoBaeder Рік тому +7

    Super nice video, man! And I love how you laid down the Principal Engineer role on a clear base, but without any arrogance involved and in a super nice tone - I find this approach much more encouraging to others wanting to go on that track.

  • @sandeeptuniki
    @sandeeptuniki 2 роки тому +4

    This channel is a treasure-mine for software engineers. Thanks for your videos.

  • @RagingInverno
    @RagingInverno 2 роки тому +6

    Thank you for sharing from your wealth of experience. So much better advice here than all the kids on UA-cam who 'quit Google' after 1 year and use that as their claim to fame.

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому +2

      To be fair, I quit google after a little more than a year myself. But, I have lots of years at other places too :) You can see my work history on linkedIn, www.linkedin.com/in/johnmil/

  • @shivam1773
    @shivam1773 2 роки тому +5

    Two and a half months into my first job, this is such a gem of the knowledge and a motivation to be consistently going forward in the direction which I have chosen for myself. Thank you so much sir, waiting for the next video.

  • @HungriestPanda
    @HungriestPanda 2 роки тому +6

    Great video, this is definitely some good advice for someone like me as I move forward in my career. Glad to see you've returned from the holiday break :D.

  • @amarpathak9020
    @amarpathak9020 Рік тому +2

    I am a software architect. This video is very relevant for the positions like Architect, and Principal Engineer and their work. Awsome. Thanks.

  • @DivyanshuBansal-tg6ju
    @DivyanshuBansal-tg6ju Рік тому +5

    Thanks a lot, John, for sharing all of this valuable experience/content. Most of the resources are generally focused on how to get into the tech industry. Rarely do I find helpful resources on career progression, especially for senior(and above) engineering levels. As the target audience is pretty small for this type of content, I really appreciate your taking the time to create the videos. Thank you! :)

  • @assonancex
    @assonancex 2 роки тому +2

    This is a great talk. Really comprehensive. Thank you!!

  • @amitev
    @amitev 2 роки тому +2

    Very useful information! Happy New Year and good luck!

  • @sravanthi_anumak
    @sravanthi_anumak 8 місяців тому

    Great Insights to the Principal Engineer .. Currently I am at Staff Engineer level.. aspiring to become Principal Engineer. Thanks for the details.

  • @EDC.EveryDayCode
    @EDC.EveryDayCode Рік тому +5

    I love your phrasing of "big companies are paying for your negative experiences, and battle scars." It makes me feel good about my situation where I have an app that is almost complete but it has been such a bumpy road getting there. haha 😅 I designed and built everything and sold them on my ability to build it. Thought it would be easier than this. lol

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  Рік тому +1

      They say anything worth doing is hard. I'm not sure I agree with it, but it should help in situations like this :) Congratulations on the new gig!

  • @mingyan9538
    @mingyan9538 2 роки тому +2

    Nice one. Very insightful! Thanks.

  • @RemeberMe2Gallifrey
    @RemeberMe2Gallifrey 2 роки тому +3

    Thank you for this video. It was very clear and touched on several points that make feel like I understand the difference in the roles of a senior engineer and a principal engineer. I'm interested in pursuing a role of principal engineer at the company where I work, but unfortunately the requirements are stated in a very abstract way. What you have discussed here makes the topic more concrete.

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому +2

      Thanks for watching! I'm glad it was helpful. The description most places have for reaching principal are going to be generic and abstract, you'll really need to work with the person who is making the promotion decision to make sure THEY are convinced. That's the primary bar.

  • @AhmedSayed-cc7gs
    @AhmedSayed-cc7gs 4 місяці тому +2

    Made it to principle at Amazon last year. Very accurate but I feel like you only would really understand it when you reach there.

  • @anshulsrivastava6132
    @anshulsrivastava6132 2 роки тому +2

    Your fan since your quora days. Thank you Sir.

  • @amitbaijal421
    @amitbaijal421 2 роки тому +2

    Thanks for sharing your experiences. It was a great learning session for me ,

  • @softdevstuff1008
    @softdevstuff1008 2 роки тому +2

    Thanks! This is really helpful. Subscribed.

  • @techfornoobs4241
    @techfornoobs4241 2 роки тому +2

    Great video, subscribed!

  • @kalheer
    @kalheer Рік тому +2

    Great video and great insights..

  • @LuisRamirez-nj3sy
    @LuisRamirez-nj3sy Рік тому +2

    Your channel is great. I would love to see a video on how to write a design document for a project or how to effectively contribute to design docs and activities being in different roles and/or levels.

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  Рік тому

      Good suggestion! I think it's already in the list of videos to make but I'll double-check. Thanks for watching!

  • @Ysh.CS_guy
    @Ysh.CS_guy Рік тому +2

    Thank you so much for this video :) 😃 💗

  • @TheCarloarg
    @TheCarloarg 2 роки тому +4

    As always, fantastic. The only thing that I would say is that Google L7 maps to Amazon L7 as well. Amazon Principal is a very broad level that maps to both L6 and L7 at Google. I was an Amazon L7 two years ago and I joined Google as an L7. Keep making these videos they are fantastic!

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому

      Thanks for the clarification & for the encouragement! Much appreciated!
      How do you feel about being an L7 at Google vs a principal at Amazon, which role do you like better and why?

    • @prestonrasmussen1758
      @prestonrasmussen1758 Рік тому

      True, but those level are both staff levels at Google. L8 at Google is principle

  • @calccalccalc
    @calccalccalc 11 місяців тому

    This is invaluable, and was needed when i started as principal in my most recent job, but finding it now is better than never.
    I'm glad to know I meet these criteria, aside from what I believe to be an adequate amount of raw production experience, but that will come

  • @DHRUVNARAYANSINGH
    @DHRUVNARAYANSINGH 2 роки тому +2

    Thanks for sharing

  • @abhijitkrao283
    @abhijitkrao283 2 роки тому +2

    Thank you for your videos. It's an insight from an insider perspective. Could you please do a video on SW engineers in other domains trying to make switch to FAANG companies. For eg. From being a firmware engineer in Intel to FAANG say senior or principal role. Is this possible at all experience levels? Love to hear from you.

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому +1

      Thank you for watching & for the suggestion! I'm afraid I don't have much experience with senior people moving from non-FAANG to FAANG roles, not enough to generalize :(

  • @mantan_rtw
    @mantan_rtw 3 місяці тому +1

    Some PEs do have direct reports. Also PE role is not for introverts, some socializing and travel is expected. Rewarding? Yes very much so.

  • @arunkutube
    @arunkutube Рік тому +2

    Thanks for sharing. If you could also give some insights on how to look for projects which good scope for principle engineers that will be great.

  • @kimyves77
    @kimyves77 2 роки тому +2

    Thank you for this great video, really rich of information. Does Network cloud engineer one be a principal engineer without prior deep software development background? Thanks John

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому +1

      Thanks for watching! There might be principal level network cloud engineer positions, but I don't think you could get a principal level software engineering role without software experience. A big part of the role is mentoring and auditing based on years of shipping software and making lots of mistakes. Without that history, you wouldn't be in as good a position to help the teams you support as a principal software engineer avoid pitfalls.

  • @ssjcosty
    @ssjcosty Рік тому +4

    I’ve worked as a Tech Lead / Software Architect on a couple of projects that involved multiple teams. It’s interesting work, albeit stressful. However, I would say that my best professional experiences happened early on in my career when I was a junior/mid-level. This is difficult whenever I have to interview for a new role, because I have to consciously stop emphasizing my early career and instead focus on my most recent experiences.

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  Рік тому +5

      I think I have similar experiences, where some of the stuff that was the most technical - in terms of coding - happened early on. It's a lot easier to talk about that cool problem you wrote code to fix and deployed than it is how you worked with a bunch of people and probably influenced them to do a little better than they would have otherwise :) Thanks for the comment!

    • @ssjcosty
      @ssjcosty Рік тому

      @@TheDeliberateEngineer Thank you for your thoughts!

    • @marksun6420
      @marksun6420 Рік тому

      I’d like to follow up on this discussion. Technology changes frequently and how does principle engineers stay on top of it?
      Further as a senior engineer, I’d like to become a domain expert and principal engineer in an area that is relatively new, as I’ll probably stay as a principal engineer for years of time. Thus I wonder if I should change the track even that means more time to reach principle level

  • @jaybinning2890
    @jaybinning2890 Місяць тому

    I've always been curious what the difference between a Principal Engineer, a Project Manager, a Systems Engineer, a Design Engineer, or any other job title that does the same basic thing, but at different levels: illicit requirements, analyze requirements, break requirements down to a level where they can be implemented, handle communications, risk, quality, and changes. It seems to me, like 95% of the processes are the same, they just use different inputs, and result in different outputs, of which the main difference is level of detail and audience.

  • @skavihekkora5039
    @skavihekkora5039 3 місяці тому +2

    Strange how people reaching PE level satisfy themselves with 1mln per year when with their skills theyd surely earn way more as software company owners.

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  3 місяці тому +2

      Running a company requires exercising a bunch of different skills which a PE may not have, or may not want to exercise.

    • @rejectionistmanifesto8836
      @rejectionistmanifesto8836 3 місяці тому +1

      ​@@TheDeliberateEngineerWould love to see more videos. It carries more weight than these young kids in their 20s and 30s releasing videos on Tech career advise.

    • @jisunski02
      @jisunski02 Місяць тому +1

      @@rejectionistmanifesto8836 i agree with you, i see a lot of kids nowadays posting tech career advise that haven't event touched a complex production level code, and then keep on blabbering whats best to learn, whats best practice etc.. what a shame

    • @rejectionistmanifesto8836
      @rejectionistmanifesto8836 Місяць тому

      @@jisunski02 exactly, I want long term experienced people to make this type of content

  • @brianhuang9257
    @brianhuang9257 2 роки тому +3

    John, can you talk a bit about work-life balance? What kind of hours were you usually working at the principal engineer level? Did this differ greatly between companies?

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому +5

      Hi Brian - I usually worked between 45 and 55 hours a week, but that was often by my preference, rather than required by the position. Amazon's PE role was a little busier than the Microsoft PE role, but it was also more interesting!

    • @brianhuang9257
      @brianhuang9257 2 роки тому

      ​@@TheDeliberateEngineer I see. That seems quite reasonable!

    • @akuskus
      @akuskus Рік тому +1

      @@TheDeliberateEngineer Can it be a case that working such long hours is almost like a prerequisite to advance in the career? I feel like my team members along with the team lead are all pretty much workaholics, working ca 10 hours a day but I am doing normal hours and they are also ahead of me in terms of productivity and in depth understanding of the complex internal details as well as how all the larger cross teams puzzle pieces fit together. New information is generated faster than I can stay on top of and this is generating stress. The ones who put in the most hours are getting promoted. I call this toxic productivity which most probably at some point leads to the burnout of the people who work normal hours - me. Not those who are married to their work.

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  Рік тому +1

      @@akuskus Advancement at the companies I worked at is peer-based, i.e. performance relative to your peers. I believe your learning is tied to what you produce and how much time you spend coding. This implies that if someone is more productive than you and spending more time learning, they're going to advance more quickly. It's fine to work normal hours as long as you're OK with a slower promotion rate. This sounds healthy to me, and logical from the company's perspective.

    • @akuskus
      @akuskus Рік тому +1

      @@TheDeliberateEngineer I would say constantly overworking to reap benefits to the detriment of others who work normal hours as set in the contract is not healthy nor even a moral thing to do, even if the company at large would benefit from it. Companies surely would want everyone work 24/7. 10+ hours per day of sedentary work is far from healthy, even though some people whose life equals work may like the tradeoff, but the others should not suffer from it. But I guess I have an European mindset. Or just mistakening.

  • @DK-ox7ze
    @DK-ox7ze 2 роки тому +2

    Thanks for your insights. I am wondering if PEs need to be all-rounders? For eg., I am into front-end web development, with some exposure to back end (in node js). But I have never worked on hard core backend roles, distributed computing, cloud computing, mobile app development, AI/ML, etc. So do I need to have good experience in other core areas to be promoted to PE or having expertise in one area (say front-end web dev) is enough?

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому +1

      There's a mix of PEs who specialize in one area, and those who are generalists. Do what you enjoy in your career. As long as there's opportunity for you to make big impacts across multiple teams, you should be able to be a PE eventually.

    • @DK-ox7ze
      @DK-ox7ze 2 роки тому +1

      @@TheDeliberateEngineer Thanks. That sounds encouraging. I also wanted to know easy is it to change domains without downlevelling and how open are big tech companies about it? Say if I want to shift from front-end dev to AI/ML, and I have my basics covered in AI through tutorials, then will I have to start at SDE-1/L4 if I am already SDE-3/L5?

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому +1

      @@DK-ox7ze I switched jobs 14-15 times in my career. The only time I was downleveled was when I moved disciplines, from test development to product development. Even moving between management and IC didn't affect my level.

  • @chikajinanwa9179
    @chikajinanwa9179 2 роки тому +3

    Hi John. Thanks for the video! Do I need an advanced degree like a Masters or PhD to get to principal engineer? Is a PhD even helpful to solve problems at principal engineer scope?

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому +9

      A degree is completely irrelevant to reaching principal engineer. By the time you've got that amount of experience, it's based on what you have done (at work) and what you can do, and having enough opportunity to demonstrate it. Degrees and credentials don't enter into it.

    • @SIGSEGV1337
      @SIGSEGV1337 9 місяців тому

      Nah I just got a principal engineer role and I never even went to university

  • @abc361
    @abc361 Рік тому +1

    Wow! You look so handsome. Such a gentle spirit❤😍😊😊😊😊

  • @handle924
    @handle924 2 роки тому +3

    As for senior to principal transition, what are your thoughts on internal promotion vs switching company with +1 level?

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому +1

      I'd say it's really the company that matters with the principal role. If you can move to a company where the title is meaningful AND get a promotion to principal in the deal, great! It would surprise me, though!

  • @antoniofuller2331
    @antoniofuller2331 2 місяці тому

    I want to become a principal developer. I need a roadmap

  • @MohanRaj-vp1zt
    @MohanRaj-vp1zt Рік тому +2

    Seen engineers at Microsoft going from senior software engineer to principal software engineering manager and not principal software engineer , why and how does that happen ?

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  Рік тому +1

      principal opportunities are (relatively) limited, and someone who is both strong technically and has good people / organizational skills can make a great manager. So the org has a principal manager role to offer before a principal IC role. At least, that's what I've seen.

  • @lenielluzardo3043
    @lenielluzardo3043 2 роки тому +2

    Hey this information is great piece of gold! thank you for sharing it.
    Can I ask you a sincere question? I hope it doesn't get misunderstood.
    As a principal engineer, what did motivates you to start making youtube videos?

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому +4

      It's a good question! I like giving advice and I like writing. I was very active on Quora (www.quora.com/profile/John-L-Miller) for a few years, but lost interest. Then this seemed like a good thing to do with my time while I take a break from my career.

    • @lenielluzardo3043
      @lenielluzardo3043 2 роки тому +1

      @@TheDeliberateEngineer I'll check you quora profile, sure I will find more interesting stuff. Thank you for your honest answer! Can't wait to see the upcoming content👏🏼👏🏼

  • @jameswo4794
    @jameswo4794 Рік тому +3

    working in research as a software engineer sounds pretty cool - sounds like you can get into some cool cs/math theory and academia while still coding. could you elaborate on this experience and how much theory was relevant?

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  Рік тому +1

      For the things I did, theory was largely irrelevant or handled by the researchers. Nevertheless being an RSDE can be a ton of fun!

  • @SoftwareEngenius
    @SoftwareEngenius 2 роки тому +2

    Outstanding, it is my dream to become a Staff Engineer one day!

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому

      Thank you! IMO all it takes is time, experience, and caring about what you do. Keep on plugging away!

    • @RingxWorld
      @RingxWorld 2 роки тому +1

      @@TheDeliberateEngineer - What is the promotion ladder like for principal engineers? is it primarily the impact of the project you finished? Was there a type of expert who got more promotions? etc.

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому +2

      @@RingxWorld It is increasingly harder to get promoted as you move up as a principal engineer. Generally speaking, you need to demonstrate the things the company cares about: being a force multiplier, being a significant, noticed help on projects. You don't necessarily have to initiate a new project, but you need to be an obvious force for good on the projects you're on.

  • @driziiD
    @driziiD 7 місяців тому

    the 1st is actually "they had good managers"

  • @armandparajon6121
    @armandparajon6121 2 роки тому +4

    Hi John, thanks for the video! You mentioned that most PE’s spend

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому +11

      In my case, it was usually tricky algorithm code, else code that was interesting, but non-blocking for the project (since I could be interrupted at any time). I've seen other PE's write the most critical parts of the projects they're on. For example, a multi-threaded work queue with a state machine processing multi-step transactions with multiple services. You really want to get that one right...

    • @MiguelOliveira87
      @MiguelOliveira87 Рік тому

      The definition is usually "wrote the hardest pieces of the project", which tends to mean finding and coding solutions that others weren't able to, or kicking of a foundation that then can be delegated to others.

  • @gaborszekely8387
    @gaborszekely8387 Рік тому +3

    Should you not try to become a principal engineer if your passion is primarily coding?

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  Рік тому

      My original passion was coding, but over time it shifted to more general problem solving and trying to get bigger things done. If this isn't the case with you, then you can stick with a coding impact. There are people who are principal and higher level whose primary output is code, but in my opinion they're pretty uncommon. Do your job the best you can, do work you enjoy, and don't worry about whether or not you become a principal.

  • @shivratanyadav8307
    @shivratanyadav8307 8 місяців тому

    Hello sir I want crack citadel sde 2 level engineering off campus now recently I taken admission in btech cse and what learn mainly focused apart from coding languages can you suggest some book

  • @ink4956
    @ink4956 2 роки тому +2

    Do total years of experience matter? i.e. senior with 2 YOE total, will that senior be expected to stay senior for an expected length of time?

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому +1

      Years of experience definitely matter. I'm surprised you're able to be a senior SDE with 2 total years of experience. At big tech I would expect a typical senior SDE to have 5-10 years.

    • @ink4956
      @ink4956 2 роки тому +1

      @@TheDeliberateEngineer I'm on the PM track, not entirely sure how I ended up here either but PM velocity might be different. I've looked around and it seems like L63 -> L65 takes about 4-6 years at MSFT? Not sure if job hopping between big tech companies is as valuable for the principal promotion. Btw I binged your videos today and I really enjoy how practical and honest they are :)

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  2 роки тому +1

      @@ink4956 I've seen PMs spend 10+ years at Senior, so it all depends on the individual and how many opportunities their group offers. I'll be very interested in your observations as you move forward, good luck with a speedy promotion!

  • @sialee5926
    @sialee5926 Рік тому +2

    What about a principal engineer with Verizon or t mobile. How much is their salary?

    • @TheDeliberateEngineer
      @TheDeliberateEngineer  Рік тому

      I don't have direct knowledge of either Verizon or T-Mobile. For Verizon, Glassdoor claims a median of $223k total comp with $155k of that being salary for principal engineers. For T-Mobile, they claim median total comp of $232k with $166k salary. For comparison, Glassdoor's median claims for a Microsoft principal engineer is $265k a year with $170k of that being salary.

    • @sialee5926
      @sialee5926 Рік тому

      @@TheDeliberateEngineer thank you kindly!

  • @RM-xr8lq
    @RM-xr8lq 2 роки тому +1

    this person reminds me a lot of james gurney

  • @mauriciocastro6363
    @mauriciocastro6363 10 місяців тому +1

    $500K to $1000k. I'm a Principal in aerospace, I'm arund $280k. I picked the wrong industry....lol

  • @fcq731
    @fcq731 10 місяців тому

    Unfortunately software engineer is nothing special than other corporate job and the ladder is mostly the same. On the other hand, most people may have been misguided by the glorious clean code, clean architect etc, including myself.

  • @adamday5045
    @adamday5045 2 роки тому +1

    Are you a flat earther?