Transform: If You Are Ambitious (In Tech) and In Your 20s or 30s, Watch This

Transform If You Are Ambitious (In Tech) and In Your 20s or 30s, Watch This

If you are ambitious in tech and in your 20s or 30s, this guide will help you make the most of these crucial decades. I didn’t touch code seriously until I was 30, and I finally felt like I made it when I earned my first $100,000 at age 33. Coding was my vehicle to success—the time I officially became a senior developer. But rewind to my 20s, and I was broke, living paycheck to paycheck, hanging out with the wrong crowd, and chasing cheap dopamine.

Think you wasted your 20s? I guarantee I outdid you. I was the king of screwing up. In this guide, I’m going to give you the real, exact advice I wish I’d heard at 20—advice that would have saved me a decade. But I wasn’t lazy in my 20s. I was ambitious—ambitious in finding girls, doing drugs, and rock and roll. And here’s the embarrassing part: my big money idea back then wasn’t startups or coding. It was drug dealing.

When I tell you I screwed up in my 20s, trust me, that’s putting it lightly. Fast forward a decade, I picked up that brochure for coding bootcamp, sold my car, and went all-in on programming. Before I break down what it really takes to succeed in tech, let’s clear something up.

The Reality of the Tech Market

You’re probably thinking, “The tech market is too competitive right now. Maybe I should stick with my current job.” But here’s the truth: every industry is struggling. Layoffs, AI disruption—it’s everywhere, not just tech.

So, if that scares you, this guide isn’t for you. But if you’re ambitious and ready to take action today, stick around. Especially for the final point—it will completely change how you see success.

As someone who turned his entire life around by focusing 100% on coding, here’s the most important advice I can give you: when you’re under 30, there’s no excuse not to go all-in on your goals.

Why Your 20s and 30s Are Your Greatest Asset

Look at me. I basically wasted my entire 20s and still bounced back in my 30s. Now, imagine if I’d gone all-in on coding back then. The future version of me would have been unrecognizable.

The downside is nothing, and the upside is everything. There’s something I said recently when my co-workers from Letville were here in Korea. I said something like, “You can lose 100% of what you bet, but you can win back infinitely more.” I was joking about a $3 bet on a gambling app, how it could magically turn into $1,000. I lost the $3, but that’s life.

In your 20s, you don’t have much risk, but everything to gain. So, the objective should be to take as many shots as you can while your downside is basically zero. I learned that lesson too late. I was nearly 30 by the time I finally went all-in. But the thing is, I really didn’t have much to lose at 30 because I hadn’t built anything worth losing in my 20s.

The Power of Stacking Experiences

Here’s what coding taught me: when you chase a big goal and fail, you never start back from scratch. You never go back to zero. Every failure leaves you with experience, which means you’ll never start from scratch again.

My struggles with JavaScript, the endless job rejections—every single one stacked toward my eventual success. Without realizing it, each failure gave me data. I kept adjusting, changing how I studied, analyzing why companies said no. My first year was full of nothing but failure, and more than once, I nearly quit.

But now, as a senior developer earning six figures since 33, I finally get what success really is. Success is far more about stacking your experiences and skills rather than endless planning and strategizing. People think success happens overnight, but the truth is it’s years of invisible work compounding.

The Asymmetry Bet Strategy

The first and most important lesson is to take asymmetry bets. What I mean by this is to go for your goals with blind courage. Go all-in even with the risk of losing because that big win will only come after a series of failures.

When you’re starting out, you have almost nothing to lose anyway. Sometimes it’s as small as writing one line of code in VS Code and seeing the screen light up with red errors. The truth is you’ll never be ready. You just have to start. Take the shot and learn as you go.

If you are just starting your programming career, don’t think of coding challenges as a pass or fail exam. They’re just reps like working out in the gym. And it’s okay to run into bugs. They are just part of the workout. It’s okay to have your computer yell at you with red text. Every bug you fix, small or big, adds to your long-term problem-solving muscle.

The Job Hunting Mindset

Fast forward a few months. You battled through JavaScript. You picked up React and touched Node.js. After all the failures, you’re finally stacking some wins. Now, take that same mindset into job hunting.

Apply for roles you feel underqualified for. The downside is that you get rejected, but the upside is you start to see why you are rejected and start tweaking your approach. I had a mentee this year who started the year off with nine straight rejections in a single week. That’s when he realized his resume was just collecting dust in an HR pile.

He figured out the problem. It was because he lacked real work experience. So, he started contributing to open-source projects and listed those as experiences on his resume. The following week, he was able to land his first interview. He didn’t get the job, but the new resume brought more interviews.

This time, he got past the first round of interviews but kept getting rejected in the second. But he didn’t stop. With nothing to lose, he refined his resume using the Carl method, built projects tailored to the banks he was applying to, and kept stacking skills. He even took unpaid internships just for skill stacking while he waited.

Eventually, he stopped blindly applying and started emailing hiring managers directly, building relationships instead of just sending resumes. Next thing you know, he passed the first, second, and then the third interviews and got job offers from major banks.

It’s okay to fail here, then fix it and repeat this process. That’s the cycle. And with enough reps, what looked like a series of failures turned into what people call overnight success. You finally won because over time, you built a system that finally worked.

The Infinite Game of Programming

Realize that your programming career is an infinite game. It’s not about finishing. It’s about staying in the craft. The real goal isn’t just landing that first job. It’s staying employable for decades.

That means you have to always be a student of the game. I always tell my mentees: if you are not on the edge of your knowledge, coding is not for you. Learning non-stop is what keeps you relevant. It keeps you in the arena.

Even after eight years in tech, I am still learning. Right now, I am diving into AI agents and layering that knowledge on top of everything I’ve learned before. That’s the thing. Even if the tech stack changes, your problem-solving mindset compounds. The lessons you learned in React stick with you when you move to Angular or Svelte.

I started with Vue.js and PHP. Not exactly a dream stack, but the problems I solved there gave me skills I carried into better stacks later. Honestly, learning the hard way is what built my problem-solving muscles.

Think of your career in seasons. First you learn, then you build, then you teach, then you lead. It’s not just about your own progression. It’s a team sport. Your growth should also create value for the company as you serve. As you level up, help your company level up too. Teach, mentor, and document your work so others can build on it.

Competence Over Passion

This is very important: competence is greater than passion. We all want to only do things we like. I was the same way. I labeled myself as a front-end developer because I only liked doing the front end. I refused to touch the back end.

But here’s what I learned: passion comes from confidence, not the other way around. I played guitar for 25 years and like most guitarists, I only wanted to play the songs I liked. But once you master the songs you hate, they eventually become songs you love to play.

Coding is the same way. You might hate parts of it at first, but enjoyment always follows mastery. Take Socket.IO for example. It’s a library for building real-time chat apps. I avoided it for years because I thought it was too complicated. I kept putting it off, using easier tools at my previous jobs.

But with Le Social, I had no choice. I needed to use it to deliver a better product. Did I enjoy learning it? Absolutely not. I hit bug after bug for a week straight. But when I finally broke through, the joy was unreal. I actually understood it. I leveled up that day. And now I know I’ll use this library in future projects.

The same will happen to you. No matter your level, every developer faces this moment because once you master something, passion always follows.

Competence Over Passion

Passion doesn’t create mastery — mastery creates passion. Every developer hits that wall where learning feels painful. But pushing through complexity builds confidence, and confidence fuels joy. The tools you once avoided become the skills that set you apart.

Discover Developer & Software Engineering Roles →

Pick One Thing and Go All-In

I’ve said this before and I’ll say it again: pick one thing and go all-in. I wasted the first year in tech bouncing between Python, PHP, JavaScript, and Java. My bootcamp made it worse. Three languages in 3 months.

You might think exposure to lots of languages is great, but it’s not. It actually slows you down. The real progress comes from sticking to one thing and going all-in. And it’s no different in programming.

So I switched my mindset and told myself and others around me that I would become the best Vue.js developer in the world. I really did that. I really said that out loud that I would be the go-to Vue.js guy. That focus changed everything.

It’s like this. Picture yourself as an RPG character like in Diablo 2. I remember playing as Necromancer. You can spread your talent points across three or four different skill trees. However, it’s always that one skill that you talent into at the end of the one path that yields you the real power in a character.

It’s the same way in programming. Depth beats breadth. So, if your program or your teacher is trying to teach you like three or four or even five different languages, run for the hills. Pick one language, one framework, and eventually one stack. Get good at coding a project from start to finish with that one stack and build that one project until it is a polished and finished product.

That process alone will teach you more than creating 100 shallow tutorial projects. Trust me when I say that one strong repo matters more than 20 half-baked experiments. Kill all the side quests and focus on your main quest. Specialize in one stack, whether it’s MERN or Java Spring or something else when you are starting. Those skills will translate over to other stacks or other languages if and only if you went deep on it.

Pay Off Your Ignorance Debt

Don’t skip the hard stuff and tell yourself you’ll learn it later. For example, every year I see my mentees try to skip Git. That’s why I put so much emphasis on Git at the start of my mentorship program.

I don’t need to tell you how important Git is, but if you skip it early, it can cost you your career. And it’s not just Git. Plenty of skills outside syntax feel less important than coding, but they’re not. They’re all critical to your career, and skipping them will come back to bite you. If you do, you’ll pay later by becoming the teammate nobody wants to work with.

Money Comes With Speed

I don’t know about you, but I started my career because I wanted to make more money. It’s okay to admit that, but money doesn’t come from waiting around for your Instagram moment or that dream six-figure job. It comes from making fast decisions.

You’re not going to create the next money app by waiting around. You’re likely not going to land a six-figure tech job on your first try either. Don’t wait. Don’t overthink. Apply everywhere. The jobs you want and the ones you think are beneath you at the start.

Where you start from does not matter. Maybe you land a $100k job early, but turning down a $50k job while you wait for perfection, that’s just idiotic. That $50k job would have taught you, leveled you up, and been the stepping stone that turned you into a $100k programmer.

Same with code. Don’t hold back because you think it sucks. Push it now. Let others give feedback and make it better. There’s always a reward in acting on something today because tomorrow might never come.

Get Over Your Story

You have to get over your story. No CS degree? That’s fine. Many devs don’t. Too old for career switch into tech? Look at me. I switched at 30. Look at Shay. He switched at 40. My friend Scott also switched midway into his 30s.

Wasted most of your 20s? Good. Turn that story into fuel, not an excuse. You might feel behind when you see these people on IG or YouTube who are young and smart. You might feel like your past failures define your future. But the truth is your code doesn’t care about your past.

Every coder that you see online like Prime Regan or even me once Googled “what is a variable.” We all typed that “hello world” on our console log on our first day. We all started there. There’s no perfect start in coding. And honestly, in life, the only perfect move is to start.

Frequently Asked Questions

Is it too late to start coding in my 30s?

It’s never too late. I didn’t start coding seriously until 30 and made $100k by 33. Many successful developers started even later. The key is taking action today, not waiting for the perfect moment.

How do I choose which programming language to focus on?

Pick one language and go deep rather than spreading yourself thin. Choose based on job market demand in your area, but once you pick, commit fully. Depth beats breadth every time.

What if I keep getting rejected from jobs?

Rejection is part of the process. Use each rejection as data to improve your approach. Build projects, contribute to open source, and keep refining your strategy. Every failure teaches you something valuable.

How do I stay motivated when learning feels overwhelming?

Remember that competence leads to passion, not the other way around. Focus on mastering one thing at a time, and the enjoyment will follow. Every expert was once a beginner.

A Real-World Example: Marcus’s Transformation

Marcus Thompson, a 28-year-old from Chicago, exemplifies how you can completely transform your life in tech. After spending his early 20s in retail management, Marcus decided to make a change at 26.

“I was making $35k a year and felt completely stuck,” Marcus explains. “I thought I was too old to start over, but then I found your content and realized 26 wasn’t too late. I went all-in on JavaScript and React.”

Marcus’s journey wasn’t easy. “I had nine straight rejections in one week. I almost quit, but I used each rejection to improve my approach. I started contributing to open-source projects and building real applications instead of just tutorials.”

Within 18 months, Marcus landed his first developer job at $65k. “It wasn’t the six-figure dream job, but it was a stepping stone. I kept learning, kept building, and within two years, I was making $95k as a senior developer.”

Marcus’s story demonstrates that with the right mindset and approach, anyone can break into tech and build a successful career, regardless of their starting point.

The time to start is now. Don’t wait for the perfect moment or the perfect plan. Take action today, go all-in on your goals, and remember: if I can do it, you can do it too. Coding saves lives.