I share stories and tips from my 3 decades of experience in the Big Tech industry, including working for many years at both Amazon and Google. This is not a deeply technical show. I talk mostly about things like tech leadership, corporate decision-making,
Hi folks,In this episode I say a tearful adieu. I have taken a very exciting new role at Sourcegraph, and I only want to talk about that from now on, so I'm semi-retiring this podcast.I will release a few episodes a year on this channel, and I will likely put more work than usual into them, so stay subscribed if you would like to see occasional new drops on this channel.Thanks so much for listening, and I hope to see you all on my Sourcegraph talks!Cheers,Steve
Featuring special guest Alex Eagle, Founder and CEO of Aspect.dev, which specializes in Enterprise Bazel support. I worked with Alex for years back at Google and we both have a ton of respect for the Bazel build system, which is the open-source version of Blaze (Google's internal build system).I have some sound issues on my end this week, though Alex's sound came out great. But the biggest problem with this week's episode is that my stream (in postproduction) wound up about 1.5 seconds ahead of Alex's, so I respond (and often begin) too quickly. I tried to clean it up during editing but the damage was done. Sorry about that.Please send me ideas for stuff you want me to talk about - LinkedIn works well for me: https://www.linkedin.com/in/steveyegge/
Hey folks! Today's episode is an intro to Service Meshes.There are many, many players in this space, and I only talk about a few of them. Notably I left out Buoyant, which provides a mesh based on linkerd. So this is not a full comparison of all possible options. But it does cover a lot of the big ones.This episode has some sound and picture issues. I recorded it in my guitar/music studio instead of my regular studio, because I am considering consolidating them and wanted to try out a temp setup. It worked OK, but I had some serious mic issues in the middle, and lots of extraneous noise and bumps. For which I apologize!Also, everything in this second studio is not as good -- the lights, the mic, the audio interface, the green screen, pretty much the whole setup. So it doesn't look great. I'll keep tinkering with it. I'm sure it'll get better.Fair warning: My talk today is heavily biased towards HashiCorp products, which are generally open source, albeit with enterprise features -- a standard industry model. I also give some strong shoutouts to Kong Inc. I am not in ANY way affiliated with HashCorp nor Kong Inc, and nobody has paid me to do this talk. This is all just my personal opinions from having worked with some of the technologies in question.In last week's episode I had the (hopefully original) insight that managers are the data plane in the company's "organizational service architecture". This episode should give you enough background that we can explore that analogy further in an upcoming episode. Should be fun!If you like this content, please go over to YouTube and Like the video, comment below; and, if you can find it in your heart, also subscribe to my channel. Each of these small actions helps *tremendously* with the YouTube algorithms that can help my channel grow. And please share this with others if you think they would find it useful.
Hey folks,Someone asked me for career advice on whether they should make the jump over onto the management track. We had a nice conversation about it and I decided to give a little talk on it this week.I had some technical issues and wound up getting delayed a day; my apologies.I also apologize that the editing is a bit choppy. It's a little bit of a bumpy ride, but I wanted to keep myself on topic and I wound up deleting a good 25-30% of the talk. I hope it's intelligible.If you like this content, please share it with others!
Hey folks!I'm very pleased to be hosting Jeff Atwood as our guest this week.Jeff was co-creator of Stack Overflow, which is by far one of themost successful Q&A sites ever created, and is every programmer'sbest friend.Jeff and I talked about all sorts of stuff. I didn't have a fixedagenda and just let the conversation roll. Jeff talks about quitea few topics near and dear to his heart, especially hardware andcolocation. He also talks about his $10k bet with John Carmackover the near future of self-driving cars.We also talk about Discourse, which is Jeff's newest offering:An open-source, modernized, full-featured forum software package.I'm super stoked that Jeff took the time to be on the show.Make sure you check out Discourse for your next forum!As always, if you like the content and want to see more greatguests like Jeff, please head to YT and like the video and subscribe to ourchannel. It really helps with our growth. Thank you!
Today I talk about how (and why) after 2 years of really enjoying retirement, I've decided to go back into the industry.Feel free to give this one a pass if you are looking for something more like one of my usual "tech talks". This is basically a status update that was suggested by next week's guest, while we were recording.
Hey folks! This was an overly-ambitious attempt to do a mini-lecture on the Farmer, Dog, Chicken, Grain puzzle and its programming solutions.This was one of the homework questions I had in my Intro to Programming Languages course in the University of Washington's undergraduate Computer Science program, taught at the time by Linda Shapiro. She had us solve this problem in Lisp, Smalltalk, and Prolog.So this is a fairly in-depth technical discussion that might seem a BIT on the boring side, compared to some of my other episodes. But it's 100% something you could find in a computer science course.I'll find a way to. upload the code somewhere, since there's no code formatting available here.
Hey folks!This week I talk about Ruby, which is one of my Top 3 favorite programming languages (if you count "Lisp" as a single language), the third being Kotlin.If you want to get straight to the hand-waving ranting, you can jump to around the 40 minute mark.This week we're having a competition! We're going to re-do the Farmer, Dog, Chicken, Grain competition I held at Amazon.com around 18 years ago.Sometime this week, if you have time, try writing a succinct and elegant solution to this problem, in the programming language of your choice, and post it here in the YT comment section.The problem: A farmer (F) needs to get his dog (D), chicken (C) and bag of grain (G) across a river. He has a boat that allows him to carry exactly zero or one item across with him. Write a program that spits out a solution when you run the program with no input/arguments.Example solution that your program might output: carry chicken carry nothing carry grain carry chicken carry dog carry nothing carry chickenYou can model it however you like. Below I present an abstract model of the states of the system as it carries out the steps above, where | represents the river. Things on the left bank and right banks are placed before/after the '|', respectively:FDCG| - start state, everyone on left; carry chicken to right bankDG|FC - FC now on right; carry nothing backFDG|C - FDG on left; carry grainD|FCG - FCG on right; carry chicken backFCD|G - FDC on left; carry dogC|FDG - chicken on left; carry nothing backFC|DG - FC on left; carry chicken across|FDCG - end stateKeep in mind that your program must perform a SEARCH through the possible move space for a solution, and you cannot have any third-party library dependencies; only what the language provides built in with its distribution.I am looking for solutions that are ELEGANT, by which I mean, short and to the point: ideally, without boilerplate or other stuff unrelated to the algorithm. This is a self-contained program and will not grow, so keep it small! Do not over-engineer it!I will submit solutions in at least Ruby and Elisp, though you are welcome to do the same. But I'd like to see a variety of languages here! Multiple submissions are fine as well. This is a fun little problem to solve.Most languages let you solve this problem in 20-30 lines of code or less.I'll take solutions through next Saturday and then do the judging in Sunday's episode. Though of course you are all welcome to keep submitting solutions after I do the judging, and I can comment on them below.Have fun!Podcast listeners, you should participate as well! Just head over to my YT channel to comment with your solution.NOTE: I may update this comment with a shared link if we can find a reasonable place to do this. Maybe someone can create a subreddit or Discourse or something?
Hey folks! Sorry this one is a day late. I had to redact some confidential information and it took a little extra time.Today we talk about the Lisp family of languages, and how coooool they are, and how cool yoooouuu would be if you learned one or more of them.http://paulgraham.com has the essays I mentioned in the talk. Enjoy!
Hey folks,Apologies for 2 weeks of missing podcasts. The episode 2 weeks ago was all coding and didn't make much sense to just do the audio for. And last week I was busy redoing my recording studio cabling and equipment.In this episode I talk about compilers: a bit about how they work, and a lot about how useful they have been at various points in my career. They are a fun subject and it was an easy episode to record!I mentioned a book, The Essentials of Programming Languages. It's the one by Friedman, Wand et al. I reaaally enjoyed working through this book, although I did study Scheme in other books first.I also mentioned the bare-bones user manual for my Wyvern game's autobag minilanguage: It's at https://ghosttrack.com/autobag if you want to have a look.I hope this episode was interesting. It's a challenging topic to talk about at a high level without getting bogged down in the details. I did a lot of editing in this episode, but it may have needed more. Let me know!
I'm joined today by a Google buddy who left for Facebook/Meta 3 years ago. We talk about a broad range of fun topics, including comparing Google and FB in various ways.If you enjoy this content, please head over to YouTube and Like the video, Subscribe to the channel, and if you think it's appropriate, comment on the video as well. It takes years to grow a channel these days, but your actions really do help move us forward. Thank you!
Hey folks,A commenter asked if I could talk about whether you need a CS degree to be in Big Tech and make it as a software engineer. So that's the topic for today!In this episode, I talk about what you would actually need to study in order to get the equivalent of a CS degree, and I also call our the most core fundamental stuff, which would be: * discrete math, linear algebra, and statistics * theory of computation, algorithms, data structures * compilers, operating systems, networkingSo basically 9 courses at the very core, plus a few nice-to-haves like programming languages, software engineering, distributed computing, databases, computer graphics, and machine learning.If you don't know at least the core 9 courses, you're flying blind and don't really know how computers work, at least not as well as you need to in Big Tech. But the good news is, you can teach yourself that stuff by getting the books and muscling through them.In this episode I offer some colorful stories of how algorithms matter, and give some tips on how to motivate yourself to learn quickly.Let me know if I forgot anything major!
Hi folks,Given that my Emacs tour from 2 weeks ago is in 2nd place overall on views, I'm gonna see how far I can push my luck, and do another one about Emacs.Apologies to the podcast listeners. I narrate everything but this probably isn't that fun to listen to without seeing what I'm doing. Let me know.This episode is a bit more disjointed than usual because I actually had about 90 minutes of material and I had to edit heavily. I can always redo the parts I edited out in a future episode, if this content is what people would like to see more of.Today I spend less time on fancy packages, and more time on fundamental editing features and principles. I talk quite a bit about particular key bindings and other settings, and how they can make a dramatic difference to your overall efficiency while you edit text. So this is more hands-on than the last tour.If you find this content interesting and you'd like me to keep producing it, please like the video, subscribe to the channel, and if possible, share it with others. It was reeeeeeally hard to motivate myself to do an episode at all today, Emacs or no. I'm sure some increased channel growth would help ensure that I can keep doing this week in and week out for a long time to come. Anything you can to do help would be appreciated.Anyway, enjoy, and feedback is welcome as always.
In this week's episode I talk about reorgs! How and why to do them, when and why to avoid them, and how to make sure they go as smoothly as possible when you really do have to do one.I also tell some war stories about particular reorgs I experienced at Amazon and Google.If you like this content, please go over to my YouTube channel and subscribe. It improves my placement with the YT algorithm and helps the channel grow. Thank you!
Hey folks,This week I did a guided walkthrough of Emacs, on my computer, while narrating what I was typing out.It went pretty smoothly and I _think_ I did an OK job of narrating what we were looking at, as well as speaking aloud almost all the operations I performed during the tour. So I'm hoping that it still works as a podcast, because honestly Emacs is pretty plain and it's not hard to imagine what I'm describing. :) You're probably imagining something fancier than what was actually onscreen.If you'd like to enjoy it with visual, please head over to my Stevey's Tech Talk YT channel. If you like the video and (ideally) subscribe to the channel, it will help this podcast grow, net us more guests, and so on. I'd really appreciate it.
Grigory Javadyan, the commenter who inspired episode 37, has graciously agreed to be a guest on today's show.In this episode we talk about all sorts of interesting things, including: * Zynga and the game industry * Interviewing at big tech companies * Being an SRE vs being a SWE * Google infrastructure and database migrations * Android emulators * Command line vs IDEs (last week's episode) * The future of programmingI really enjoyed this chat, and I hope you do too!If you like this content, please like the YouTube video and subscribe to the channel. Your support helps the channel grow and reach a broader audience. Thank you!
In this episode I dig in my heels and defend my position that you have to know command-line interfaces and shell scripting (or equivalent) in order to be a great programmer and a great generalist.I didn't say it explicitly, but the bottom line is that sometimes you need to do custom batch (and/or streaming) tasks that are not handled by your IDE or your favorite tools. So what do you do? Scripting to the rescue.
This week's episode is all about the Technical Program Manager role, and how it helps companies execute at their highest level.A TPM is a special role that requires "capital-T" technical expertise and a whole bunch of leadership. TPMs are tasked with delivering large, cross-functional, typically internal-facing projects such as database migrations, system rearchitectures, or performance/security initiatives.I talk about my own experience as a TPM at Amazon, and the right and wrong way to work with TPMs.
Hey folks! This topic was suggested to me by a buddy. I tackle the problem of engineers saying something is "impossible", and how to prove them wrong.
Hi folks! I'm very pleased to present our second guest interview, with my good buddy Eni Segun. I've known him for many years; he has been playing my game Wyvern since he was 8 years old, and has been a member of the core contributor team for the past several years.We talk about Eni's path from tinkering with computers through graduating from Drexel and heading to Microsoft, working in Azure. We cover a wide range of topics, but the biggest theme is the importance of good engineering documentation at your company.I've decided to shift my publishing to Sundays. This gives my guests a bit more flexibility for recording times (Friday night or any time Saturday), and gives me a bit of breathing room for editing, which takes hours and hours. So welcome to our first Sunday episode!
Hi folks! We have our first-ever guest on the show. Ex-Googler David Herman has been kind enough to be the guinea pig.In this episode we talk about how to detect and deal with stagnation in your career, lots about mentoring, and a bit about corporate culture. Plus lots of Google stories.
In today's episode I give some pointers to people who have just recently become engineering managers. Not really a Management 101, since it's not comprehensive. But definitely a subset of Management 101.
In this episode I talk a bit about Grab's super app strategy, and where super apps came from, and why you should invest in them.I cut over 20 minutes of blathering about unrelated topics in this episode, so the editing and continuity are a bit choppy. I'll do better next time!I wanted to talk more about Grab's platform and APIs, but rambled on too much and didn't get a chance. I'll follow up with some more Grab-specific concrete details in a future episode.I feel like I really didn't hit the mark very well in this episode, so please keep your expectations low for this one.
Special New Years Episode: A call to action. Spread awareness of sexual harassment in the workplace, help put an end to it, and also -- to companies with great training materials -- STOP keeping them confidential and proprietary.Nobody talks about this stuff. That's a problem. This was not an easy episode to do. But this needs to be addressed. Help me out by spreading the word.
I'm going to do a series of talks about Grab Inc, a ride-hailing service in Southeast Asia, where I served as Head of Engineering, Ads, Monetization, and Data Insights for 2.5 years. It was and still is a pretty incredible company.This talk is "breadth-first", were I just talk randomly about my impressions of the whole space, starting with the weather and ending with the business opportunities for 640 million people in Southeast Asia.I will do more focused talks about Grab in future episodes.
The steamy, sordid tale of how drank a bottle of wine, wrote a rant, and wound up on the front page of the Wall Street Journal.
I tell the sad but kinda funny tale of how I basically failed my first Google interview.
Today I talk a bit about how Big Tech companies split into "tribes", usually by geography, and how you can avoid the pitfalls that inevitably tend to occur.
Hey folks, thanks for watching the channel. Today's talk is my 7-or-so-step plan, give or take, for becoming a leader who can motivate your people to do their best and most sustainable work for the company. And I'm talking about motivating the right way, which is NOT to rule by fear. You want people to LOVE their jobs; hence the icon for the thumbnail.I've been told that many people may not realize that subscribing/liking/commenting are all actually really good for the channel, because they help YouTube's algorithm suggest this content to people who might be looking for it. So please subscribe, and/or hit 'like', and/or comment.It's also been suggested that I really need a forum as a place where people can chat with me and ask questions and stuff, since I'm always mentioning that in the videos. I have taken it to heart and I'm looking at options. I'm currently leaning towards LinkedIn's creator tools; i.e., you can find me, contact me, berate me, etc. all on LinkedIn. But if you have a better idea, please let me know before I commit. I'm not a FB user and I'd sorta prefer to keep it that way, but if it's really the best option then I could maybe be convinced.Anyway, thanks for watching the videos! I hope they're helpful and at least somewhat entertaining.
Here are some a few thoughts on how to be the best software engineer you can be. It's not comprehensive; just some thoughts I've had about it over the years. Hope it's helpful!We'll talk a lot more about this stuff in future episodes, and I'll bring guests. I know a lot of engineers who are far more badass than I am, and it'll be nice to get their perspective.
This is basically the contents of a tech talk I used to give at Google, to help Google engineers get promoted as fast as possible. I hope it helps!
I'm finally starting my leadership series. This first talk is for you, if you think you might ever want to go into Management in Big Tech.I cover some of the things that you might not expect or be prepared for, that I've run across in my career, with colorful examples. Topics I cover include: * Different management styles, and how everyone feels uncomfortable at some point * How things can surprise you when you're least expecting them * Good and bad ways to handle crisis situations * How to handle getting blamed for stuff that's not your fault * How to try to derail crises before they happen * Some general tips on getting to know your orgThere are many more episodes of material to cover even on basic management. But this is a pretty decent introduction to the way I think about some of the core challenges of management and leadership.
In this episode I talk for way too long about how Flutter is going to take over the entire world of UI programming, from web pages to mobile apps to desktop apps.I didn't do a dry run on this video, and learned my lesson the hard way. I had to do 12+ hours of editing to get it down to something reasonable, and also had to remove about 500 umms and ahhs. And it's still not great. Next time I will do a dry run!One point I didn't make very well is that my Flutter game client, written by a contributor, took about 6 weeks, which is 1/4 of the time it usually takes me to write a new client -- but if I account for the time required for learn the target framework, then it's really only about 2x as productive as the other frameworks, not 4x.But that's still pretty damn cool. And it's only about half as much code.
This episode is a retrospective, where I answer questions people have been asking me about various themes in the past 19 episodes. Main questions answered: * Am I underpaid? * Can I really get into the tech industry that quickly? * Why do you talk so much about geopolitics, and how is it relevant? * Why do you talk so much about how toxic Amazon and other companies were?Those are the big ones. I think most of the episode is talking about compensation packages, and differences between regions and roles.
In this episode I rant at length about the terrible reasons that people have for wanting to go into management/leadership. I get really worked up by the end.Just to clarify one part of the video, I really love both Korea and Japan. They both have great food, great movies and shows, great people, and are both amazing and awesome countries. They just have terrible, TERRIBLE tech management culture, each in their own messed-up way. And they're not the only ones; they just happen to be two that I picked on this time around.Apologies for the color grading. I seem to have lost my color grading entirely in the last episode, likely from an OBS upgrade, which turned me bright pink under my softbox lights, and I didn't notice it until after recording this one. So I threw in a band-aid LUT for now.
I talk about how messed up tech interviewing is, and yet it's sort of the best we've got... or is it?
Several people asked me to talk about Amazon vs. Google and compare them, so I'm doing that in this episode. I talk a lot about what it's like to work for Google.The dude in the beginning is a little joke, since one of you said I look like a bearded floating head. Which is accurate, since that's the look I'm going for, inspired by the guy at the beginning of Ultima Underworld.
This is the one. The episode where you decide that listening to me was the biggest waste of time in possibly your entire life. I rant like a certifiably crazy person about tinfoil hat conspiracy theories, and throw out strong opinions about subjects I know almost nothing about. You know, like usual.
This episode is two parts. The first half is me telling the story of how this channel came to be, why I'm doing it in this format, and my future plans. The second part explains WHY I'm doing the show - it's to help prepare you for some pretty awful stuff that's going to happen soon. Feel free to skip the first half if you just want to know how you may be affected.
In this episode I take off the boxing gloves and plop on the brass knuckles. I talk about just how horrifically a senior executive can hurt or even kill a company, with lots of examples and real-life stories.
I talk about the tricky problem of having a manager (at any level) who is hurting the company and requires corrective action. There is a playbook for this, and I walk you through it. This talk mostly applies to the Big Tech industry specifically, for reasons I outline at the beginning.
Google's promotion process is VERY different from how it works at most companies. They have spent years refining the process, and it avoids a lot of the dysfunction and problems that happen at other companies. It's worth a look just to see what you can learn from it.
In this episode I talk about my online multiplayer computer game, Wyvern (https://ghosttrack.com). It has been a 25-year journey, and it wound up being responsible for the pretty awesome career I've had in Big Tech. I talk about the game, the players, and the learnings I've had from it. I hope you enjoy this little detour episode!
Jeff Bezos and Bill Gates are in a race to polish up their image for future generations. Both of them were Bad Guys, but only one of them seems to be on track to atone for it. Warning: I trash talk a lot of billionaires in this episode.
In this episode I talk about how I struggled with learning programming, and eventually made it into the tech industry, where you can very easily make millions of dollars--and that's even more true with each passing year. I give some tips on how to approach it and think about it, and encourage you to at least TRY it, since it can completely transform your life.
In this episode I talk about a kind of corporate disease that I'm calling "structural dysfunction", where employees are set up to fight with each other, because they have overlapping or even competing job descriptions. This is stupid. Obviously. But companies do it ALL THE TIME, and I give some personal examples and some famous examples.
In this episode I begin the journey (completed in episode 16) of explaining the operation of the biggest company in the world, and how and why they are going to be so dominant for the next 100+ years.
This is my first episode fully dedicated to a particular and VERY common corporate disease called a "centralized DevOps team". I explain how Google does DevOps, how Amazon does it, the "right" way to do it, and finally, how the centralized team is the worst possible way to do it. I get riled up and rant a lot in this episode.
In this episode I conclude my first 3-part series on Amazon's world-class execution. I talk about how Amazon treats their corporate customers and their developers, and how different it is from Microsoft, Google and other companies competing with Amazon.
In this episode I continue my exploration of why Amazon executes so darn well compared to pretty much everyone else. Here we explore their 25-year obsession with retail customer satisfaction, and building brand trust.
In this episode I begin a 3-part discussion of why and how Amazon is always kicking everyone's butt in the industry, even though they are not a classic monopoly. This episode focuses on corporate diseases and how Amazon is ruthless about rooting those diseases out.