day in the life of a senior software engineer (helping my mentees get a six figure tech job)

This is a conversational YouTube transcript of Phil Choi mentoring new developers while showing a "day in the life." Phil outlines his daily routine, discusses running mentor sessions and one-on-one lessons, and encourages students to ask for help. The chunk includes practical coding advice (start simple, CRUD apps, use boilerplates, GitHub search, Docker compose), a recommended tech stack (React/Vue/Svelte, Node.js, Express, testing with Jest, databases like MongoDB/Postgres, AWS deployment, GitHub Actions, OAuth/JWT), examples of past projects (mental-health app, AI real-estate appraisal, Canadian Sea Turtle Network dashboard, Access→Postgres migration using Python/Django), and personal context (started coding at 30, first job within six months, was laid off, grew a YouTube/Discord community, is a new father).
Chapters
That's how. That's how.
Hey, we're all here, dude.
Want some veggie? All right, so we gotta drop the kid off. Let me get the day started, right? We got the sales call at 9 and then a quick call with staff, right? And set up, you know, how the website's gonna be laid out. Then we'll go on a little drive, go to the cafe, get some coding done. And then my kid will be ready at four, you know, and then I think at four he has a play date with. With another kid in the neighborhood. All right, now let's get started. No, we're going to go to the store, get a coffee. That's what I do every morning. Get a coffee, smoke a cigarette. And then my brain starts working and then I can start working hard. Work, dedication, you know that you're a real one. You need a coffee? Yeah, I do. I do. Russ Hill. There you go. Some money. We linked up with this new staff member. He's a fresh college grad comp. Sci major. I think he's super talented. I'm gonna link up, Link up with him and see, tell him to help out on the website and help David. So I gotta facilitate that. So let's go. There's like a YouTube video or like a short or something about Steve Jobs. And he's like, all you need to do is like, ask, you know, he like, went through the yellow Pages and just asked. And I think too many people are afraid to ask. And I think one thing is like, Minnie and I, Minsu and I just. We always want to just like reward the people that reach out, you know, try for those who, like, want it, you know? Like, if you just sit there quiet and no one's gonna come up to you and just be like, hey, do you need help? You know what I mean? Like, you need to express because you can't just let people guess. Smoking's bad, dude. It's unhealthy. My lungs hurt. I've been smoking since I was young, but I only smoke one a day. And the thing is, it helps Alzheimer's and helps your brain function, so. You ever just reach out? Not even for the mentorship, Just like, I'm lost or I want some help, you know, I will, like, give you the help that I can. There's so many paths to take, right? And that's kind of like what, like the boot camp did for me, you know, it's like, oh, I prepared this material. Here you go. It's not like you can't do it on Your own. Like, that's what college does. That's what high school does. That's what middle school does. It just, like, packages some, you know, resources for you and says, hey, if you learn this, you'll succeed. Maybe. You know, I know how to do it my own path. But your path may be a little different. But I will give you my path, exact path. Because if I can do it, you.
Can do it, too.
You know, I became a senior developer after starting coding at the age of 30. Right. It's just like, I read all my comments, comment down below, like, if you need help or what path you want to take, you know, and we always respond, we reply, we read all the comments, and let's get a conversation started there, too.
Everything was handwritten.
Okay.
And it just got to a point where it's just like, man, you know, why is it we have to wait for, like, somebody to update?
That's awesome. Definitely. Like, what about live score? Like, do you keep. Do you have that? Or it's just inputting a score?
Yeah, that's the part that we're trying to work on, where it's live. Someone who's like a game official is updating the score as the game is going on.
It's not too hard. It's just a crud, right? A create, read, update, delete. You just input, there's two teams, there's two scores, and then you update it. Right. That's it. Right? For now, yeah. I have experience. I made a wrestling scoreboard, like, a couple years ago. Like, I learned about Greco wrestling and freestyle wrestling and how the points systems and the pins work and stuff like that. It was. You know, every time I do a little project, I learn a little bit more about the sport. And soccer is definitely something I want to learn more about. Because growing up in America, I didn't really get exposed to a lot of soccer. But I have a son and, yeah, I'm gonna. I'm gonna definitely let him play soccer. So I definitely want to learn more about, like, futsal, soccer, and all this kind of stuff. All the yellow cards, the red cards, and, you know, it's something that I'm very interested in today. I thought we could just kind of code together and maybe make something very similar to this. Right? Yeah, that would be kind of fun. Like, we can set up, like, a small database and then make a form and then post something there and then get it. You have 11 teams. You have 600 daily active users. You have some kind of business model that you can kind of set it up. With, okay, let's do it.
You know what scared Phil? What really prompted me to send you that message was because I just turned 40. Right.
Okay.
And I was looking into your story and how you kind of got into all these, and you were saying how, you know, you. You really. It's not. It's not impossible. And I noticed that you had a guy who was 40. Oh, shit, guys.
Yeah.
You were going through that whole process with him, looking at the code base. That's what prompted me to connect, because I was like, man, you know, I'm. I'm like 40, right? I just turned 40. And I want to be able to relate with somebody who. No, I don't want to feel like I'm too old to do this.
You know what? You know what, Anderson? You're only old when you say you're old. Don't say you're old. Just keep young. You know, we'll do JavaScript libraries like React if you want, like Vue or whatever, Svelte. All these kind of things are very fun to learn. And once you learn one, you can kind of transfer it over. JavaScript tools like eSlint and prettier, like to format your code, link to your code. JavaScript testing with Jest backend frameworks like Express and Molecular. I use Molecular a lot, like microservices. That's why I was setting up a lot of Amazon stuff like that. Like, to kind of handle, like, the API gateway and all that kind of stuff. Introduction to databases. So, like MongoDB, PostgreSQL. I'll teach you all about JavaScript deployment on AWS. Kind of like, if you make a website, the cheapest option is probably like an S3 bucket. You've heard about this kind of stuff probably recently. GitHub actions are really good. That's what I've been using. I'll teach all about that kind of stuff. JavaScript security, like OAuth 2.0, JWT, HTPS Core, and then best practices in the end, like, clean code and all that kind of stuff. So that's kind of what I want you to receive off of me by the time we're over this. So it's very important to me that, you know, I deliver. Right.
Yeah.
I just wanted to show you the kind of materials that we'll go over. And, you know, I'm not. I'm just gonna say it straight up, like, you're paying us and I will never disrespect your money. Right. So we'll, you know, I'll make sure you know, we'll go over it slowly until you understand. It's not like we're on a thing where I have to rush through the material to keep up with everything. It's you and me. Right. So I don't want to move on until you understand, and then I don't want to move on until you understand. That's pretty important. That's like the benefit of these one on ones. I hope you're excited as I am. I do have like these lessons all set up, like JavaScript best practices. So we're going to create something like this. Is it okay?
Yeah.
Anything that you want to add or we don't need or anything like this is okay.
No, do something really simple and build it.
Yeah, exactly. So start something simple and then always just that you can always upgrade. Like, it's like ordering food at a restaurant. You know, you can always. You can always order more. We can never on order. All right, let's go. Let's get started.
Have like any project that you've done before.
Yeah, it's like being used definitely. Like, there's like a couple apps in the app store. Like GitHub. There's a app called GitHub. There's an app. Maybe Air Kick is still up. It was like a kickboard app. Let me see. GitHub.com this is like some mental health app that I made before. It was. It's. It's in the App store. This is some kind of like AI real estate appraisal software that we made before.
Wow, that's really cool.
Yeah. This is just a website though. But the actual thing was inside of the dashboard. I used to work here, but I don't know the email and password right now. But it's to kind of input an address and then give you a price of the building. What else? Wow. I built this website and this app before, but this is the one that I got laid off from. Yeah, this one right here. But so it. I don't think it. It can ever release without me. So I think they just gave up on it. But wow, it was a very big app. What else? I made that website. No, you did help make that website. Napima. I. I built the National Asia American Pacific Island Mental Health association app with the GitHub company. I made. This one's funny. I made this Canadian Sea Turtle Network Dashboard 1. Yeah, I built this. Like, if you look here, this is the CSTN database migration. They tapped me on the shoulder to migrate their data from Access DB to PostgreSQL and AWS. I built all that. Like, this is like Access, so I built it with Python and Django. I don't know. Like, I just built many things just here and there and just learned a little bit more about it. So. And they're deployed, they're all being used, so. Yeah, I don't know.
Like, that's pretty cool, man. And how long did it take you to, like, really get fundamentals?
Damn. Fundamentals. Fundamentals, I think. So I learned a lot on the job because I got my first job in six months and I'm not going to. I know that's like a anomaly, like a case, but at the time I think there was a lot of development jobs and I had a. I have like, a very bubbly personality sometimes, like, I try to be very active and friendly. Yeah. And like, friendly and keep the team going and stuff like that. Like. Like, whatever team I went into, I was. I was always the one. Like, hey, let's get this done. But the fundamentals, I think, not to scare you about how long it's going to take, but I could start building ST in six months, right? The fundamentals. And actually I learned two languages in the beginning. I learned Node, JS and php. So those are, like, some things I did. But after a year of just doing it every day, I think I got comfortable. Like, something opened up, like, where I was like, oh, like, I can do this too, because you showed me all the GitHub repositories and tutorials you have, right? My friend was like, oh, a very underutilized tool in development is the GitHub search bar. So, okay, so one of the big things is like, say I need to learn, like, golang, right? So I would do Golang boilerplate server, something like this. Wait, yeah, Golang Boilerplate Server. You'll see like, some like, typical Rust server or pragmatic boilerplate for Golang Restful server implementation. So I just, like, look at this and start, like, reading it. But in the beginning, obviously. And I'd look for, like, a lot of stars. So, like, go API boilerplate or serverless architecture boilerplate. I just look at these. And in the beginning, my friend said this and I'd look at this stuff, right? And I'd be like, dude, I don't know what's going on, right? But then after, you know, like, coding every day, I could start. I could start reading, like, and kind of like understanding and copying it and all this kind of stuff. So that was. That's, like, always my trick. I just try to find something with a lot of stars and try to rewrite it. And then. And then if I don't understand it yet, I just keep on trying to use it because obviously, like, all these probably have Docker files, right? You can get it running pretty fast. Like, all you need to do is like clone it and then run Docker compose up. And it should work, right? But you actually have to understand it and kind of like look at the code and all this kind of stuff. So I think definitely, like, just reading about this and trying to see, like, okay, like, this is this and all this kind of stuff. Like, yeah, like, I think just reading. Reading code is always like one of the most important things, so. And like, obviously, like, I don't. Yeah, like, I understand it like, this is the adapter to use the request. You'll probably use this. And then like, I probably see like this adapter thing somewhere else in the code. But yeah, just read it and try to break it and fix it and all this kind of stuff. So that's. That was kind of like my learning curve of like how I did. And then if I didn't understand, I'd always like, go to the thing and go lang simple server. And then maybe like here I just like how to make an HTTP go server. And then I just like set up the project and just follow it line by line, follow the instructions. Very easy. And then I'd. And then I'd come back to the boilerplate and. And then just keep on doing tutorial until I understand and stuff like that. So the thing I know about boilerplates is they're always in really good practice. Right. So I always just try to look at those and go with that. So, yeah, all right, let's. Let's get started. I know I'm yapping a little bit. All right. So the first thing I do in a project, so we're going to use packages. We'll make a command called NPM run start.
Yeah, I have a question about that. So this package JSON, right?
And then this command will start node index js font scores list equals document js get element by the Deploy Android this node modules folder gets very, very large. That's the problem with node js. Next thing I'm going to do is I'm going to say const app equals, let's say. And then we can add more teams like Raiders.
That's the frame. That's the process we want to use.
And I'll teach you every little intricacy and little part of it. And then. And all that kind of stuff. All right, thank you.
Thank you so much.
All right, awesome, guys.
Later. I'm going to hang up now and then Minnie will call you. I do have a. Okay. Okay. Later.
I'll hit you up at Discord.
All right. All right, bye.
All right, ciao.
This is the. How the mentor sessions go. Just have to guide people. That's. That's it. Like, no one's gonna do it for them, you know, But I can hold your hand a little bit and get you to where I am, you know, that's all I can do under promise and over deliver coconut green curry, dude. Coconut milk and curry. Just taste it.
That is damn good. It's not salty for my baby. That's a packed fridge, dude. That's a fridge of a cook right there.
Some veggies, too. You want some veggies? Cheers.
Yo, what's up? Hey, we're all here, dude.
We're all here. Okay, so I just wanted to kind of like link up with you today. Like, code a little bit. Mostly I want you to link up with David. There's a guy named Pixel Dave inside of there. He said he's gonna do the website, and I want you to kind of build the website with him. Whatever tasks. But we do later on this weekend. I was quite busy. I was hanging out with my baby and my wife and stuff. So I could not get the trello board set up. But we're gonna go to a cafe today and get all those set up. I apologize.
No, it's all good. Family's first, so don't worry about it.
Yeah. And then so I'm gonna give you access to the glypho repositories. There's not anything in there yet. There's only the website in there, so.
Dude, I was looking through your old videos.
Yeah.
Or like, I was looking at announcements and then I was looking at the pin. Pin messages.
Yeah.
And then the video that was pinned was like the. The music or like the song, right?
Oh, oh, this. The Left Phil song.
I made it for my birthday with the AI.
Dude, you like that song?
I was like, dude, like videos of your son.
Renegades and massives and. What? Dude, you don't know about this stuff.
No, I do. I saw the video, dude.
What video?
The YouTube video that I got all the screenshots from.
Oh, that one. The one with my. Oh, dude, I was worse before.
That was the team version.
That's like the clean one, though. You never seen the one with me, like, living out of bags and stuff.
Dude, you Told me about it.
All right, so wait, what is your GitHub handle? I'm gonna. I'm gonna put you in as a member. Accept it. Oh, it's a. It's an in browser VS code that you can look at the code. This is kind of like the structure I write all my code in. Can you go back and then go back to the repository users? Young, are you applying for jobs on LinkedIn or. Oh, in here?
Yeah.
MKDIR Leadfield. So you have to remove that and then rename all the files that are TSX and ts to jsx and js.
That's.
That's how, that's how I think about it. I have this two. The two point of views. Let's just get it done as quick as possible. So I'm going to remove the typescript from the code. Right. Have you looked on Craigslist or anything like that? Like, if you get like, I don't.
Use Craigslist because I heard it's like.
Sus, go to the terminal, turn the server off or whatever you want. Be very careful on main. If you push to main, it's going to run the action 2025 or whatever. A New Year's resolution to be there to maintain. I'm not going to work on getting to where I want to be in 2025. You know what I mean? I'm going to do it now and we're going to hit the ground running in December and then we're going to sprint in January. Yeah.
So I want to get succeed, like everyone's gonna succeed. So I want to be there when.
All right, I'm gonna leave now, but just, I think just try to break the code and rebuild it because you guys have to get comfortable and this is your guys's code base. So. Okay. Yeah. All right. Later on.
Thank you, David.
I am like a new father, right. So I have like a son, super young. You know, your job as a father, you know, as a husband, is to kind of provide for the family. And it was them. It was so scary, right when I got laid off. Like, I do know, like working in startups, right? And working in, like startups, it' volatile. It's high salary, but it's volatile. And I did get laid off. I accept it. At that time I just felt this overwhelming, like defeat, I guess. But we filmed that video and one thing that really like, brought me up was the comment section in that video. There are so many good comments and, you know, that comment section kind of evolved into the Discord community. Kind of saw like, I don't. I hear like the Internet is like always so evil and like there's like trolls and all this kind of stuff, right? But just felt so wholesome, like nobody was out there to be like bad and all this kind of stuff. So yeah, that time, like at the end of June or beginning of July, it was just, it was scary. And at the time I didn't even know like if this YouTube thing was going to be viable. I remember like I uploaded a video and my friend was like, okay, you're lucky if you get 100 views, right? So I just, I upload that video. Guess what? You know, it got a lot of views, you know, and kind of validated like some things. But I mean, I thought like at that time I would just do like part time YouTube or part time job or maybe a full time job and kind of do YouTube on the side. I remember like the first decision I made was like, oh, dude, I'll just do outsourcing. Outsourcing is very. You have to have a lot of responsibility. And I was trying to do YouTube as hard as I could and I was doing the outsourcing on my free time and it was like taking a lot out of me. But I completed those projects. I made, you know, a couple thousand dollars or whatever. You know, it gave me some kind of cushion. Then I kind of like, we kept on making videos and I saw the YouTube getting bigger and better and open the Discord community. It's a huge amount. Dude, this is a Korean mall. Starfield. All right, I'm gonna buy this. Watch the frogman. That's what the Navy Seals wear. We gotta get a Gym ball, dude. IPhone, USBC, SSD. How to drive USB. C iPhone. Younger than. Oh, this looks nice.
Which one do you recommend?
The keyboards.
Yeah. So you're a big keyboard guy, right? Why is that?
Because you're spending like 8 hours, 10 hours a day in front of your computer. You know, make it as like fun as possible. This feels nice. But I've always liked this one. Like, feel it.
Oh, yeah, yeah.
And it has like a spring.
Yeah, yeah, yeah. That one sounds the best.
This one feels good. It just feels. It's a little bit light. Yeah, yeah, yeah.
Dude, this guy collects so much keyboard, it's crazy.
I was gonna stop by Patagonia, but I don't need any more clothes, bro. I just made a fucking long message. The Discord. Like, you don't need new things. What do you want?
You used to work at a cafe, right?
Basically, yeah. Dude, Set up some trello boards, the left field website for like workflow and stuff like that. So kind of got to get that done organized because if you let everyone go, they're gonna be like little hyenas, you know what I mean? So let's get that going. Hey, how are you, David? I'm okay. I'm gonna share my screen. I'm just setting up the trello real quick. Give me a second. Can you see this? We're gonna have the Landing ui, right? The landing ui, that's the landing the playground page. We're gonna have authentication because maybe we'll add that for later if we need it. We're gonna have content that's like a mini, like getting testimonials and photos and stuff, you know, we need a contact form. So contact stuff. Then we need email list stuff, right. Subscribe, we need that, that kind of task. And let me just make sure I color these correctly. Blue brand new label Landing ui. This is where I see you guys working a lot. My opinion, like when someone pops into the website, they should be able to see like oh wow, this is crazy. You know what I mean? All right, so we have pieces of the app, right? Or do you have any more like Discord Landing UI authentication contents, contact email list, anything more? We got to collect testimonials, that's going to be contacts. So that's not Landing UI screenshot testimonials. That's going to be con contents, not Landing ui. Create paid community discord. I'm going to change that to the Discord. All right. And then we got research, paid community discords. That's gonna be on Discord Task and then a research website. That's a Landing UI setup, Global State Manager. That's website. I guess that's just. I'm just gonna put website task. Alright, I'll see you later today. Okay. And if you have any questions about the tasks that are here, please let me know. All right. Later on. Thank you. So that's a whole day, you know, but you know, we're done.
More from Phil

day in the life of a software engineer | 5 hour productivity | building my dev agency 🔥

day in the life of a software engineer | 3 hour productivity | coding my 6-figure community startup

day in the life of a software engineer | 5 hour productivity | coding our sns startup app LFG

day in the life of a software engineer | 5 hour productivity | creating apps that makes big money






