day in the life of a software engineer | 4 hour productivity | a new project with my juniors

Phil Choi narrates a "day in the life" vlog that mixes personal productivity habits and hands-on mentoring of junior engineers. He describes his morning routine (exercise, coffee, cigarette), how he uses short rituals to snap into productive mode, and mentions becoming a senior developer after age 30. The video then shifts to a live project session with interns: setting up a React Native app (React Navigation stacks and bottom tabs, screens), fixing tooling (Husky pre-commit, ESLint, Babel module-resolver), and planning next steps (context API, AsyncStorage, Firebase, TypeScript, QA workflow and sprint planning).
Questions this video answers
January 17, 2025.
He became a senior developer after the age of 30.
Chapters
I used to smoke a lot of cigarettes when I was young, you know, and I was always the type of person that would start something and not finish it. And I would always tell myself, I'm gonna finish this cigarette to prove that I can finish something. The fit check right here, dude. It's a new jacket, dude. No, no, no, no. Cesar. Come on, let's go. Come on, let's go. Let's get started. We got a morning coffee, dude. It's the number one priority on my mind right now. Yeah, we got, you know, a meeting with the interns, you know, booty song. What do you got? An interview. Oh, nice. He told last night, like today. Oh, sick. Boonie's hard worker, dude. Just creating the dream team, dude. Yeah, creating the team. I don't want to talk about it yet, though. Can't reveal it yet. Yeah, I don't know you guys know, but there's a new server. There's a new server? Yeah. Every morning the same routine, bro. Go drop my kid off. I'm either talking to you on the phone or you're here. Coffee and cigarette, and then go home and do some work. You know, there should be some kind of stability, like routine in your. In your day to day. I mean, I posted something a long time ago when I was like, younger, like, because I used to exercise, you know, I used to be like a, you know, I was trained to be like a, you know, the next champion boxer, you know, but every morning, dude, I swear to God, she's not like the same six mile run, same path, like five in the morning, you know, sun not up and tired. But I remember I posed something. I was like. And then afterwards I go to like the gym and stretch or something. And then at night I go to the boxing gym, right? I think I posed this on like, if some. If a serial killer was really like following me around and chasing me. Game over, bro. They could predict everything. So it's like, that's why I say, like, routine to a certain extent. Like, I think like a morning routine is really good. Push ups, pull ups, squats, light dumbbell work. Showed Gabe my workout video. He was like, that's just ass, bro. Try to keep a little bit of routine to kind of like wake my brain up. Like, even when I used to go to work, I used to get there a little bit early, you know, in the office, and I used to just like bust out codewars for like 30 minutes to an hour just to like, put myself in some kind of mode, you know, and doing that workout in the morning. Kind of puts my mode into like, hey, I'm gonna be productive. I think that's super important. It's way different than the one that I used to do. I used to wake up and like chug some water, fucking jack off. I don't know, dude. Like, whatever you need to do to snap into that mode. Like some people, like, maybe before they take a photo, they try to get a pump and like do push ups or something. I don't know, dude. What do you do? Me? Yeah, I like to. There's like a subway station. I think I told you this. I like to go there and do like 10 flights of stairs right off the gate. Just snapping your mind into some productive mode. Because your mind should have like a productive mode, lazy mode. Because if it's always productive, you're, it's. You're gonna go crazy. My name is Phil. I became a senior developer after the age of 30. If you have any like, way that you snap yourself into like productivity or like snap yourself into like lazy mode, even, let me know in the comments because maybe I can like take that tip too and you know, like comment, share. It helps me a lot. I'm trying to hit some goals in, you know, by like the first quarter of this year. Let's get it. Getting my. The iOS folder and I find the pod file lock. You'll see like navigation in here now somewhere. All right, so in the src, I'm going to make something called. What should we call it? You want to call it routes or navigation. I like Routes though, because you get the actual folder icon. Sorry. Okay, okay, fine, fine, fine. No, no, no, no. Okay, we'll keep it democratic. Dude. Like we're going to have to live with this for like the next like three months. We'll add this like at navigation dot slash src slash navigation. So now we'll do import import react from react Import navigation navigation container at from the react navigation native. And then we'll export default navigation. So now we can do const Stack equals create native stack navigator. So we have two screens now inside initial screen login screen. Right? Everyone sees that. Yeah.
Okay.
They used to have to just like read source code and figure it out because you know what I mean, that's like real respect. No, no, I mean that's like real respect. You know, like people that like the guy that like made like roller coaster tycoon and stuff like that. So now inside of this auth stack we can do import initial screen from screens and login screen from screens, right? You see that screens. It all comes from screens and they're all in the off screens and we can just add like this little comment auth screens here and then we can add a little comment like off screen and then a few blockers I had where as I think my computer was not restarted so I had to restart my computer and there was something with my Java environment so I had to like reset my Java version. So yesterday I did the Babel plugin module resolver upload documentations for it and I implemented it and I committed it and it got merged with the main. Usually like you'll usually people just be like, oh, yesterday I was working on the user endpoints and working on create user. Today I'm kind of doing the same thing. No blockers and people would like and that would be sufficient enough.
Yesterday I did. I set up the configuration for the eslinting and Husky.
Okay.
I wrote out this desk but I couldn't get it okay working so we just did it together. And today I researched Shopify Restyle just like how to set up the components and installing the dependencies and I plan on doing that on our. On our project. So I just made a separate project. Just play around with.
Okay, cool, cool. All right. The Husky is not working yet on the pre commit hook so I have to fix that.
Dustin, also Phil taught us how to do like a. A scrum stand up.
Oh nice. Yeah. So you want to practice? Yeah. Okay. So Jocelyn, I mean it's within the project so it's like what you did yesterday and what you did today and if you have any blockers. Right. So Jocelyn? Yeah? Can you hear me? Yes. Yeah. Can I ask you to just move it a little bit? Can we add the config into utilities? I know, yeah. And then let's merge it later and then I'll. Because I want to do something else with the config file and folder and then I also want to make a hook. So I'll spend some time with you on setting that up. So let's go to the hello React native. So I know that we're going to need a stack. So the stack is like, you know, like when you're on a screen and then you go to a new screen and you can press back and it goes to that last screen. So like it kind of feels like these screens are stacking on top of each other. Does that make sense? Like paper on top of each other. So that's what the stack is doing. And we're going to make something like stack with the Bottom tab. Right. So bottom tab is you know like the buttons on the bottom of an app, like the home button and the settings button, stuff like that. So that's what we're going to set up now. I like the dynamic one more. I guess you can. The static way was like how it was used to be done in like the React Navigation 4 from the React navigation native and then we'll export default navigation. So now we can do const stack equals create native stack Navigator. So we have two screens now inside initial screen and login screen. Right. Everyone sees that. Yeah.
Okay.
They used to have to just like read source code and figure it out because you know what I mean, that's like real respect. No, no, I mean that's like real respect. You know, like people that like the guy that like made like roller coaster tycoon and stuff like that. So now inside of this auth stack we can do import initial screen from screens and login screen from screens. Right, you see that? Screens, it all comes from screens and they're all in the off screens and we can just add like this little comment auth screens here and then we add a little comment like I mean that's programming, right? And I'll fix the Husky and I'll fix the eslint stuff. I think there was one mistake that I made and then React navigation is all set up. So just like play around with it and try to make your own stacks and stuff like that. And yeah, I think we are all set up. I just want to set up like the context API and the global state management and the Async storage and then I'll merge your code buddy, I'll make a little bit of changes. The next thing we have to do is set up some Firebase stuff and then this React native logger I think is done, but I'm going to check it. Right. So actually before it goes into done we should do ready for QA and then. Okay, so how I want this to work is when you guys finish ready for QA or ready for review and then I'll either put it into done or recheck. Right. We'll talk about the design and we'll do another sprint planning on Friday. Is it okay? Yeah, that's fine. And then we'll really start working from Monday. I know the setting up is taking a long time. Let's just do everything carefully, make sure we don't break anything. And the typescript will be all set up too. And yeah, just take it easy and I'll see you guys later. Thank you.
So are we still meeting?
In an hour and a half, if you can. I mean, after dinner. I'll probably still be here. Like, Minnie and I are still here. And Justin will be here, too, so. All right, later.
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






