Realistic advice about software dev right now
Chapters11
Explains that learning approaches have changed and that the speaker will share external perspective on how to learn and grow in the current environment.
Smart, candid guidance on learning as a dev today: prioritize likability, real-world competence, and building a learning network over chasing credentials alone.
Summary
Theo from t3.gg delivers a blunt, human-centered take on how to learn and succeed as a software developer in today’s market. He shifts away from his old job-focused advice and reframes growth around two levers: likability (how you show up and connect with others) and competence (actual ability validated by real-world work and interview performance). He argues that AI has raised the bar for appearances of competence, making it harder for fresh grads to stand out, and that many traditional pathways to hiring are less reliable than they used to be. Drawing on personal stories—from Twitch interviews to early gigs—Theo explains how urgency, team fit, and perceived potential still influence hiring, but with far stiffer competition. A core message: surround yourself with capable people (in person or online) so you can measure progress, learn faster, and stay motivated. He also emphasizes the power of reaching out to creators and smaller contributors with genuine appreciation, not because you want a job, but to build a network that can propel you forward. Throughout, he threads practical tips (ask “why,” not just “how,” explore Who’s behind great projects, and use design-thinking breadth to strengthen depth). The talk closes with a hopeful reminder: the human element—and following your genuine excitement—matters more than ever in a world drenched in AI-generated resume padding and hollow demos.
Key Takeaways
- AI has amplified the gap between appearance and real ability, so portfolios and GitHub activity aren’t as trustworthy as they used to be.
- Hiring now hinges on urgency, likability, and competence—three factors Theo says companies weigh when deciding whom to hire.
- Surrounding yourself with capable devs (in real life or online) provides a natural measuring stick for your own progress and keeps you from overestimating your skills.
- The fastest path to opportunity can be through small, genuine outreach to creators and maintainers, not just applying to jobs or blasting links to recruiters.
- Be deliberate about what you learn: focus on areas you enjoy and deliberately explore adjacent domains (e.g., design for frontend, architecture for backend) to build the T-shaped skill set.
- Ask why and who when tackling problems or evaluating tech; understanding the people and context behind a project yields more long-term leverage than raw code knowledge alone.
- Don’t underestimate the value of community and mentorship; the 'room' you’re in determines how quickly you grow, not just your individual talents.
Who Is This For?
Aspiring and junior developers looking to navigate a tougher job market, plus experienced devs who want to mentor others and rethink how to showcase real competence beyond buzzwords.
Notable Quotes
"The reality is that being a new dev does kind of suck right now. There’s a lot of things that are good, but there’s also a lot that are bad."
—Theo frames the current climate for new developers and sets the tone for pragmatic guidance.
"Urgency, likability, and competence."
—Core hiring factors Theo highlights as the three levers companies actually weigh.
"If you’re the smartest person in the room, you’re in the wrong room."
—A popular maxim Theo uses to stress the value of surrounding yourself with capable peers.
"AI makes incompetent devs look more competent in ways that are annoying."
—Theo on how AI tools shift perceptions of skill and the hiring landscape.
"The best people to reach out to are the smallest ones—the ones who are just doing cool stuff."
—A concrete networking tactic Theo uses to boost opportunity through authentic outreach.
Questions This Video Answers
- How has AI changed the way developers demonstrate competence in interviews?
- What should I focus on to improve as a junior dev in 2024 and beyond?
- How can I build a real-world measuring stick for my coding skills without a job?
- Why is networking with small open-source creators more effective than sending cold job applications?
- What does it mean to be a T-shaped engineer in today’s tech landscape?
CareerAdviceSoftwareDevelopmentHiringTrendsDunningKrugerImposterSyndromeAIInHiringOpenSourceNetworkingMentorshipPersonalBranding
Full Transcript
Hello, Theo. I know you stopped doing videos related to jobs and new devs. I'm sorry to ask, but how do I learn things? Do I nerd out and take my time or something else? Sorry if this isn't a good question. You should be sorry because it's such a good question I'm now stuck here making a video about it. But yeah, this is harder than ever to answer and I'm going to do my best. But the right way to learn and grow and find success as a dev has changed a lot. The reason I used to do so many videos about this is because at the time things hadn't changed too much.
I had went through this all myself eight or so years prior. And as such, I was able to talk about my experience and it was very similar to how things worked at that time. And I know thousands of devs have found success following the same footsteps I did, whether or not they even heard about it from me. There's even dozens in the chat now that got their start in their careers by doing the same things I did after hearing about them from me. Things have changed a lot. And I will admit, I might not be the best person to talk about it simply because it's different from how I got in.
I learned, I grew, I found my success by doing things a way that doesn't necessarily work anymore. And as such, the recommendations I'm about to make aren't based on my experience doing it. They're now going to be based on my perspective externally for how to learn, how to grow, how to get hired, how to find success. And if those are questions you have, I think this video will still hopefully be helpful. If you made it out on the other side, I think it's even more important you watch this because I don't want us to pull the ladder up from behind us.
There's a lot of people who got into this stuff when it was easy to because there just weren't enough devs. And it's unfair for us to make it hard for people who could potentially be incredible devs to get where we are now. So, I'm going to do my best to explain all of this while also acknowledging the fact that if I was in this position right now, if I was 21 and finishing up college today instead of 31 and ranting to college students today, that I might not have made it. I don't know if I would have found success the way things are today.
I don't know if I would have been able to get a job, be paid as an engineer, and do all of the things that we expect to do in the field. And if I can't make money from coding, I've got to make it somehow. So, let's take a quick break for today's sponsor. It's time to face the facts. AI models are kind of stupid. Unless you give them access to the web where they can collect all the information they need to behave better. I can't tell you how many times I've had my AI agents not do the right thing because they just don't have the right info.
And maybe that info isn't on a place that it has access to. Even if it's able to do like curl calls to various sites, it might not be able to get the info you need, much less be able to do things on the web pages that you want to navigate, unless you give them a real browser like browser base. Browserbase has figured out how to let agents do everything you'd want them to on real websites. And they do it in a way that feels just as reliable as a normal API does. That's why everybody from Microsoft to Lovable to Ramp to Deepmind all use browser base for running their cloud browsers.
Obviously, their browser as a service is their killer feature. The fact that your agents can spin up a real browser to do real work on real websites is awesome, but sometimes you don't need that. Sometimes you just need to do a web search and get some information or fetch data from a given URL. They now have support for both of those use cases as well. They have their own search API built in that is really easy for agents to use to get the info they need as well as a fetch API where you can just let the agent go to a URL that they found and collect all of the info in HTML, JSON or markdown, whatever your system prefers.
Browserbase transforms the entire internet into an API that your agents can use to do everything. Whether they need a real browser with authentication and the ability to interact or a search engine that they can use to get the context they need, Browserbase has you covered. Unleash your agents on the web at.link/browser. link/browserbase. Sorry about the slightly cringe sponsor cut. I got to put those in. Bills have to be paid. Teams got to be paid. But again, thank you to Fuzzy for this awesome question. I'm going to do my best to break down the ways I've seen work for learning and growing as a developer today.
The reality is that being a new dev does kind of suck right now. There's a lot of things that are good, but there's also a lot that are bad. The two key things I want to talk about are how do you learn, but also how do you find success in the space? Because sadly, these are very different questions now. They didn't used to be, but now they kind of are. And that that sucks to be frank. I don't feel like talking about the numbers and all of that. I've done it before. I just want to talk about how I think about this right now.
Firstly, to talk about the split of devs, I'll put a nice good old average line in the middle here, and we'll say roughly. Okay, it's not exact, but it's close enough that each of these sections is about 25%. One of my favorite mind [ __ ] is explaining how averages work in an admittedly kind of silly way. Imagine a perfectly average intelligence person. Somebody smack dab in the middle. They're not smart, but they're also not dumb. They're right smack dab in the middle. If you somehow could give a test on general knowledge, they would get a C every time.
the perfect average person. Have them in your head. Nearly 50% of people are dumber than them. That is a thing I have to digest every day. Especially because I and many others that have made it far in the world that we're in, we don't surround ourselves with average people, much less below average. And I would also argue most people don't have average set correctly because depending on where they are, average might be lower or higher depending on the people that they're surrounded by. The point I'm trying to make is that first off, your definition of average is skewed by the people around you.
But second off, if you actually do have a measure of average that's even slightly realistic, roughly half of people are below it. And those are two points that were really hard for me to digest early in my career. And I still feel like I screw things up around this when I try to do any type of reasonable planning. I am regularly surprised by how I be frank how dumb the average dev is. I know people who are making 350k a year that can't figure out how to SSH. That's absurd. They squarely fall admittedly in like this area.
Or honestly, I would argue many of them are in this area. So, why do I care? Why am I talking about all this? Well, I'm going to make up some numbers just to make this easier. Let's say that there's 70,000 tech jobs created a year and there's 100,000 new CS grads every year. Again, entirely made up numbers. Didn't even check to see what the real ones were. I changed them twice while filming. Just want to make a point here. So, we'll say there's 70,000 new tech jobs and 100,000 new CS grads. That means that there is a 30K surplus.
This sounds like a death sentence immediately, right? Like, if we have more grads than jobs, it's all over. Well, less than half of people are doing work that is directly related to their degree if they have one. So, as absurd as it sounds, it's not necessarily that bad. So if you see these numbers and you look at this chart, you're like, okay, so roughly 25 to 30% of people don't have jobs available. So obviously that means this whole section here, like everybody from here down just doesn't get a job and everybody to the right of them does.
Well, sadly, no interview process is good enough to accurately place people consistently across this range. Even the best interviewers are kind of I'd say one or two standard deviations in either direction for their interview process. So here's our target. We place this here based on the candidates's potential. Funny enough, when I was at Amazon, we had a system for this. The interview loop required you to score each candidate a number 1 through four. And no, you can't do 2.5. You have to give each candidate a 1, a two, a three, or a four. The reason that we didn't do an odd number is because if we did, everyone just picks the number in the middle.
The even number forces you to go over or under the mean. The way that this was framed to us is a two you wouldn't want to hire, but you wouldn't be too upset if they were. A three is you would hire them. You could see yourself working with them, but you wouldn't be too upset if they weren't. A one is, at least the way I framed it was, I will quit if you hire this person. And a four is I will quit if you don't hire this person. So, it's our job to try and place each candidate that we talk to in one of these four columns, but we're not accurate.
I've had times where I gave a candidate a four and half of the rest of the panel gave them a two. I had times where I gave the candidate a one and the rest of the panel gave them a three. So, these systems are not necessarily accurate, but that's not the point. The point is, assuming everybody does their best, we can get a rough idea as to how much we should or shouldn't hire this person. But as I was saying, this is not perfectly accurate. In fact, it's far from it. So, I'm going to take this.
And again, imagine this middle line here is where we think a candidate is. Let's say we're interviewing. Who am I going to pick to bully here? I want someone funny. Oh, Chris. Chris it is. You have been volunteered for tribute, Kish. For those who don't know, he's I believe no longer a college student. Congrats on graduating if you finally did. Kish was very competitive with me in Advent of Code. He actually helped manage the moderation for Advent of Code in our Discord server way back when I first started doing it, when I first started getting attention.
I've DM'd with him a bunch. He's a very talented dev. He knows his leak code [ __ ] very well. He's in his last two weeks of college, which means he's probably doing job interviews. From everything I know about Chris, he's absolutely top 25 percentile of capabilities at dev for sure. He might not have the industry experience yet because he's a college student, but he is a very, very talented developer. Apparently, he also won the Verscell hackathon and has also built a clone of Verscell. All of these things make it pretty clear he falls in the top 25%, at least to me, based on what I know, the interviewing I've done, and everything else I know about Crish.
As such, I would pretty confidently place him roughly here. But you'll notice something about what I drew here with my little reticle. There's a range. It's quite possible he's actually quite a bit over and he's actually top 5% to 1%. But it's also possible I'm wrong entirely. And he goes the other way and he's actually just barely in the top 50 percentile. Nobody's judgment is perfect. And you have to account for that fact. There is a range of left to right here where if I think this person is in the top 20%, they might be in the top 10%.
They might be the top 50. If I think somebody's this far, it is very unlikely that they're actually like all the way down here. But it's possible. There's another standard deviation here. effectively like another curve based on where I place the person relative to where it's most likely they actually are. When I say I think this person's top 10%, I don't mean that they are definitely that. I don't mean I'm guaranteeing this is where they land. I'm saying it is my belief they are here, but the range could be in each direction. So, going back to these numbers here, remember every company's goal is to hire the best devs.
But if your devs aren't that great or you're just being realistic about what you're working on and who you can get, you know these numbers, too, your goal stops being hiring the best and starts to be higher average at least. So assuming your company's trying to hire average, you end up in this range where if you say this dev I believe this dev is average, there's a reasonable chance that they're slightly above and there's also a reasonable chance that they're slightly below. But remember what I said earlier where depending on what you're surrounded with, your understanding of average can be very different and borderline wrong.
If your company's already shifted to this line, like if your average engineer at your company is not average of the rest of the world, if they're like bottom 50 percentile and they're looking for people that feel average to them, this starts to happen. Might not go all the way, might stop here. It is possible for those companies to hire above average devs, but it usually happens accidentally. It is very common that they hire these below average devs. The reason I am bringing this up is because this area here could actually get jobs. It was admittedly, depending on how you defined it, kind of accidental that this would happen.
But this area here, this range below the 25th percentile, the bottom 25% could get jobs. Absolutely, they could get jobs. It was harder for them than people all the way over there obviously, but below average devs and far below average devs were still capable. I know this for a fact because I was able to get a job. When I got my first job, I was a very technical person. I knew how to do things on computers well. I knew how servers worked. I often joke that I knew GNU screen, Git, and SSH before I wrote a line of code because I did, but I didn't know how to write and deliver software that functioned.
I remember in my job interview at Twitch being asked what language I wanted to use and freezing up because I didn't have enough confidence in any specific language to pick one. So I kind of just went with C++ because I had written some recently and it was what I thought about and I just could not solve the problems I was given in C++ because they ended up being really weird memory allocation wise. I don't remember what the problems were. I just remember bombing. I bombed so hard that they changed out one of my interviewers to be somebody more front-end focused to give me some front-end scrolling questions when I had done almost no front end.
And I learned after they literally brought Jeremy in for my interview because I bombed the C++ I had done so badly, they assumed I must be a front-end dev. So, they brought somebody else in even though I wasn't a front-end dev and I bombed that even harder. But since two of the people in my panel really liked me and saw me fitting the team well, even though my skill set didn't fit yet, they let me on on a contract. So, I didn't get a full-time offer when I joined Twitch. I got a three-month contract with the plan being if I did well, I would get a full-time offer.
And then I did okay. So, they gave me another three-month contract before the fulltime. I think that worked out for them. It was a big risky bet. And I'm sure for every Theo they got out of that, they got some [ __ ] too. In fact, I I know that I had to fire a handful of them. But that was a risk they took because based on their calculations, I was here maybe. Like they probably thought I was hereish, like just below average. I was actually probably hereish. But they were hoping with time I could end up over here and maybe even over here.
And depending on who you argue with, either they were very, very wrong or they were pretty damn right. They were also in such a crunch to hire engineers who understood anything about media because they were expanding the media side. and they were building this non-gaming team to do the live streams for Bob Ross, Power Rangers, and all that. And I got to write the code for that, which was super fun. They let me in because they felt like I fit and got along with them well enough to take the risk of this range. And that's how I got in and how I start to really learn how to code.
But it's important to acknowledge a big part of why that happened. All of that stuff matters, but the biggest reason by far, they didn't have more promising options. It was hard to find good devs. It was really hard. This was an era where Google would hire people not to have them work, just to keep them out of Apple, just to keep them out of Microsoft, just to keep them out of other companies they were competing with. Could my team have spent more time and maybe found a better candidate? Perhaps. But in 2017, they didn't have a lot of options.
Well, technically, I was doing the injuries in 2016. So, in 2016, they didn't have a lot of options. They needed people. They needed them fast. They liked me. So, their options were hire this person we like that might not be that good on this contract where we can kick them out in three months if they suck, keep interviewing other people, which they did do at the time. They were continuing to do interviews in that window, too. Or we could not hire him, wait longer, and hopefully find somebody better, but we might end up stuck with somebody who's just as bad at coding, but doesn't fit the team as well.
And they decided to roll the dice. So, even though I didn't meet the technical bar, the potential to meet the bar combined with the urgency of getting somebody on the team and the vibe match that they liked me led to me getting the offer that I went super hard with to try my hardest to keep that job, then ending up in the career path that I'm in today. And here's the harsh reality. This isn't the case anymore. It just isn't because there were so few good engineers, because the interview process was flawed in a way where they couldn't really know how bad I was because the team had this crunch and because they liked me, I was able to get the gig.
That's not true anymore. I got to learn at a job I shouldn't have had. I got to be paid 125k a year to effectively learn how to code. And that sucks. I was okay at data structures and algorithms. None of that matters for real work. I had some popular open source projects. They were all [ __ ] slop. I didn't know how to be a good dev. I kind of looked like one. I could absolutely talk as though I was one. But most importantly, I was just fun and the team liked me. So, what the [ __ ] do you do now?
Hiring is always a function of a few things. Urgency, likability, and competence. The company fully controls the first one. How urgent is this hired to them? Likability is 50/50. This is your responsibility to be likable and it's their responsibility and their role to have a culture that people can like and be involved in. And then competence. This one's mostly on you. Do you actually know what the [ __ ] you're doing? And can you prove it in the chaotic scenario of a job interview? This is also partially on them because most technical interviews suck, especially right now because AI [ __ ] everything.
But these are the keys to getting that job. Historically, you could not have this part and still get the gig because the urgency was so high and if your likability was reasonable, you'd be fine. So, to the frat bros that got their degree mostly by cheating off of the nerds homework, that don't know how to [ __ ] initialize their terminal, they don't know what SSH is, much less what it stands for and how to do it. Those people could still somehow get jobs. And this was the somehow. they were likable enough and the competency measurements were bad and the company had such high urgency they would end up in.
And some of those people ended up getting decent. I'm one of them. I know plenty of others where this is the case where they got in despite their lack of skill for other reasons and it went very well for them. This meant that you didn't really have to be that competent to get a job. You had to maybe sound competent. That would help, but you didn't even necessarily have to if you were likable enough. Now there's a thousand people who already applied for the same role, many of which have other experience that got laid off that appear much more competent and likely are much more competent.
And you have to fight them in the interview process. And if I'm being frank, fresh out of college, you're probably not going to win there. It is really hard to look more competent than the person who has 5 years of industry experience. I also want to be clear, this isn't totally over. I'm not saying like this is fully dead and doesn't happen. As Critz just said, he knows people who are graduating and have jobs who barely can use Git. Absolutely. This will always happen. There will always be more things like this. But there's less of that.
There is significantly less of that simply by the nature of God, I've made it this long without saying the two letters. AI. AI makes incompetent devs look more competent in ways that are annoying. It means lurking somebody's GitHub is no longer a trustworthy thing. It means the quality of their portfolio no longer means anything. The number of projects they've shipped barely means anything. It is easier to appear competent now. That sucks. That hurts the people who are decent but don't know how to show it yet. So, what this means is you got to take the two that are in your control, the likability and the competence.
These are the two things you can actually do yourself and work on and better your position with. And to go back to the original question that started all of this, the question was not even about jobs. It's about my old videos that covered job stuff, but the question was much more about learning things and nerding out. That's this side, the competent side. How do you get good enough that you'll never be a bad hireer? How do you get good enough that the people with more experience than you and more fancy resumes than you would be a worse decision for the company than you are?
And funny enough, the answer to that actually falls a little more on the likability side than you might think. So, we're going to put this aside for a tiny bit longer. Focus on the liability. Gonna ask a weird poll question to chat. Now, on a given day, like an average day, are you the best dev that you hang out with in real life? Not talking about the internet, and I want you to be really honest. I know a lot of you think that you suck compared to all the people you see online. This isn't about them.
This is about the people that you hang out with in a day-to-day basis. Work absolutely counts. Yes, work 1,000% counts. If you go to an office and or like lunch or dinner and hang out with people, like spend time and exchange words is what I mean. Do you exchange words IRL with somebody who is a better programmer than you? I guess I phrase this wrong. Like if there's no devs better than you in a given day, say yes. If there are, say no. I should have framed this inversed. And you might have seen a few things in chat already that kind of give away the premise here.
I live in the middle of nowhere. I might be the only dev in my city. Does my dad count? I don't have many dev friends IRL. Sadly, I work remote. If I was an office, probably not. Can't where I am right now. I live in the least educated city in America. I'm the only dev I've spent any time with in the last 25 years. Do you see why I asked this? There are a lot of devs who, to be frank, I don't know how else to put this other than the word lonely. I'm very fortunate that I didn't really have that experience.
When I was a freshman in high school, there was a bunch of seniors in my school that were really good devs. They were hardcore Linux nerds. Linux pled me when I was 14. And then they graduated and I had a year or so of being the like only person who cared a lot about dev. But eventually my other friends started getting interested and we got to nerd out about these things. I got to hang out with devs every day. Who was better? Who was worse? Arguable depending on a lot of things. But we all liked it enough and I wouldn't have been comfortable saying other than like maybe my sophomore year of high school from when I was 14 to now I am not the best dev I spend time with IRL in an average day.
That is huge. That means that every day I have a huge chance to better myself to improve my capabilities as a dev to learn to grow to push them as well just by living my day. I don't have to put effort in to hang out with more capable, competent, technical people. I'm now at the point where they just show up in my apartment. I'll end stream sometimes and go downstairs and there are just maintainers of important projects sitting there excited to hang. You caught on, chat. One of my favorite quotes ever. If you're the smartest person in the room, you're in the wrong room.
Absolutely. There is no hack to fix this other than if you can getting a tech job in SF and moving here because then it'll be hard to avoid developers. But you can artificially manufacture this. It won't be the same because it won't be in person. But you can manufacture bridges for this gap remotely. And a bunch of people in my chat are already doing this. like D here who took one of my random quips in a video about how I do better design with AI by telling it to make five designs at once, turned it into a benchmark and then linked it to me right as I was about to cover design skills for models, thereby quickly becoming one of my favorite people in the community.
I proed the [ __ ] out of his channel. I highly recommend checking it out. He's going to go places. Correct me if I'm wrong, Dra. Amongst your friends at college, most of them would call you one of the better devs at the school. I'm not asking what you think. I'm asking what your friends think. Do your friends consider you one of the better devs? Yep. Cool. Called it. So, Dar's friends luck out here because Dar's friends get to ride his coattails to an extent as he dives into these communities and spends his time taking study breaks to come engage with us, watch our content, and be involved in the community.
or people like Gabriel, who was making $11 an hour despite being one of the best full stack and frontendle leaning devs I know, being so useful in my chat and in my community that one of the companies I love working with picked him up and brought him on full-time, at least quadrupling his salary, and also surrounding him with a ton of really talented devs he could work with. Gabriel, correct me if I'm wrong, but even your insecure ass would say you were the best dev at your last job, right? Yeah, that's what I thought. This is somebody who I consider one of the best devs I know that himself said he considers himself maybe median like 50 percentile.
Even he knows that the place he was at before he was the best at. And here's the harshest reality. Remember this. The like how good do I think a person is? We're going to use this differently. The middle place is you. You can't know where you fall here. No one does. Nobody actually knows where they fall in this range. People can have a good idea, but if they actually get it right, it's a lucky guess. You are the middle here. You can't know where you are. But hypothetically speaking, let's say you are actually top 25%.
What's the point of this range? Now, the reason I left the range here is everybody outside of it makes you a little bit uncomfortable. You can go about one standard deviation in either direction from your own capability and if you have to go further, you get frustrated. About a year ago, I was mentoring an old friend with her codebase that she was trying to build, and it was the nastiest pile of [ __ ] I've ever seen in my life. I found at least eight different ways to fetch data despite there only being two endpoints. Just loading the initial data for the homepage required seven actions to be called in Redux just to trigger the fetch calls that all had different ways to populate the data.
all vanilla JavaScript, obviously, because according to this dev, TypeScript just seems like too much work. And the back end was a separate repo that was the worst Express app I'd ever seen that was apparently intentionally using an outdated, insecure Express version that was a major behind. All because despite this person having a job for 2 years, their professor said, "This is how we should build." So, they kept using the template that they got in college for starting new projects. And they didn't even hit me up for code advice. They were apparently hitting me up because they wanted me to tell them how good the project was so they could go raise money on it.
I don't think I've ever felt more pain in a technical conversation in my life. I would rather try to explain memory leaks to my mother than have to read that code again. I don't care where you put me on this chart. I'm at least here. So having a conversation with somebody here made me feel physical pain. I don't feel bad telling this story because I have been told by this particular dev that they don't watch my videos because they're too boring. Even if they did watch this, they wouldn't know I'm talking about them because they're also too arrogant to accept the fact that their code sucks.
So, the reason I'm bringing this up is because people get uncomfortable if they are too far above or below the people that they're surrounded by. And I am very lucky here. I am the ultimate benefactor of this reality because if you're in your end years of high school or you're starting college, even if you're pretty far into college, there's a pretty good chance that you are in like this area. It is pretty damn hard to be above average if you've never had a job. So, what happens to those rare devs who are? What happens to the people like Maria who are under 20 and in Chile that don't have all of these great devs around them?
Maybe they have some friends in high school who are learning how to code, but they're like figuring out Hello World in Python while Maria is rebuilding T3 code in the terminal herself. They're teaching Python 2 in school. You get the [ __ ] point. When you are surrounded by people here, there is nothing more painful than being here. And for devs like Maria, devs like D, possibly even devs like Fuzzy here. I do admit I haven't interacted with them beyond this, so I don't know. There is nothing more painful than being here, being in this higher range when everybody you know in the real world is stuck here.
So you end up looking for somewhere to go. You end up desperate to fill the hole you feel in your heart because this gap, you perceive it every day. It manifests as frustration, as depression, as confusion, as insecurity. It manifests in all sorts of different ways. And if I've learned anything from talking with my audience as much as I do, apparently more than I'm supposed to as a creator, according to all the other creators, managers, and businesses I talk to, turns out a lot of creators don't really interact with their audiences beyond like thanking them for subs.
I do. I talk to a lot of people, and I really perceive this gap. A lot of them hang out here because it feels less lonely. A lot of them are here because they are tired of being surrounded by this and they want to be talked to about things in a way that feels less like learning Python 2 in high school. And even if they're actually here and their high school class is in the bottom 25 percentile, they are just outside of the range of their peers. And it is just frustrating enough to be a little bit sad.
Maybe my content is slightly above where they are. Maybe my content is here. The loneliness is enough to push them over. It's enough to motivate them to cover that gap, to learn what they have to, to nudge themselves to the right, because anything is more appealing than spending more time with the [ __ ] down here who don't care enough to learn that are only doing this because they heard from somebody on the news once they might be able to be paid a lot of money. And I know a lot of y'all, especially the people in my chat today, are here for this reason.
You guys are all here today at 6 p.m. on Easter Sunday because the alternative is being lonely. And don't say that finding me is a [ __ ] miracle. The first time you've ever had the ball to send a message. It's not. If you didn't find me, you would have found somebody else. I am not the important part here. The fact that you're looking for these things at 3:00 a.m. Look at all of these 3:00 a.m. people watching right now. Drop your time. What time is it where you're watching from? Drop it in chat. I want timestamps.
8:00 p.m. 3:00 a.m. 9:00 a.m. 900 p.m. Look at all of this, guys. You're not [ __ ] normal. You're lonely. You're filling a hole. And that's not a bad thing. YouTube chat's even crazier with the range here. You guys being here is what's incredible. Not me. The fact that you want it so bad, that you wake up early to watch, that you stay up late to stay part of the community, even though you guys know the video is going to be on [ __ ] YouTube. You don't have to be here. You don't have to show up here and be a firsttime chatter.
How many first- time chatters are at 3:00 a.m. now? You don't have to be here. You know that. You could be going to bed and hanging out with friends tomorrow. You're not even participating in chat, but you're here. Here's why Albby Hacks here said it perfectly. It's nice to hang around here. It feels good. Now, we need to go back a little earlier, cuz this is all part of my plan. Remember the three things that cause people to get hired? Urgency, likability, and competence. You didn't like hanging out with your peers in high school talking about code because you were ahead of them.
It felt bad. Being around people who are multiple standard deviations away from you, better or worse, doesn't feel good. And you're here not for me, not cuz I'm some super genius and if you miss out, you're going to fail and not get a job and suffer. You're here because you like being here. You're here because you like hanging out in chat. Maybe you're not participating, but you're reading it still. You're excited when you see things. If you click the links when something cool pops up, you're learning, you're growing, you're embedding yourself, you like being here.
And here is where you can start gamifying your future because it goes both ways. The same way you like being here, you can also be liked. To be frank, the things that get you excited to see when I'm live and come hang out. The things that make you excited when you see one of my new videos pop up. The things that make you excited when a cool new library appears on Twitter and you get to go dig in and try it. The things that hype you up when you hear that there might actually be a tech conference in your general area you can go to.
That feeling is also really powerful when you're trying to make career decisions both for you and the people who can hire you. You got to lean in a little more. The reasons you like being here also make you likable. Share them. Be here. Get involved. Be more like the awesome people in my community who are in my chat, who are dropping all these cool things, who are as coming out with all of these interesting, exciting people. And do it not because you feel like you have to to get a job. Do it because you're also interested and excited the same way they are.
Don't show up and spam me with your [ __ ] link to your portfolio. Nobody cares. Don't ask me to review your random side projects I don't know anything about. Show up because you care and are excited and show us why. You don't do that by just spamming links to GitHub stuff or random things you built. You do it by asking questions, by being interested, by responding to things people bring up, by remembering when I say, "Yo, does anybody have the link for this thing?" And you remember you saw it on Twitter and you might have it saved and you go find it and drop it in chat.
The fact that you're here means that you care more. You got to lean into that. Let's go back to that original question. How do you learn things? Do you nerd out or take your time or something else? This goes to that competence thing. In order to improve your capabilities, you have to be able to measure them or you are just going to get trapped in Dunning Krueger. And a big part of preventing that is surrounding yourself with people who get it. Ideally, you find a way to do this in person. I was very fortunate to be handed one.
Apparently, people don't necessarily know what Dunning Krueger is. You're not familiar with the Dunning Krueger effect. It's a cognitive bias whereas you start learning a thing, you think you're really good at it, but the more you learn, you realize, "Oh [ __ ] this is harder than I thought." And you realize you're actually [ __ ] at it, and then ramp up from there. Silly example, I'm going to use my YouTube channel here, starting by oldest. My first video is just me posting a skate video. It doesn't count. I just left it out cuz I think it's funny at this point.
My next video was building a modern full stack app. And this was just me going live showing off my stack because people on Twitter wanted to see it. I had no followers or anything. I had my little crew of like a 100 people. I did a stream where I showed off my stack and I put it on YouTube cuz people wanted to watch it. They were asking for it and they didn't like Twitch VODs. So I did that. It went way better than expected. And then I convinced Dan Abramoff to do a mock job interview with me because he was doing mock job interviews and I wanted to show how you can do a good technical interview with somebody who doesn't know leak code.
I was very proud of that. These two videos killed. This one did okay. This one did really good and it brought this one up with it. The original T3 stack video was beating the Dan Abramov one on a basically brand new channel. This is the video a lot of people came in ones in chat if the first Theo video you saw was the Dan Abramov slaying the live code interview. I want to see how many of you OG's are still here. [ __ ] yeah. Crazy that it's been 4 years. Way more of y'all than I expected.
Was it the tutorial? It's even cooler. Honestly, I think it's cooler if you saw the T3 tutorial, but that probably means it was later cuz that one only got like 500 views before the Dan Abro interview and then that boosted both up a ton. So, I bring this up because after these two, specifically after how well they both did, I was convinced I was a god YouTuber. I just stumbled into this and all of my videos are doing great. Every video I do is going to break 100k plays. I'm going to be the biggest tech YouTuber ever.
And I specifically remember the DM that I sent to Ryan Carnegie, the creator of SolidJS because I was convinced that my video where I ported my roundest app to SolidJS was going to be just as big as all the others. That I would blow up Solid. I would be the reason everyone used it. And I was DMing him. I had a group chat with him and a few others. I was so excited that I was going to make SolidJS this massive thing. And then I put it out and it got like 500 plays in two days.
It has since grown a lot. But that was my Dunning Krueger effect. I had two videos. They went really well. I was still new to YouTube. I was like, "Oh my god, I'm a god. Everyone else sucks." And then I kept going and it didn't go great. My next video got 10K plays. Then my next two did okay. They didn't initially. They slowly grew. This stopped using create react app one. I would argue this is my first ever good video where the video itself is good. Not just like me talking about something novel. I did an okay job making this content, but then bombed bombed bombed.
Okay. Surprisingly good. Bombed really good. Okay. Okay. Bombed. Really good. Really good. But like it took a minute for me to figure my [ __ ] out. The thing I'm trying to emphasize here is when you're starting, you will feel much better than you will when you get halfway. We go back to my diagram here. People on this line feel smarter than people on this one. the people on the bottom 25th percentile line feel like they know more than people here. And this has resulted in a very interesting thing where people like Gabriel in my chat who are pretty far to the right of this chart are experiencing Dunning Krueger and have ended up plummeting in their self-confidence as a result.
The more you know, the more you realize you don't. So that's Dunning Krueger. So how do you keep yourself from falling for that? How do you keep yourself from being here and thinking you're great and then doing job interviews and failing? Well, most of y'all, especially those watching live, have already figured out step one. Hang out in communities that know more about the thing than you. I'm being distracted fuzzy. Define imposter syndrome without looking it up. I want to hear your definition of imposttor syndrome. Yes, but the other side of that is when you think you're smarter than you are, it's done in Krueger.
When you think you're dumber than you are, it's imposter syndrome. The problem with imposter syndrome is you get nothing talking about it because people who are experiencing it are like, "Yeah, it sucks that there are smart people who think they're dumb. I'm not one of them. I'm dumb." Your actual knowledge in the gap between that and your perceived knowledge where you don't know much, but you feel like you're really good. Then you know a bit but you feel really dumb. This can also be imposter syndrome. And imposter syndrome is when this is regularly consistently lower than your actual skill level.
You could argue that this part here is imposter syndrome. I know the actual Dunning Krueger paper didn't specifically say this. It is effectively now just a coin of phrase, but it's doesn't matter. The point stands. The reason I bring all of that up is because you can't really measure your competence, whether it's Dunning Krueger or imposttor syndrome or something between or some combo of the two. If you're not surrounding yourself with capable, competent people doing the things that you care about, you can't really know where you are. The best way to know is to be told.
The second best way is to measure yourself against the people around you who are also doing the thing. So, in order to get more competent, in order to get smarter, in order to get better at the things you care about, you need to be able to know what better is. And you can't really know this unless you have the measuring stick around. And that measuring stick either needs to be handed to you by somebody else or built by you using someone else. So, as silly as it is, the reason I slid competence over earlier to talk about likability is that these two go together very well.
The things you do to make yourself more likable and to surround yourself with things you like give you the tools you need to measure how good you're doing and if you're making real progress or not. It also will help give you good guidance as to what you could be learning or should be learning or what other people who have the same interests in you are doing. And another very good call out from chat here. The surrounding can be virtual. It absolutely can be. In fact, for most people here, it probably will be because sadly a lot of y'all don't live in San Francisco because not everybody can afford to live in a city where median rent is like 4 grand a month.
And I get that. Sucks that it's so expensive to be here and there aren't other good tech hubs in the world really. But you can make up for this online. So, how do we pull this all together? How do we go back to that initial question? How do we actually learn and grow as a new dev? Is it better to spend your time nerding out or should you go slowly through all these things that everybody says matter? God, I have a lot of directions I want to go in with that thought. I'm going to resist the urge cuz there's so much.
The biggest thing by far is to do the things you enjoy doing in the space and surround yourself with others who do as well. Generally speaking, I don't see a very enticing future for people who don't like coding in the code world. There are some people who hate coding that are pretty good devs. But if we go back to this, I would be very surprised if people who hated coding ever broke out of the 50 percentile. Maybe there's a few who just had a really bad experience but are really gifted that are slightly above average.
But the average person who hates code is a below average dev. And this is a dangerous place to be nowadays. So ideally, you already like code. And if you don't, you should try to find a way to cuz it'll help a ton. So assuming you found things you do like in code, maybe you found some front-end libraries that are cool. Maybe you're all in on these agentic coding tools and you want to make them go further and do more. Maybe you're a big fan of memory management and low-level stuff. Maybe you're a hardware person. Whatever you like building, whatever you like using software to create and put in the world or explore and go deep on, doesn't matter if you're building real products people can use or if you're deep in the trenches of memory management.
If you get excited about it and you see a post about it on Twitter and it makes you smile, that's probably what you should be working towards in general in the tech space right now. So once you have found those things, what do you do next? The first big thing is ask questions. I don't want to make this a whole like stop using AI thing because it's not meant to be that. I've actually done a very good job not talking about AI much in this video because I don't want it to just be about that.
But instead of asking the AI for a solution, ask it how to approach finding one. Ask the AI how to think about these things. Ask the AI why your existing solution might not work. and ask it specifically, can you give me one small hint to steer me in the right direction? Don't let it generate your solutions. Let it unblock you a bit. Let it encourage you to go deeper in things. AI is magical when it lets you go deeper in something you wouldn't have touched otherwise. It falls apart when it prevents you from going deeper.
How is not the right question for AI. Do it is not the right thing to tell AI. Why is a much better question to ask, but that's not the only question you should ask. One of the most important ones I think you should ask, and not even just to the AI, just in general, is who. I think this might be my greatest career hack. I think this legitimately might be the reason I got away with so much [ __ ] so early in my career. And I think this is to this day why I have been able to find success, especially on the content and open source sites.
When I see something cool, I am more likely to go to the GitHub profile to find the creator of the thing than to read the code of the thing. I spend much more time on profiles on GitHub than repos on GitHub because it's so interesting to dig into who made the thing, why did they make the thing? What led them to making this thing? What experiences did they have that made them want this thing to exist? How did they come to making this thing? How did they choose to build this thing? How has it benefited them?
Are they still working on it? Why are they working on it? And what do they have in common with you? If there is a project you find that speaks to you, something you find cool, chances are the person who built it has a lot in common with you. And if you spend way too much time reading into the details, you'll never get to do the rest. The lines of code aren't where the careers are made or the friendships are had. So if you see that thing that's cool, do a bit of lurking. Don't just rabbit hole on the implementation.
Rabbit hole on the history of it. Rabbit hole on the people who built it, on the people who use it. And Jake just pointed out a really cool thing in chat. got to start telling people that I like their code more. Yeah, there is no cooler DM to get as an open- source maintainer. Then thank you for building this. It has been very helpful for me. No ask, no push, no thing that takes my brain power and makes it so I can't do other stuff. No wasting of my time, just a smile. Do you know how many incredible early follows I got when I had a hundred people who followed me on Twitter just because I like DM'd Ryan Carneato and said his blog post was really cool and then he thanked me and then I asked if I could give him some copy feedback to like make it read a little better.
He was like, "Oh, [ __ ] yeah. I'd love that." And then I did it and changed how he writes. He has thanked me many times now for helping him with his communication, which is crazy. He's one of my [ __ ] superheroes. I just hit him up because I thought what he was doing was cool. And that's how I got here. I made it to one of what I would argue is the actual coolest position in this entire industry where not only can I hit up any person in the space that I find cool and probably get a response, I can also bring out cool people that I don't think are getting the attention they deserve.
It's magical. There is nothing cooler than getting to help somebody get noticed by the community. having somebody like Sty Pete, the guy who made OpenClaw, do a panel with me and call me his first fan. Dan Veil in chat here said he hit me up once just to say thanks for defending game devs and now we've hung out and cuddled. Like, not wrong. We've hung out on our couch a lot now. Like, you'd be amazed of how many cool things can happen just by hitting up somebody who did something cool. Dan's just a very friendly guy.
Don't overread this. In a world of tech, it's still about the people. I'll go even further with this one. Fu Force. In the world of tech, where we're constantly surrounded by increasingly more boring, more sloppy AI [ __ ] the human aspect matters more than ever. A simple, poorly worded, slightly typored, clearly written by a human two sentence DM saying, "Hey, T3 code is so cool. It inspired me to build more." is so much [ __ ] cooler than almost anything you can do for me. My my assistant's gotten mad at me before because I skipped over two sponsor DMs to get to the one where a random person told me how much they appreciated my work.
Yet, I still have to scroll through 30 of them that are people spamming me with 15 paragraphs and links to all sorts of [ __ ] they want me to review for free for them. Don't do that. Just tell them you like their work. And I want to set your expectations straight, especially now that Twitter's DMs are [ __ ] They're probably not going to respond. But for every five to 10 of those you do, one or two might. And at least half of them will eventually see it and read it. And even if they're too busy to respond, which happens to me a lot, the feeling when you see that message is still great.
And please don't do this to me. I am one of the worst people to do this to generally speaking cuz I am so busy. All the people who gave me as an example earlier did this years ago before my DMs were like 500 new people a day. Do this to smaller open-source people that don't have a big following or presence because they need it even more. You could easily be the first person to hit up somebody and say, "Your thing is cool." I've even done this. I got a funny example for y'all here. This is a package I found when I was deeply hunting trying to overhaul the syntax highlighting in T3 chat.
I put a lot of work in. I was about to build my own library wrapping shiki and I randomly stumbled upon this library, React Shiky. It was nearly exactly what I needed. And when I found it on GitHub, it had two stars, the creator and a bot. It might have even been less. I might have actually been the first real star on this, if not the first star ever on this. I was blown away. It was so close to what I needed, but I wanted to make sure first of that it was maintained and second off like if it wasn't that if I forked it, they'd be okay with that.
So, I did some soothing. At the time, Basim was not really on Twitter and I couldn't find his Twitter anywhere. But I found his LinkedIn. So, I hit him up. Hey man, really like your work on this. Just curious, are you planning on maintaining this long term? I will gladly fork otherwise and give you all the credit in the world. We just really need this for T3 chat. He responds two hours later. So sorry it took me a bit to get to you. I thought this was a fishing scam. I didn't think Theo actually hit me up.
Yes, I plan on maintaining this. I don't know how you found it. Let me know if I could help in any way, shape, or form. I'll drop everything to do it. Turned out he had an IT job in New York where he was making a not what you would expect tech salary. He was like repairing computers and networks for a living. He was learning to code for fun on the side and built one of the best implementations of syntax highlighting I'd ever seen in React. When I learned he didn't have a tech job, my first reaction was to be sad that I didn't have any end rolls open cuz I would have loved to hire somebody like him.
But I had been talking to others in the space as I always do. I do a lot of investing. And I happened to be talking to the founder of a company called Assistant UI. Assistant UI is an open source library for doing AI chats in your real apps. So if you want to build an AI chat in your react app for any of many different things, assistant UI is a lot of the pieces you'll need to do that. Assistant UI recently did Y combinator. I think I had passed on investing but was still talking to the founder.
And when I was thinking about Basim, I wanted him to have a real tech job. I wanted him to be out here. So I referred him to the first person I had in mind who was doing something similar which was an open- source AI chat UI library and back end. I referred him to assistant UI thinking there was no world in which he would get this job, but it would be a good first interview. I could get some feedback from the founder, help him get coached and do his next thing, get another job somewhere else where you could be hired like 10 or 15 or so.
Nope, no need. Got hired within a day and got to be the first engineer joining a very hot new AI startup from Y Combinator because I saw his twostar library on GitHub. thought it was cool and DM'd him and now he lives out here working full-time at a really cool company. Had to do one interview to get it. He got the first job, which is insane. I've I've referred many a person who did not get the first gig and he did not ask. If you ask me to refer you to companies, I'm probably not going to do it.
This is a a tell don't ask thing. Like I will tell you that I'm going to help you with this when it makes sense to. Do not ask me to get you a job. I will immediately write you off going forward almost always. But Basim demonstrated so much [ __ ] competence that it frustrated me. he didn't have a job and also he was going through some bad imposttor syndrome he had no idea how good he was so much so that getting DM'd by Theo he just assumed it was fake or somebody trying to scam him the point I'm trying to make here is that the best people to reach out to are the smallest ones the ones who are just doing cool [ __ ] do it in a selfless way because that's the point you're doing it as an act of appreciation for the things you find cool that's why you should do this but you'll end up benefiting greatly long term too in This all goes back to that middle point earlier.
It's the likability. You find something you like, tell the person who made it. Respond to them when they do cool [ __ ] And from that, you'll create urgency in them because suddenly they're realizing people care. They're going to push harder. They're going to put more effort in. They're going to do more. They're going to have more impact. And they're going to remember you. I remember the first 10 people who hit me up saying the [ __ ] I was doing was cool. I'll never forget how cool it felt to have these people who I saw the work of that I thought was awesome hitting me up to tell me how cool I was when I was a nobody on Twitter.
If I for any reason needed to get a normal tech job, I would never have to worry about that. Gabriel in my chat here will never have to worry about getting a job. Chris here will never have to worry about getting a job. And they didn't get there just by being really good devs. That part helped. They did this just by being around because they care and are excited about these things. strive to be the type of person that gets uncomfortable if they haven't thanked the creator of the thing they're relying on. So, how does this all relate to competence?
Well, when you start asking the who's instead of the hows, you start to see how the people who do the things you like got where they are. And you'll start to see overlapping patterns between them. You'll see the things that Ryan Carneato and Shiv and Julius and Gabriel and all of these people have in common. and then you'll just start getting better. I have lots of other small tips like don't rabbit hole too hard. There's a lot of benefit to rabbit holeing and AI makes it easier, but try to explore the tangential things too. Like if you're big on front end, try to do a little bit of design.
Try to do a little bit of API design. If you're big on backends, try to get a little bit into database architecture and try to get a little bit into the front end and the bindings between it and the back end. If you're really into databases, go up and down a layer. Wherever you are, try to go slightly left and right of where you are. Don't be scared of breath just because you're going deep. And don't be scared of depth just because you're going horizontally. The T-shaped engineer. Absolutely. But I don't want to just give that type of practical advice because in the end, all that matters is people.
In a world where there's more AI slop, where we're being surrounded by all of this [ __ ] resume padding crap that is meaningless, where I'm getting DM'd 15 paragraphs by somebody who doesn't even speak English and threw it into AI, which no shame, by the way. If AI tools make you more confident sending a message in English because it's not your native language, I love that. Just make sure they're under three sentences, please. The best thing you can do for yourself is be grateful for the people who are doing what you want to. And let that excitement, let that energy, let that interest bring you to the coolest possible places it can.
In a world of slop, the only thing that matters is the human touch. So find it, follow it, and eventually you can be it. And that matters way more than anything you can learn in class or from a book. Follow your excitement and you'll find yourself surrounded with really cool people who share that excitement. I hope this gives you a little more confidence and direction in how you push yourself as a developer. And also if you're one of these experienced devs that is noticing the junior struggling that you take the opportunity to help them as things change.
The world is very different than the one I grew up in. But that doesn't mean these parts don't matter. The humans matter more than they ever have. And if you're on the other end of this, try to be a good human to help the others who are interested in getting here, too. And if I got anything else, it's this. Don't lose hope. Things are crazier than ever. But if you just stuck through this whole video, you're not going to be on that bottom 50% for long. You will find your way out the other end. Just follow the things that you're interested in and excited about, and I am sure you will find your way to something awesome.
It might take longer than you hope, but you will get there. Until next time, peace nerds.
More from Theo - t3․gg
Get daily recaps from
Theo - t3․gg
AI-powered summaries delivered to your inbox. Save hours every week while staying fully informed.







