#195 He Turned Down a FAANG Dev Job to Keep Working Remotely with Patrick Hartley - podcast episode cover

#195 He Turned Down a FAANG Dev Job to Keep Working Remotely with Patrick Hartley

Oct 31, 202551 minEp. 195
--:--
--:--
Download Metacast podcast app
Listen to this episode in Metacast mobile app
Don't just listen to podcasts. Learn from them with transcripts, summaries, and chapters for every episode. Skim, search, and bookmark insights. Learn more

Summary

Patrick Hartley, a self-taught developer, discusses how he built a successful software engineering career after dropping out of college to support his family, including turning down a FAANG offer to maintain remote work for family reasons. He shares insights on teaching oneself programming, the value of mentorship and networking, and how to effectively compete in today's global remote job market. The episode also covers the evolving developer interview process, the role of soft skills, and strategies for introverted developers to thrive while maintaining work-life balance.

Episode description

Patrick Hartley is a self-taught developer with nearly a decade of software engineering experience. When he was 21 he had to dropped out of college to provide for his family. He taught himself programming while working at a thrift store.

After building his own apps and freelancing, he became the founding engineer at startup that got acquired, and has since worked as a dev at other tech companies. A few months ago he turned down an opportunity at Amazon so he could continue to work remotely from his home in Oklahoma City.

He shares tips for: - Teaching yourself programming while raising kids - How to build foundational skills with JavaScript and Python - Getting a remote job when you have to compete with the global developer talent pool - Surviving as an introvert in a networking-heavy and meeting-filled profession

Patrick Hartley on LinkedIn: https://www.linkedin.com/in/patrick-hartley-jr/

Links from the Community News intro:

1. freeCodeCamp just published a massive course that will teach you almost every major data structure and algorithm that may come up in a developer job interview. You'll learn about Time Complexity, Space Complexity, and Big O Notation. Then you'll learn concepts like Trees, Graphs, Dynamic Programming, Backtracking, and more. (49 hour YouTube course): https://www.freecodecamp.org/news/master-technical-interviews-by-learning-data-structures-and-algorithms/

2. freeCodeCamp also published a handbook that will teach you React for beginners. React is a powerful front end development library that tons of companies use to make their websites more interactive. If you already know some basic HTML, CSS, and JavaScript, this handbook is for you. You'll learn about JSX, components, event handlers, hooks, and more. (full length handbook): https://www.freecodecamp.org/news/react-handbook-for-beginners-learn-jsx-hooks-rendering/

3. This SwiftUI for Beginners course will give you the tools you need to build your first iPhone app. You can code along at home and build your own movie browsing app with powerful search features and the ability to stream movie trailers. You'll learn about navigation, API networking requests, SwiftData, and more. (4 hour YouTube course): https://www.freecodecamp.org/news/learn-swiftui-and-create-an-ios-app-from-scratch/

4. freeCodeCamp published an advanced Python tutorial on Machine Learning Lineage. This is important to establish the safety of mission critical AI systems. You'll learn about ETL Pipelines, Data Drift Checks, Model Tuning, and Model Risk Assessment. (20 minute read): https://www.freecodecamp.org/news/how-to-build-end-to-end-machine-learning-lineage/

5. This relaxing 3D browser game where you deliver messages around town. You can customize your appearance and watch other messagers spawn into the game and deliver their packages, too. A chill way to spend 15 minutes. https://messenger.abeto.co/

6. Song of the week: A full live set from Anime-inspired French House producer Moe Shop. He takes his new album and glitches the ever living heck out of. If you like dance music I think you're going to love this. https://www.youtube.com/watch?v=l7DxUZmqvQA

Transcript

Welcome and FreeCodeCamp Updates

Welcome back to the Free Code Camp Podcast. I'm Quincy Larson, teacher and founder of Free Code Camp. Today, we're talking with Patrick Hartley, a self-taught developer who passed up opportunities to work at big tech companies so he could stay home and work remotely with his family. First, I want to give you some cool community news. Free Code Camp just published a free 49-hour data structures and algorithms course. This massive course will teach you almost...

every major data structure and algorithm that may come up in a developer job interview. You'll learn about time complexity, space complexity, big O notation. You'll learn about concepts like trees, graphs, dynamic programming, backtrack. Again, this is a 49-hour course. Try to do it without sleeping. I dare you. Next, Free Coke Camp published a handbook that will teach you React for Beginners.

React is a powerful front-end development library that tons of companies use to make their websites more interactive. And if you already know some basic HTML, CSS, and JavaScript, this handbook is for you. You'll learn about JSX, components, event handlers, hooks, and more. Again, this is a free full-length handbook on FreeCodeCamp. Link in the description. Check it out after you finish listening to this podcast. The Swift UI.

for beginners course that we just published will give you the tools you need to build your first iPhone app. It's a four hour course and you can code along at home and build your own. movie browsing app with powerful search features and the ability to stream movie trailers. You're going to learn about navigation, API network requests, Swift data, and more. Again, this is a free four-hour course on the Free Code Camp YouTube channel. Link in the description.

We also published an advanced Python tutorial on machine learning lineage. This is an important concept because you need to establish the safety of mission critical AI systems. So you're going to learn about ETL pipelines. data drift checks, model tuning, model risk assessment. This is a probably about 30 minute read. If you take your time, if you already have some Python basics, give it a go.

Then I wanted to share this awesome game that I found, message delivery browser game. You just walk around your... delivering messages to people. It's really chill. There's like this nice little fishing village and you can just explore. And it's really cool because a 3d game that runs in your browser and you can play it on your phone. You can just like move your thumb around and stuff. Check it out. It's worth.

15 minutes or so just to relax and enjoy this nice provincial career. The song of the week. Moe Shop is a French house producer. very anime inspired. And he takes his new album and glitches the ever living. heck out of it. If you like dance music, I think you're going to love this. So this is a pretty long glitched out. It's like 18 minutes, but it's like several songs kind of in a big life set. I think you're going to love it. This free co camp shirt I'm wearing. You can get your own.

It is only $20 shipped anywhere in the U.S. It's a nice... tri-blend shirt. I've washed mine like a hundred times, several hundred times, probably still looks fine. And these are personally screen printed by Rafael Hernandez, who hosts the Spanish Rico camp podcast. And he also runs his. own screen printing business in Virginia. Go to shop.freecodecamp.org. Pick yours up today. If you're outside the U.S. in unity, by the way,

Uh, just go to our assets library and you can make your own for personal use. Sorry. I don't want to ship outside the U S anymore. It's a nightmare. People never get their packages. It costs a fortune. Uh, eventually we may ship outside the U S but, uh, for now just, um, Yeah, just feel free to use our assets on your shirt for private, non-commercial use if you want to make your own shirts. Okay, so today's interview.

Patrick's Background and Remote Work Choice

Patrick Hartley. This dude is super chill. He's a self-taught developer with nearly a decade of software engineering experience. When he was 21, he had to drop out of college to provide for his family. He had a kid. And, uh, he taught himself programming while working at the thrift shop, making ends meet after building his own apps and freelancing. He became the founding engineer at a startup, which got acquired. And he has since.

Worked as a developer at other tech companies. A few months ago, he turned down the opportunity to work at Amazon so he could continue to work. remotely from his home in Oklahoma city. He did not want to go back to office. He has a son who has a special needs and he needed to be there.

for him and to take care of his family. And I totally respect that. This guy is from Oklahoma city where I'm from. Uh, and it's, it's really cool to see him succeed. So let's share. He's going to share some tips for teaching yourself programming while raising kids. I think many of us listening can probably resonate with that. Kids take a lot of time. How to build foundational skills with JavaScript and Python and then branch out from there. He learns a lot of like C sharp.

dot net and stuff, because that's just what the local employers in his relatively small tech market are wanting developers to know. And you can just pivot your skills. And learn those. And he'll talk a lot about that. Tips for getting a remote job when you have to compete with the global developer talent pool. You're not just competing with the best developer in Oklahoma City. You're competing with the best developer in India, in China, in Canada, everywhere.

Right. And then how to survive as an introvert in a networking heavy and meeting filled profession, because there are a lot of meetings in developers. Uh, as a developer and Patrick's going to talk a lot about that. I think you're going to dig this Patrick Hartley. Welcome to the free Coke camp podcast. Yeah. Thanks for having me. Yeah, man. It's exciting to talk with you.

You're somebody who has been around, has seen things, and I think you're going to be able to share a lot of insight with the fine folks tuned in to the podcast. Yeah, I definitely hope so. I hope I can provide some sort of help. Yeah. Well, you've been a dev for like a decade, and you really prioritize being able to work remotely, being able to continue to live in Oklahoma City, where you've lived for a long time.

You were recently on the job market. What's it like competing with the global talent pool for remote jobs? So, yeah, I started looking probably, I would say it took me about a couple months to find a job. So I started looking probably close to about a year ago. And, yeah, leaving within Oklahoma. You know, I like to think I'm...

you know, pretty valuable. But, you know, the moment you step out of those borders, it becomes very obvious that you're competing with a whole host of people with varying talents and varying levels of experience. And it can become very overwhelming and a little bit...

you know, discouraging sometimes. Like I said, I searched for, you know, about four to five months before I finally found something that, you know, sort of agreed with me. But yeah, Lee, especially about the time that I was looking... was around the time that there was a lot of tech layoffs. And so I wasn't just competing with people here in Oklahoma anymore. Once you go into a remote position...

Now you're competing against people that were laid off from Microsoft, people that have been doing this for a lot longer than I have, and people... Yeah, that are a lot more experienced in some ways. And like I said, it can be a bit discouraging sometimes, but I stuck with it and it ended up working out. I found a place that I really love and that really values me and that I felt like it was a really good fit. And so in that sense...

You know, it was one of those things where you wait long enough and hopefully something right will happen. Well, luckily that worked out for me. Yeah. And how early on did you decide, no, I'm not going to go take like the... jobs in various...

Big cities in Texas, for example, like a lot of jobs here in Dallas, a lot of jobs in Austin. And then, of course, you got your California jobs, your Washington State jobs up in Seattle, a lot of big tech companies up there. Like how early in the process did you just kind of make that decision?

Because my understanding is you did apply to like Amazon and got pretty far before you decided that that wasn't the right place for you. Yeah. So I was kind of interested in relocating at first. So, yeah, I did. apply to Amazon. I got through a number of the screenings and was invited out to Austin actually for a on the site interview. After thinking about it and talking about it with my wife, I decided it was probably a better decision to stay local or, you know, stay where we're at.

One of the reasons contributing to that, I should say, is that my son has autism and we homeschool him. And he just requires a certain amount of care that my wife provides. And so she stays home. And so we are. Whenever we need caretaking, my mother provides that. So we have a really strong family structure here in Oklahoma City. And leaving that just seems like a very daunting task. It seems like a big hurdle to jump over.

When I was invited out to Austin by Amazon, I was obviously very flattered. And part of me really wanted to go just to sort of experience, you know, the Fang interview experience. But...

After thinking about it, after talking about it with my wife, I decided it was kind of a waste of my time. It was kind of a waste of their time. I didn't want to waste their time as much as I didn't want to waste mine, and so I decided against it. Like I said, we just had so much... kind of structure here in the city that it was it became too much to leave yeah and for everybody tuning in that doesn't know my personal background i did grow up in oklahoma city uh so now i'm located about

four hours south in Dallas, but Oklahoma City does have a developer community. TechLahoma is doing really cool work out there. A lot of tech companies getting created over there. Realistically, it's not a major tech hub. There are developer jobs there. I would say it's a small-knit community, too. We all know of each other. It's like I said, I could probably find a job here within Oklahoma.

After some of the jobs that I had, to be quite blunt about it, like salary became a thing to where it's like within Oklahoma, salary, the job market hits a certain amount. And in order to get above that, you're kind of forced to sort of look outside of Oklahoma City after a certain point.

Journey to Becoming a Developer

Yeah. So let's talk about like your background and I want to dive into how you were able to go from, you know, somebody who dropped out of college and had limited skills. to somebody who was working at these tech companies in your area. And maybe you can walk through kind of like your personal journey up to that decision to drop out of college, like maybe starting with your...

interest in computers in general. And my understanding is you did study computer science as an undergrad. That was the major you chose. Yep. Yeah. So I think I started off in college under Entertainment business, I like the idea of being around the entertainment industry, music and movies and stuff like that. But then...

I'd always been interested in tech. I was the kid that would tear apart radios and try to put them back together just to see how things would work and tinker with stuff like that. When we first got our first home computer, this was way back... Probably just America Online, if that says anything to anybody. So whenever we got our first home computer, I was absolutely obsessed with it. I was on it all the time. I thought it was really awesome. And...

So when I went to college, I quickly realized that I really loved this tech stuff and maybe the business side of things just didn't... you know, shined me like it originally did, and I decided to switch tracks and go into computer science. I was there for about two years, and unfortunately, I was with my girlfriend at the time. She got pregnant, and, you know...

Like what happens. Life happens is how I put it. And after that, I had to end up working full time to support the family. So I did that for a little bit. Me and her broke up. Obviously still have the child. She lives in South Carolina with her mother. I love her to death. I got with my wife, my current wife now. And once she became pregnant with my son, there was a big onus on us of...

I shouldn't even say of us. It was really on me. I really wanted to do something that could provide for my family a little bit better than what I was doing. At the time, I had sort of, you know... a collage of jobs. Um, one of them, I was working at a thrift store, cleaning all the stuff in the back before it was put out on the floor. So I was cleaning old shoes and, uh, you know, baby, baby, baby equipment, stuff like that. Uh, and.

You know, working there is just like, I want to be doing something different. I want to be, I want to provide, essentially it was I wanted to provide a better life for my family. And knowing that I had those tech skills sort of in my back pocket that hadn't really been developed a whole lot. And it was a huge interest of mine. I decided that I really wanted.

Mentorship, Networking, and First Job

to give it a go. And my wife, who was pregnant at the time, said, well, if you're going to do it, do it. Because she had known that I tried a few times, but I really didn't commit as much as I probably could have. Like I said, life sort of happens. But we got to a place to where it was a little bit more stable. And so...

After work every day, I would come home. I would lock myself in my bedroom. And for three to four hours, I would just learn. I would learn on free code camp. I would learn on any sort of free tool that would help me hone my skills. I primarily started. And when I went to college, there was a big emphasis on Java. Once I started...

Getting more interest in tech, I realized that the market, at least in Oklahoma City for Java, was pretty limited. So whenever I started learning, I started learning primarily with JavaScript. From there, I learned front-end frameworks. And from there...

After about six months of teaching myself, I was working with a mentor at the time, and he told me that I was probably ready to start looking for jobs. I didn't feel that way, but I trusted him, and I started looking for jobs. And about six months after training myself... I was finally able to land a job working as a front-end engineer for a fairly small company, but it worked out really great. Yeah. Maybe you can talk about that mentorship relationship. That's interesting.

Yeah, we weren't extremely close, but it was definitely something it was enough that it kept me going. And it was enough to where I could ask him questions whenever I got stuck about learning resources, about the job market. You know, whenever you're learning, I think there's. there's sort of a confusion because the way I learn is very different than the way that I worked or that I work currently. And so I would ask questions like,

Whenever I get a job, am I going to be coding 100% of the time? What percentage of this is going to be meetings? What percentage of this is going to be going over documentation? What percentage of this is going to... So I'm trying to feel out what the...

actual employment situation looked like. He was really great in that. And then he was also really great, like I said, kind of determining, you know, when I was job ready. I think imposter syndrome is huge in the deaf community, especially among people who are self-taught.

really hard to identify when you're ready because I think nobody really feels ready. You know, I know I didn't. And showing him my work, showing him some of the things that I was playing around with, some of the simple things that I built using the front end skills that I had harnessed.

You know, after looking at that, he said, yeah, I think you're definitely ready. In fact, you were probably ready a month ago. Why don't you start looking and go and just see what happens? And I did that. And I was very, very blessed in the fact that I think I got. Three interviews and I was offered two of those jobs. So I was very, very lucky. I really attribute a lot of that to my soft skills, to be honest. You weren't like just going on some web app.

you know, application form and filling out applications. Like, were you using a network? How are you getting out there? to find those opportunities? Yeah, so I was using the network through my mentor. So I was part of TechLahoma. And so because of that, there was a lot of businesses that knew of...

I knew of that organization and knew of the people coming out of that organization, knew how committed they were. I was going to meetings at least once a week. That was another part of me being a little bit more dedicated than I had been in the past. I'm trying to be a part of the community. And I'm very much an introvert, so it was very against my nature. But, you know, I went to those meetings. I tried to talk to people. I tried to make friends and acquaintances.

Through that, I met some recruiters that also helped me as well, and they were extremely valuable, especially as a first-time person. It can be hard to get your foot in the door. Recruiters can kind of be a help for that. So, yeah, I had a number of people that kind of helped me along my way and, you know, obviously very grateful for all of them. Yeah. So just to recap some of your insights, first of all, having that mentor sounds like.

College vs. Self-Taught: Practical Skills

Worth his weight in gold. Yeah, definitely. Just having somebody there that's been there that can give you context so it doesn't seem like such an abstract thing. What is it like to work in a developer role? Exactly. And not being in that industry. And I didn't have a lot of friends in that industry before I started.

going to those meetings. And so I was just, I was on an island at first, as far as, you know, I don't know where I'm at compared to other people. And having a mentor really helped sort of frame the picture for me as far as, you know. how I was doing, where I needed to go, what markets were most rich within the area, which languages and frameworks were valuable for trying to get a job here in the city. Everything like that, he was extremely valuable in helping me with.

That mentor, finding that mentor. But like the big profound thing I took away from that is the value in going to local developer events, finding them through. meetup.com or there's like this app luma that like a lot of people are using now when i go to san francisco all the tech events are on luma uh l-u-m-a uh and then uh just Word gets around about these events, especially if they're long, recurring events. A lot of universities will have like a...

computer science club or something, even if you're not a student, you may be able to participate in those and just get to know people. And then you're not a resume in the inbox. You're a known quantity. Oh, I've talked to this person before. I saw him at this, you know. tech conference a while back or something like that, right? Because that's something that both Danny Thompson and Leon Noel, whom I recently interviewed, talk about. You shouldn't...

be applying to web apps through application forms. You should be meeting people and shaking their hand and leaving some sort of impression that people can walk away with. Yeah. So the other thing that I took away from that is just your mentor said you were probably ready like a month ago. Like six months is really fast to get a first developer job.

One question I have is, like, so you were studying CS, and I know you were, like, learning Java and probably doing a lot of general education requirements and stuff that people did during the first two years of school. So I don't know how much programming you even got to during your two-year short stint at university.

university, but like how useful has that knowledge been on the job? I would say it provides a foundation. I would say, like I said, I was mostly learning Java, which I'll be honest, I have not used since. But it provided the way of thinking, I think, that really became more valuable as I became a developer. Like I said, later on, I'd always been interested in it, and I dabbled in it a few times since dropping out of college. But when I finally got back into it...

Things started clicking, so it's sort of like riding a bike, I would imagine. You know, you train yourself to think in a certain way, and then... Even though you've stopped for a while, the moment you sort of get back on the bike and start riding again, it's like, oh, I remember this. I remember how this works. So I do think it was valuable. The individual language that I was using and stuff like that, but that's all sort of...

tertiary, I think, in terms of the real value that it provided. As far as staying there for four years, how that would have turned out, I don't know. Worked with a lot of people who did four years. And I've actually worked with managers who told me that sometimes we prefer self-taught people because there's a lot of people that come out of college after four years, but they just don't know how to build anything. They learn a lot of theory. They learn a lot of terms.

They learn encapsulation. They learn all these terms, but they don't really know how to put it to use. Being self-taught is one of those things to where the only thing that my resume... you know, had to show was actual projects that I had worked on, actual things that I had built, because obviously I didn't have that sort of formal education to fall back on. So I think it was valuable. Yeah, I think it was valuable in its own right.

Projects and Evolving Interview Processes

Yeah, and let's talk about some of those early projects that you built when you were learning programming on your own, working at the thrift shop, busting out the laptop, and using FreeCocamp and other open learning resources. What were some of the projects you built to kind of get your sea legs, so to speak, and to also have something you can show to prospective employers that proves that you know what you're doing? Yeah, so...

I did things that were just of interest to me, to be honest. I think I did a Twitch status. This was back when Twitch was in its infancy, really, but I did a Twitch status. sort of updater to where you would provide the names of all your favorite Twitch people and it would let you know whether they were online or not at the time and how long they had been streaming for. I did another project that was...

There was a series of commercials back then called Sales Badger to where it had a puppet badger that would try to sell cars. And those commercials, for some reason, just were hilarious to me. So I created a soundboard of all the funny things that this little puppet would say.

Me and my friends at the job that I was working at at the time would just die laughing. We thought it was hilarious. And so that was something that I took into my first interview that was sort of appreciated. And, you know, the real value behind those was using different libraries, using different frameworks. and showing, what I wanted to show was a

was a width of experience, just a wide range of things that I've been involved in. And so I think for the SalesBadger soundboard, there were some sound clipping libraries that I use there. For the Twitch streaming status, there was API calls that were...

done there. So I just wanted to, whenever I finally got in front of a prospective employer, I just wanted to be able to show I've worked with a number of things, you know, anything that you can throw at me, I can pick up and I can work on. So it was very important to me to sort of just

a wide range of things that I could work on. Awesome. So show employers your width of experience. I like that term. And then as you're going out and getting these jobs, like maybe you can walk through what the interview process was like. Back then, this was around like 2018 or so. I don't know. It's been like 10 years. So like 2016 or so. And then...

And then maybe you can compare and contrast that with what the developer interview process is like now that it's become more competitive with more senior talent, kind of like looking for jobs and stuff. Yeah. So when I first started out, It was a little bit different in that I feel like there was a number of soft skills that really got me in the door and honestly landed me the job. I actually, one of those three interviews, I...

I had talked about previously my first set of interviews. One of them told me straight up that I was not the most technical person that they had interviewed and that I was probably not the most knowledgeable person, but they wanted... Excuse me.

But they wanted to hire me because of my soft skills. They said, I think we can communicate with you a lot better than some of the other people that I applied. I think you're willing to learn. I think you're hungry. All those things I thought described me pretty well. And so there was a number of soft skills.

that I could use to sort of wedge my way in. And then, you know, then I could, you know, show through my technical chops that like, yeah, I may not be the most technical now, but I'm a very fast learner and I can pick up things very quickly. That happened on my second interview and on my third interview. All my interviews have gone, or I'm sorry, the interviews that led to my other jobs, all those interviews were very much...

very highlighted a lot of my soft skills that I was very proud of. Nowadays, at least in the most recent example of me looking for a job, there's a high interest on a lot of technical stuff. And it becomes very difficult because, you know, My entire career has been built around Angular and .NET, but I am not the most technical, proficient Angular person. I am not the most technically proficient .NET person. So sometimes...

Unfortunately, some of these companies are looking for the most technical person they can find. And sometimes those soft skills they're not that worried about. They just want to find the most technical person with the most technical experience. And unfortunately, sometimes you get sort of pigeonholed into some of these things. That's like...

I do know React. I love React. But it was very difficult for me to get a React interview because of my vast experience in Angular. And I didn't have a lot of professional experience in React.

I feel like a lot of times nowadays, I should say some, some of these companies are really just looking for the most technical person they can find with the most experience and the very specific stack that they're looking in. And unfortunately, I feel like some of these companies are really missing out on... candidates that, like I said,

can bring a wide range of experience. And sometimes I think showing that wide range of experience shows you I can work on anything, you know, whether you change stacks later on in the future, or you decide, hey, we need to bring in this library to facilitate some sort of feature or epic that we're building.

like some of these companies are really missing out on candidates that have a more varied set of skills than sometimes being extremely proficient in a very niche, small amount of tech. I mean, that may have something to do with just like the nature of having... usually non-developers doing the...

Navigating Job Market Frustration

you know, triage process in terms of figuring out which candidates to interview. So they're just, they have 10 years of experience doing this specific thing that my, uh, you know, software is telling me is important right now. Or my manager is telling me go hire somebody who has a lot.

a React experience. Their mandate may be as simple as that. I can't tell you how many interviews I had to where it was like, yeah, I don't know what this is, but I was told that you're supposed to have five years experience of this. I don't know what this is, but do you have experience of this?

Yeah, those interviews can, they wear on you a little bit. So, like, having a relatively frustrating experience, we can, you know, yesterday's tragedy is tomorrow's comedy. You know, you probably went through fairly ruling. uh battery of interviews and dealing with frustration like i've got those i'm a dev yeah what do you want from me right exactly like yeah and i think a lot of people like you you'll see this on social media and stuff people just

burned out on the process of trying to talk with these people or worse, these AI systems that don't understand these things. But... I think most developers that are actually hiring managers, if you can get in front of an actual developer for a technical interview, they're going to understand, like, oh, well, Angular's not that different from React, right? It's still a front-end development framework.

and that like a lot of the skills can be applied but you do have to do a lot of explaining and like Sometimes the person that you're talking to, maybe you can talk through the process of interviewing at several of the companies that you interviewed with on this more recent. Go through it because you just got that job a few months ago. So you are in a great position to empathize with the plight of the...

relatively experienced developer who's out there right now trying to get developer jobs, especially remote developer jobs, which are much harder to get. But, uh, Much better. Right. Yeah. Yeah. So I would just say that, you know, just stick with it. And, you know, the good thing about me is that.

The type of job that I landed at, and really all the jobs that I've landed at, have been a really good fit for me personally. Because like I said, I'm very much a developer, I'm very much a technical person, but I do have soft skills that I'm very proud of and that I think really, you know, sort of... Compliment.

a lot of my tech skills as well. I think that's why, you know, some of the projects that I've been involved in has been as successful as they are, is that I'm able to wear a number of hats. You know, I'm not just a developer. You know, some of the projects that I've been involved in, I've also been a designer. I've been a product manager.

I've been back-end, front-end. I've been all over the place. You know, a lot of the stuff that I've worked on in the past in some of our projects has not been technical at all. And so... When I finally find, you know, an employer that sort of values that, it's just the perfect fit. And so I would say if people are having a hard time finding that fit, eventually you'll find someone that values the...

You know, the skills that you bring, whether they be technical, whether they be, you know, a little bit more on the soft side, whether it be a mixture of the two. You know, I will say that every job that I've had, I've been very blessed and I have felt like it was a good fit for me.

personally. So, you know, not everybody's going to be in my situation. Some people are going to be very, very technical on certain aspects, and I'm sure they're going to find their fit too. It's just a matter of, you know, finding somebody who values you for what you bring to the table. That was one of the...

very most important things for me because I had a lot of interviews like I don't need anybody patting me on the head or, you know, kissing my butt or anything like that. But it did seem like there was a lot of these companies that.

Like you said, we're just trying to find the most experienced person in these three things. It didn't matter what else was going on with this person or what was going on professionally. But there were a couple of companies that were like, it seemed like they definitely valued what I brought to the table. were the most fun interviews as well is because it began a real good conversation over you know

You know, how much of the job is tech skills? How much of it is being able to talk to product managers and UX, UI people and even customers directly sometimes? And so having those conversations were a lot more entertaining to me.

And those companies really spoke to me a lot more at the end of the day anyway. So I would just say, you know, it's going to fit where it's going to fit. And if you haven't found your fit yet, there's a company out there that's looking for you probably. And you just got to be patient and just. I know it's hard. I looked for months and months and months. I looked for almost a half a year. And I was...

Blessed in the fact that I was looking while I already had a job. I know that there are people who aren't employed who are looking and who are, you know, very, very despaired about that. But I would just say just keep at it and you're going to find a good fit for you. Yeah. Awesome. One of the things I want to dive deeper into.

The .NET Ecosystem: Pros and Cons

is your specialization around a specific stack. So, of course, there are lots of Java developers out there. There are lots of full-stack devs that just use Node on the back end or that use like... Python libraries like Flask or Django as their backend, kind of like what I call the open source...

like most conventional stack. And then there are more proprietary stacks, if you will, such as the Microsoft .NET ecosystem, which is an entire tool ecosystem that has its own libraries for everything and very powerful. And FreeCodeCamp, of course, has lots of C Sharp .NET courses on the FreeCodeCamp YouTube channel. We've also worked with Microsoft to create the C Sharp foundational certification, which is...

Free. And anybody can get it on Free Code Camp. And it's a joint certification between Free Code Camp and Microsoft. Are people sleeping on .NET? Like, do you think that it's something that more people should consider exploring as devs?

I think it really depends on how you want to move forward. I've noticed that a lot of the startups and some of the smaller companies that I had started interviewing with, none of them really used .NET. They were using a lot of Node like you had... talked about there's a lot of python i think the overhead on those are a lot smaller um even i mean even if you just start up a c-sharp

or a .NET project, there's a lot of boilerplate that goes into it. I mean, it's a huge project before you even type your first code. So I think there can be a lot of overhead, and it can be sort of daunting to start on something like that. But for me personally...

Within the Oklahoma City market, at least, I can speak towards almost everything was .NET. Almost everything was .NET and Angular. Everybody was just really bought into the Microsoft ecosystem. And for me, that was really the only way of moving forward. I loved my time with .NET. I love it now. But when you're...

When you're trying to do something quick and fast or quick and dirty, it can be a lot of overhead to get started on. I know that recently I've started a new project where I tried to use a .NET backend. I was sort of trying to see how far I could get vibe coding. using AI alone. And I think the number of files, I think the context, I think there's just a lot going on with .NET to where it made it very difficult. I restarted that same project with a JavaScript backend and...

Boom. Man, that just flew. It just flew up the handles, how fast it was. And so... .NET is a mixed piece. It's really great, I think, once you get into corporate environments and you really need strong typing, you need a lot of infrastructure. It's really good, I think, when you have a lot of cooks in the kitchen, so to speak. There's a lot of ways that...

It sort of protects you against messing up when you have a lot of people working on the same code base. But if you're needing something quick and dirty, yeah, Python and JavaScript are really, really great go-tos. Yeah.

Adapting and Excelling in New Stacks

And one thing I'll say about AI-assisted coding, I don't like to use the term vibe coding because I think a lot of it is actually not vibe coding in the way that... Andre Karpathy originally coined the term where you just let the computer do everything. You can do that. That's not advisable. Yeah, I wouldn't either. Yeah, AI-assisted coding, which Free Code Camp has a book that we published recently by Murgesh Mahapatra on our team.

that'll walk you through like the entire tool ecosystem and emerging best practices and stuff like that. Uh, but, uh, the large language models, uh, you know, cloud code and all this stuff they are trained on. open source code. And there's a lot more open source code written in JavaScript and Python than there is written in C Sharp. A lot of the biggest C Sharp code bases are probably closed source. So it doesn't have the same corpus.

of examples to draw upon as it does with JavaScript. I think JavaScript, just by virtue of being by far the most ubiquitous programming language... Certainly represented in open source, it's got this huge first mover advantage or this huge advantage in terms of like because LLMs are going to be so good at generating JavaScript, it's going to become more and more of the...

big open source ecosystem, especially for small projects that are just getting started out. And I can definitely understand if you're like a bank or, uh, you know, uh, an educational, uh, backend tool, like what you're working at with now. That's like, yeah. has tons of security requirements that the governments are probably requiring if you're working with like...

the data of minors or if you're working with health records or something like that. Like, what C Sharp and .NET offer is a whole lot of things to prevent you from screwing up. Catastrophically. That's a great way to put it. That's exactly how I would put it. And like you said, working with huge teams, it makes a lot of sense to use like a big framework.

that is uh maintained uh with like service level agreements and things like that yeah so uh but it sounds like if i were to kind of like summarize your advice is like no problem like just learning a lot of c uh a lot of uh python and javascript and then

depending on what is big in your local job market, it may make sense to tool up. Yeah, so I should have said that. Yeah, whenever I was learning backend stuff, I actually started with Node because I was working in JavaScript and that was the first language that I...

was learning. So the first project that I did a backend on was Node. And then once I got the job, I got a job and they told me that the stack was going to be Angular and .NET. And I had not done anything at all in .NET and Angular at that point. But for those two weeks before I left the job that I was at...

before starting the next job. For two weeks, that's all I did. That's all I did was just Angular classes, .NET classes, and so I came onto the job sort of at least halfway knowing what I had done, and they were extremely pleased and surprised. So a lot of getting the job and...

Doing well on the job also is just that initiative, just that grit of wanting to prove yourself, being a little bit hungry, you know? So, yeah, that paid off in spades later on. Awesome. And that's my next question for you is I want to dive deeper into...

Succeeding in a New Developer Role

What it's like at a new job that you just got. Now you've had this experience as a new developer. Now you're having this experience as a more senior developer. Maybe you can compare and contrast. Everybody talks about how do you get a job, but nobody talks about how do you succeed in those critical first few weeks at a developer job. Can you walk us through maybe your first developer job, what you did, what you learned?

from those first few weeks in terms of like asking questions to your peers and figuring out the lay of the land, figuring out how to navigate the legacy code base? Yeah. So my first job was at a media. I'm trying to talk about how to describe it. Whenever you go into a bank and you see the commercials on the TV of...

you know, advertising, you know, our car loan numbers and stuff like that. Well, all that gets beamed up to the TV through some sort of controller and all that content is managed somehow. And so I work for a company that... provided that, provided a way to, through an online portal, provide content that would be beamed onto these TVs. And it was essentially a way to advertise during wait times. And so...

Whenever I started there, the big question was like, what am I going to be doing all day? Am I going to be coding 100% of my time? And for that job, actually, the answer was almost, almost really. Whenever I came into my first day on the job, the very first thing they said is,

We're using Angular. We're using .NET. Here, they had a Pluralsight membership that they provided through the company, and they said, you know, here's your Pluralsight login. Get to learning. And luckily, like I said, I spent two weeks trying to brush up on that, so it was pretty quick. Pretty quick ramp up for me, personally.

Yeah, so that first job, it was a lot of coding, and it was basically sitting in a room with two other coders, and we didn't talk to each other very often, but it was just 100% coding, just getting down and dirty with the code. Now, I will say, obviously being new, there was a lot of... questions about where things were located. What does this file do? What does this config file do? Where does this map up?

Questions like that, I think I asked out the gate pretty quickly. There were other questions that I tried to, I mean, part of being a dev is really reading documentation and finding out answers for yourself. I used to joke that being a dev is just being an expert Googler. Knowing exactly what to Google and when and how to find the answers for what you're trying to do is so much a part of the job that I feel like...

junior devs really need to experience that is that um you know well i don't know how to do this if i were a senior dev i'd say well have you looked at my very first question would be have you looked it up yet have you looked at the documentation have you searched how long have you spent trying to find the answer on yourself uh or find the answer for

yourself and then um you know my rule of thumb and the rule of thumb that i kind of stand by today is after an hour of searching and experimenting and trying things if you still haven't gotten it That's when I usually reach out to somebody who I think might be a little bit more knowledgeable about me, about the situation that I am.

Because obviously, you know, you don't want to be bothering the seniors about every little thing that comes up, especially when most of those things you could probably take care of yourself through a Google search or through documentation. But at the same time, you don't want to be drowning.

you know, quietly drowning in the corner because you don't know what you're supposed to be doing. So, you know, and like I said, me being an introvert, it was kind of hard for me. And I think it's hard for everybody to admit, hey, I don't know how to do this. I realize you just hired me to be a developer.

I don't know how to do this. I need help doing this. Getting over that bubble and understanding that them hiring you as a junior dev, they understand you're not going to know everything. They expect you to not know everything. And in fact, I would say it would behoove you to ask more questions than you think you probably should because...

They know you don't know these things and they expect you to ask questions. At least that's been my experience. Yeah, yeah. So it sounds like being able to figure out how to strike the balance of when to ask questions. You said... your general rule of thumb is like work on it for an hour. And if you're stuck after an hour, go ahead and seek outside help to get unstuck. And, uh,

That is important because you don't want to come across as completely incompetent, but at the same time, you have to have the humility to not just try to fake it. Exactly. I'm doing fine over here. No problem over here, right? Yeah. That's not going to...

that's not going to get you where you want to go. You do need to ultimately be able to ship things. And sometimes that involves kind of like swallowing your pride, so to speak, and just asking for help. And now maybe you can contrast that with like...

Effective Meetings and Team Leadership

That first job, it sounds like you had the dream of not having a whole lot of meetings. A lot of developers complain about meetings. I think that meetings are important to save time. and make sure everybody's aligned and figured out what to do. There's this quote that I love. Weeks of coding can save you hours of meetings. Yeah, exactly. This said... Beatings.

You don't want to go overboard. And there are plenty. I talked to people at like Google that are like, oh yeah, I'm in meetings six hours a day. I'm like, okay, if you're in meetings six hours a day, like how much time are you spending coding? Oh, I'm spending eight hours a day coding on top of those six hour meetings. I'm like, oh no.

That doesn't sound like the lifestyle for most of us. It's certainly not those of us who have kids. So you have managed to get a new job. And, like, what's it like there in terms of your... onboarding experience working remotely at a pretty big company like you know hundreds and hundreds of people um compare and contrast

with the much smaller environment you were at before. Yeah, so the place that I work at now is an education company that runs an ERP product for teachers and school districts and stuff like that. It's definitely a much bigger company than where I started out at. There's definitely a...

lot more meetings. And it's like you said, there's good sides to that. There's bad sides to that. You know, there's everything in between. I definitely agree that meetings are necessary. It's great to know that everybody's on the same page. It's great sometimes to have a standard You know, same time every week or same time every day, stand up meeting to make sure that we all understand what's what's needing to be done for this week. Where are we out on that? You know.

Does anybody need any help? Are there any blockers? So, yeah, the place that I'm at now has definitely a lot of meetings, but I've... So I'm the team lead where I'm at now, and I've definitely tried to foster an environment to where we have necessary meetings. When I first came in, we were in a two-week sprint to where we did a stand-up every day, we did a retrospect every week, we did...

like a grooming for certain items as we, as we were moving throughout the week. And, but when I became a team lead, I decided that I wanted to try to get rid of some of those meetings because I felt like there was just a lot of, sometimes there can be over communication. Sometimes it's like, okay, we, we, talked about it. We've talked about it. We've talked about it. When are we going to do it? When are we going to work? And I felt like there was a lot of talking and the...

The work that we were trying to get done was falling behind, and I wanted to try to counteract that. And so I was very blessed in the fact that I was provided with some really great team members.

The limited amount of meetings that we have have become, I would say, even more fruitful than the everyday meetings that we have. So we used to have meetings every single day. Now we have them three times a week. We have them on off days. And those off days, the meetings are longer, but I feel like they're full of a lot.

more fruitful information the way that I kind of described it to my manager the other day was it's sort of like being on social media sometimes when you're on social media with your friends you see what they're doing every single day so that when you finally see them in person there's really not a whole lot to talk about because you know what they

been up to. They know what you've been up to. But if you're sort of detached from social media a little bit more, it becomes a little bit easier to talk to your friends whenever you see them in person because I genuinely don't know what you've been up to because I'm not on social media every day. So I think that's kind of what...

turned into our meetings is that because we weren't meeting every day, whenever we were meeting, there was a lot to talk about. And there was a lot of in-depth conversations that we had that became very fruitful and provided some really awesome...

insight into what we were doing, what we weren't doing, what we could be doing better, things like that. So in that instance, meetings, I think, are really great. I think meetings get a bad rap sometimes, but I don't even know if I would call it a necessary evil. They're definitely necessary, and they can...

be good but yeah you're right once they once they've reached to a certain point they it almost becomes meaningless it's like okay are we talking about this again you know yeah i mean there's only so much you can talk about something before you actually have to roll up your sleeves and do it right and i think sometimes people use meetings as a way of like

subconsciously procrastinating, actually doing the work itself. And of course, you know, managers can use meetings to feel more powerful and stuff like that. Yeah. Maybe some ego behind it a little bit. Right. But, but I try not to like ascribe. that to a manager i try to presume that like they're having these meetings because they need to and and like maybe they can improve the price performance of those meetings

Effectively. Yes, that's a great way to put it. Having fewer meetings, but having those meetings be more focused. I like to say we shouldn't have recurring meetings unless – every meeting – that's recurring should have like some sort of end state where we can disband the meeting essentially. Yeah. I agree. Yeah. Cause they're like committee meetings and stuff that like just drag on indefinitely and stuff like that. And, and there's a place for that. Like we have weekly huddles.

Um, where we get together and talk kind of like a agile standup meeting effectively. Uh, but that's just once a week. Right. And there's not a lot of meetings. Uh, but. Yeah, it's great that you've been able to strike a balance, and congratulations to you for being able to give back a whole lot of time to your team. Oh, thank you, yeah.

Yeah, three meetings a week is a lot less than five meetings a week. Yeah, the lead developer on our team, that was one of the first things you said. As I told him, I was like, hey, I want to try to... clear some of these meetings off so he can just work. How do you feel about that? He's not a very expressive person, but he began to laugh and chuckle. He said, man, I've been waiting for this for a long time. I said, okay, let's rock and roll. Let's do this.

And, you know, we've done really well. You know, we have roadmap meetings to where we're supposed to land. And thankfully... Due to my amazing team, like we're green across the board. We're looking to deliver on everything that we promised. And so, yeah, whatever we've come up with, it seems to be working so far at least. That's awesome. Well, I want to close with some questions about like kind of introversion.

Introversion, Recharge, Work-Life Balance

You and I, I guess, both identify as introverts. And I'm not talking in terms of the pop psychology thing. But the way I describe an introvert is just somebody who would prefer to spend their time... being by themselves or not in a big group and probably like 70 80 percent of the people listening to this are probably would call introverts but i understand there's like some pseudoscience around it and stuff like that i just want to be clear that i'm not like uh but but

You like to spend time by yourself, right? And I do too. Like if I get a chance to go out and go for a walk by myself, I absolutely take it. I like to think introspect, you know, and you are somebody who. probably has to drain your batteries a little bit going into and running a meeting or going to a conference or doing a lot of the other things that you have to do. Where do you find the strength to do that?

Yeah, I think it's finding time to recharge your battery outside of work. My work now is very much an extrovert position. I'm a team lead. I'm on the path to management right now, which I never thought I'd say. Kind of being an introvert. My dream job, especially when I got into coding, was sitting... I used to joke I could sit in a basement for eight hours a day and do nothing but code, and I would be happy. And honestly, I'd still be that way. But I think part of growing is...

I think it's hard to grow when you're alone. I think it's hard to grow when you're not experiencing other people, when you're not part of a community. Um, that's like we talked about the coding community. It's hard to do a lot of stuff on your own. And so I think I try to push myself past, um, you know, wanting to be alone. And I try to, um, you know, I, I, I try to, what's the word I'm trying to use?

I just like to be involved with other people now. And I find that I'm growing a lot faster. I'm learning a lot more things. It's providing a lot more... satisfaction for my job even. I really enjoy my team members. I enjoy talking with them. We just got finished kind of beating on meetings a little bit, but I really enjoy the meetings that we have, getting to know my team members.

You know, but whatever I am all for, there is a lot of alone time. You know, I've recently got into chess a lot. So there's a lot of time thinking and just spending time alone with my thoughts. I like video games and I'm very much a single game player. You know, I'm not even involved in a lot.

people whenever i'm playing games so yeah whenever i'm out of work i definitely have to hit recharge and my family is very supportive of that they understand that once i get off work hey dad might need some time alone to himself just a little bit to recharge his batteries before he's completely you know in family mode again so

So I think, you know, work takes everything out of us. As much as I love my job, it is a job. It is something that there are things that I have to do that I don't want to do. allowing yourself that time to recharge. And I think it's just a matter of self-care in a way, you know? And sometimes it can feel a little selfish for introverts because sometimes that self-care does involve, like, I just need me time. I just need me time. And sometimes you can feel...

a little selfish doing that, but I would really encourage people not to feel that way, that I give everything that I have to my job. I recharge, and then I give everything that I have to my family. So in that way, I kind of justify it by saying, you know what, I am taking a little bit of time for my job.

But as soon as I'm done with that, man, I'm in a giving mode again. So I would just encourage people to try to find time outside of work. I realize that work gets everybody down. But once you're done with work, work is not life. You know, life begins after work. And once work is done, find a way to recharge whatever that might be for you. And, you know, I'm sure that'll help. Yeah, man. I love that. Give everything to your job. Recharge.

Give everything to your family. That's what I try to do. Flow to live by for people out there trying to find balance in their life. Patrick, it's been an absolute pleasure talking with you. Thanks for everything you're doing. going to talks and sharing. You had this excellent talk on Angular, which is probably pretty dated that I enjoyed watching many years ago, learning about Angular and the .NET ecosystem. But it's clear that you're a good technical communicator.

As time permits, with your busy job and your busy family, we'd welcome more contributions from you in the global FreecoCamp developer community. Yeah, of course. I'd love that. Yeah. Well, everybody tuning in, I hope you're having a fantastic day. Until next week, happy coding. Happy coding.

This transcript was generated by Metacast using AI and may contain inaccuracies. Learn more about transcripts.
For the best experience, listen in Metacast app for iOS or Android