How and why to code more outside of your day job

How and why to code more outside of your day job

• 517 views
vlogvloggervloggingmercedesmercedes AMGMercedes AMG GTAMG GTbig techsoftware engineeringsoftware engineercar vlogvlogssoftware developmentsoftware engineersmicrosoftprogrammingtips for developerscareer in techfaangwork vlogdevleaderdev leadernick cosentinoengineering managerleadershipmsftsoftware developercode commutecodecommutecommuteredditreddit storiesreddit storyask redditaskredditaskreddit storiesredditorlinkedin

A developer submitted a question... or... a comment? Or a topic? They submitted something, and I appreciate it -- so it's discuss how to get more coding outside of work.

📄 Auto-Generated Transcript

Transcript is auto-generated and may contain errors.

Hey folks, I'm just headed home from work and we're going to go to a submitted kind of question kind of focus area and this is about doing more coding outside of work. And this is a bit of a you know topic that gets debated a lot. if you're gonna be good to talk through the context though because the question that came in is really like I said not really a question but um it's uh stemming from a newsletter article I sent out and I invited people to kind of ask uh for for any recommendations on on their New Year's resolutions as developers like what are you going to try to do more of this year and um you know if there's a way that I can try and help provide guidance or context like submitted on code.com and that's exactly what this person and a few others did which is cool.

Um so let's talk about it. So I want to start this entire talk off by saying that I want to recognize that this is not it's it's not something that I'm expecting like anyone who works in software development has to go carve out time and they have to be building stuff outside of work because the reality is some people do this job as software developers. they love their work or they're content doing their work. They might not even love it. They do it. And like regardless of your interest in work, your life does not have to be about work outside of work. This is the same for other professions. You know, you don't have to define your entire self as someone who is a developer. Um, so I don't want to talk about this in a way that makes people feel like, hey, if you're not doing this, like shame on you.

You should feel bad about yourself. I want to talk about this from the perspective of like if you are someone who uh wants to do more of this, then like let's talk about what that looks like. So just again to be clear, uh this isn't like a shame conversation. uh you know I get I do enough videos and see enough comments where people are like well actually like I don't agree and I'm like that's cool but my my intention is not to make you feel bad uh or feel pressured into doing side projects and stuff like that. So just want to be transparent about that. But with that said if um if you are looking to do this or you're wondering like why should I um then I want to kind of chat through that and I want to start with the why. So, the person who wrote this in, they probably have their why.

They didn't, you know, elaborate on anything. It's a pretty short message, which is fine. Um, but I suspect they have a why if they've already convinced themselves that for this new year, they want to do more of it. And your why could be very different than theirs uh from one person to the next. And that's totally cool. But what are some of the reasons why you might want to do some development outside of work? Um, first one, and this is going to be I don't know uh one of the more common ones I would suspect is that you are uh looking to skill up in areas in development that you're not actively getting a chance to do at work. Okay. So, what does that even mean? Well, if you are someone who I'm just going to make up random examples here. You're someone who builds mobile applications, okay?

And you work and you build Android apps and you're a software developer and you've been doing that for a while and you're like that's cool, but like I'd like I think I want to explore doing I'm just make make it up again. Want to build uh you know frontends for websites. Like I think I really want to try doing that. You might feel that if you're applying for roles like that, you're having some challenges and you know it's kind of pushed you in the direction of like I literally don't have experience doing that. Okay. So, if you want to go build up some of that experience in a different area, if you don't have those opportunities at work, it might be a good option to try building some stuff outside of work to practice.

Um, before jumping to that, I mean, I I'll just say it is like if you're at a company that has those opportunities, you might even see internally like, "Hey, is there some opportunity for me to try uh doing some of that?" Come on, buddy. This guy was speeding up, but he was trying to get into the offramp. Um so yeah first first sort of consideration is like are you trying to scale up in something that you are not getting the opportunity to do at work. Um of course if you and I don't mean this in like a a malicious or sneaky way but like if you can leverage your current work to learn new things and work in different areas and they support you doing that like hell yeah do that. But I think that um that's often a little bit more challenging for people, right?

I've talked I've made videos where I've said if I have people on my team that that say to me I'm interested in these other things, are there opportunities? I will try to work with them to see if there are and I've shared examples where I found some front-end development even on a team that does all backend development. Um but I can't guarantee that, right? What I can guarantee is that I want to support people. Your manager might not be like that or they might not have those opportunities. That's kind of outside of of our control here. So, um you know, if you can do it at work, that's great. If not, outside of work is one great option for skilling up. Um another one that I would say and sorry on skilling up, let's just put this one out there. Um, if you are not only trying to skill up in a particular area, what's going on?

Um, but if you're thinking about a different job, um, on the topic of skills, you might be saying like your resume feels a little bit light for the jobs that you're trying to apply for. So, not only is it a good opportunity to to scale up potentially, um it might be an opportunity for you to have a little bit more content on your resume. Okay. So um the second reason is that like some people uh need more resume material and this is really common for folks uh like I would encourage it especially if you are a junior developer and you don't yet have professional work experience like go build stuff then you can at least talk about it on a resume to say like I've built these projects here's what I learned um but that can apply to to more senior people as well if you just feel that you don't have enough material real for your resume.

Okay? Um it's still skilling up. It's still practicing. It's just that you can leverage it to present that uh on your resume. Uh and the third reason that why you might want to build stuff outside of work is like you might uh you might have a business idea that you want to go build, right? uh sometimes and I would say developers are pretty uh sort of unique for this is like you know we have sort of daily problems or things that we encounter in our lives and we're like I'm a developer I could probably make something to solve that and you solve it for yourself right you automate some task you build something to track something whatever it happens to be and then you realize like wait a second like you know I have this problem other people might have this problem right? You go build something and you go sell it.

Um you might say, "I want looking for some extra income and I want to go build software for other people and if it's okay with your employment agreement, like I don't know, go do it." Um but there's this third reason which is like, you know, for for income or exploring that at least. So those are three different reasons why you might want to build stuff outside of work. Okay. Um, there are many, many more. Uh, if you have different ideas and you want to share them, drop them in the comments. I think that's super cool. Um, maybe inspire some other people that are kind of on the fence. Maybe they'll jump into building something. Um, okay. So, now you have some reasons why. Maybe you're coming up with your own and you're like, "Okay, but I got to start doing it. What do I do? I would I would say that one really challenging thing here and I was thinking about this before I got into my car.

I wanted to find a way to like to talk about this and I still don't know um the right way to address it. But um doing stuff like this is really really really challenging like building stuff outside of work if it feels like it's more work to you. Okay, I'm not a psychologist. I don't want to pretend to be. Um but you've probably experienced this kind of thing, right? where where you have to do something feels a lot less exciting or you have a lot less interest or engagement when you have to do something versus like something that you have some interest in. So if you're sitting there trying to convince yourself I have to go build stuff outside of work, it's probably going to feel pretty freaking hard. Um, I know just to give you an example, I know if um if someone said, "Nick, you have to start interviewing for other jobs.

You need to go practice your system design questions, right? I know that's not building stuff, but you have to go practice your system design questions." That's going to be really hard for me to start because I don't want to do that. I don't have an interest in doing that. But if I just to give you a different example, if I'm trying to build more YouTube content, okay, and someone said to me, Nick, it would be really cool if you started doing more system design things. And I'm like, ooh, like that could be kind of interesting. That might be kind of exciting. I'm going to have to go brush up on some of that, how to convey those ideas, but like that seems pretty cool. In both cases, I have to go do system design questions and get better at them. But in the latter case, that might be something that's a little bit more anchored to my interests.

Okay? And I realize that seems kind of obvious, but I wanted to say it out loud because I know that there's going to be some people that watch this and they're like they kind of want to resist the idea of building stuff outside of work and they've convinced themselves that like the activation energy they need to go do that is just too great. So then they end up on the idea. They're like, "Oh, no. Like, I don't have to do that." And it's really like you you've kind of convinced yourself, and I'm not saying it's wrong to feel this way, but you convinced yourself like it's just too much work to get started and I'm not interested. Right?

You might be looking at some of the benefits where you're like, "Yeah, it would be kind of good to to skill up in this other area that like I think I might want to try out, but like I don't know, like too much effort, not enough like there's just not enough activation energy to get started on it." So, my point being that I hear you. I understand that when you're not really interested or motivated to do something that it just feels like it can be insurmountable. So, I do encourage you to try and find interesting ways to align building stuff outside of work with things that you care about. Okay? Like, okay, Nick, what does that mean? That sounds ridiculous. Let's talk about an example. Video games. I think probably lots of people watching this are interested in video games. What makes me think that? Well, social media has demographics.

Most of you are dudes. Most of you are dudes in a certain age range. Most dudes in those certain age ranges like video games. That's cool. Nothing wrong with that. I like video games. Um, so you might have a favorite video game. I always, uh, jokingly, half jokingly, use Pokémon as an example. Um, I like throwing this in there, too, cuz I've had some people go, "Oh, like you like those video games." Uh, I love role playing games, right? Uh, I am a diehard uh, unfortunately the franchise has kind of gone south. diehard Diablo fan. Uh when I was a little kid, I played Diablo like one, saw my neighbor playing it. I fell in love with role playing games. So love Diablo. Um Diablo II Lord of Destruction was my jam for probably uh too much of my life consumed from that. Uh Path of Exile uh Path of Exile 2.

Um what else? Like if name any action RPG definitely like to play it. Um obviously like Elder Scrolls games, stuff like that. Like I love role playing games. I don't know what games you like, but you probably like some type of games. If I were to base my statement on some analytics that I have now, what games do you like? Okay. Like could you build something related to that? Right. Um, it doesn't have to be as complicated as like I don't know if you played Path of Exile like uh the Path of Ex or Path of Building or whatever it's called, like some of those tools. Like I'm not saying you have to go build the next one of those. Uh I made YouTube videos and did a live stream where we we had AI go build like a a Pokedex, right?

Like I think if you can align your projects that you want to go dabble in to some things that you care about or you have an interest in, it can make that learning experience or the sort of the activation energy you need much lower because it's not like oh man I hate doing this. You're like hold on like there's actually something that I'm interested in here that I can align it to. Um so I don't know. Uh, you know, could you build I'm I'm thinking role playing games, right? Like I'm a for role playing games. I'm definitely like a hoarder. I love collecting stuff. So if there's like unique items for like whether it's in Path of Exile, Diablo, or whatever. Like I kind of just want to have one of each so I can say that I found it. So like I don't know. Could you build the equivalent of a Pokédex but for your unique items and and theme it?

There's no cars. stop beeping at me. Uh, and theme it in a way that's like related to the video game or something, right? Could you do that on iOS, Android, mobile app? Like you could build all sorts of like flavors of this same simple concept. And um, I just think that that's a really cool way to try getting over that activation energy. For some of you, you might have a completely different sort of challenge which is not like I don't know like oh I don't want to get started like it seems like such a waste of time or too much work. You might have like all the energy to go do it but you don't really know how to focus it. Um I I don't know if I have a suggestion around that aside from like pick something and just get started. I realize it's probably pretty shitty advice.

Like, but that's probably my advice. I don't know enough um about like psychology to try and convince you to do that. Oh man, that's a big truck that almost ran into someone. Big truck with a funny horn. Um yeah. So, like I don't know if you're sitting there going like, "Oh, I got all these ideas and like I just don't know where to start." And like you're I don't know concerned that you're going to pick the wrong thing to start with. Just start start building stuff. Um it's the same type of I don't know like my my reasoning here is the same reason that uh I see people asking like I don't know what the best programming language to start with is. There isn't. And the more time you waste trying to find the best one, uh the more time you've wasted not, you know, building skills as a programmer.

So like get started, right? If uh if you have a bunch of different side project ideas, like just literally write them down, pick a random number, start with that one, and get going. Okay. I I realize that this is a problem for some people. I should say a challenge for some people because I'm a little bit similar in that when you're starting new things, it's exciting and fun and then like you might get bored of it fast and you like need the next thing and you might be looking at this list going like, "Ah, it's overwhelming. I don't know where to start." Pick one. Okay. Um Okay. So, we've talked about why build side projects. um talked a little bit about activation energy and maybe how you align some of your projects for interest, but uh I do want to say and I I've made lots plenty of videos on on this kind of thing, but what is your goal for building side projects?

This is like I I know that's kind of like the the why, but I I think when you're actually building things, tying it back to like what your goal is, I don't want that to be lost. Okay. So, what does that mean? Well, earlier when we talked about why, I gave some examples like you want to go, you know, make money from building things. Maybe you want to get some clients and build websites or apps for them or whatever it happens to be. One of the goals with doing that is to make money, to have customers. How you approach building software from that perspective might be very very different than if you're just trying to learn um how to integrate different libraries or how to understand how something really works, right? If you want to really understand how things work, I recommend taking them apart, build your own, I would really not advise doing that when you're trying to make money.

Unless, of course, your specific use case is like whatever exists that you can get off the shelf is not suitable, then maybe build your own. But I a lot of like I'm not going to tell you to go make your own logging library or to build your own database driver. Like, why would I tell you to go do that? Well, I might if I said, do you want to know how they work? Because if you want to know how they work, try building your own. I think it's a really cool way to learn. So, tying things back to your goals, I think, is really important because you can get like lost in the sauce when you're building stuff, right? This is if we if I I can't make a video without tying AI into it, right? But when I see people talk about building stuff with AI, you'll get a whole bunch of different I don't know takes on this obviously.

But one of the really common takes is like, oh, like I have no experience and I shipped a thousand million lines of code in, you know, 37 minutes and I'm a programming god. Now it's like you might see that kind of stuff and be like, "Oh man, I must I must suck because like I haven't shipped I said a,000 million. That's a that's a billion. I haven't shipped a billion lines of code in 37 minutes. Oh, I must be so useless." Um, your goal might be very different than that person. Plus, shipping lines of code is the probably the worst metric that you could ever uh try to have. But um maybe that person's goal is just to gloat on social media because they have uh nothing better to do. So tying things back to your goal, I think, is really important. And I I think that when you're building, especially building stuff with AI, if your goal is like, I want to learn how things work.

Well, if you're just getting AI answers like that are copy pasting code from chat GPT or from claude or whatever. Um, if you're just literally taking code output and like hoping it works or like asking it to change things until it works and you're not taking any time to understand it, that goal is misaligned, right? It's it's not serving the purpose. You might realize that you have different goals and that's fine to go change your goals, but tying it back to your goal is important. If your goal is to be able to ship software to customers, you know, you might lean more into like, hey, if AI is getting it to work and I understand it and it's working and it's tested and I feel comfortable with it, that's great. But you might not have understood all the intricate details or something. I think I'm not necessarily um suggesting that, but you might shift more towards like, hey, it's working.

Let's rock and roll. Um you have to think about your goal. And uh I say this too because I have this kind of question. Are there flares on the ground? What's going on here? What an interesting drive. There's two random flares on the shoulder. Cool. Uh I see it come up with résumés and stuff where people are talking about projects for their resumes and people especially junior developers where they're they're trying to build things and um they have AI generating their projects and it's so that they can have a portfolio and like I try to remind people like personally I've never you know looked at a developer resume and been Oh, like this person has, you know, 100 monthly active users and like guess we better go hire them. Uh, and then, oh, this person doesn't have anyone, you know, use paying for their apps, so like they're probably a bad developer.

We don't want them. I've never looked at things this way personally. So trying to have shiny things as projects on your resume, I don't think is helpful, at least from my perspective. What's more helpful is showing that you were trying to build skills in an area by practicing building software and then highlighting what you learned from it. So if you're putting your portfolio together and your goal is to like you know to demonstrate that you learned things from implementing something having AI go blast a bunch of code so you can say I know Java now and then you basically clone it into Python and you're like therefore I know Python like I don't know man you might be able to like exaggerate it on your resume and there's a bit of embellishment or a lot of embellishment, but like imagine being in an interview and someone's like, "Hey, really impressive projects you got, like really cool portfolio.

Tell me more about this thing that you built." And you're like, "Uh, Claude did it." And like, I don't know anything about it. Like, what was the point, man? What was the point of having AI output it to put on your resume so you could get to that awkward conversation? Like, no. So, if you're goal is to go like have things for your resume to learn about them, spend the time doing those things, right? If your goal is to go learn and to build that portfolio, you probably don't need to go panic about how you're going to get users for your application and pay for it. Like, no one gives a unless you change your mind and you give a and you want to Oh, buddy, no signal. Almost killed you. Um, unless you change your mind and you're like, "Actually, this is a pretty cool thing.

I think I can get some users for it." Then, like, yeah, change your goal. Nothing wrong with changing your goal, but be honest about it, right? Otherwise, you'll kind of you feel like you're spinning your wheels cuz you're not making progress towards the thing that you set out to go do. So, a little recap, building projects outside of work. I started off by saying it's not this isn't a requirement to to be a developer. You don't need to define your personality as someone is I program all the time. You're not a lesser developer for for not doing that. Um it does take time. It does take, you know, uh focused effort to go do that. And if you have other things that you want to do in your life that aren't just code code, I'm not telling you that it's wrong to have that approach. Okay?

So, that's part one. Part two, why you might want to consider some things outside of work. Um, I'm not going to hit anyone. Stop beeping. You um may want to go learn things that you're not getting the time to learn at work. You might want to add stuff for your portfolio, for your resume. You may want to try making some money outside of work. Um, I'll mention a couple of others. You might want to do networking this way where you're building projects with other people, getting to meet other developers. I had another one I thought of earlier. Um, anyway, there's lots of reasons you might want to find something that aligns with you. Okay, next up, activation energy. Uh, yes, it can be really challenging to get started for some people. And my whole idea behind this was like if you're able to try and align what you're building with some interest, it might feel like that activation energy is lower cuz it's a little bit more interesting or exciting.

Um, I should also mention on on this cuz I didn't bring it up at any point. Um, if you're building projects outside of work and one of your goals is like I'm just going to make this up. like I want to learn uh I I want to use Postgress and I've you know built a bunch of stuff but I've never used Postgress. My recommendation personally is to not pick everything that's new all at once because I feel like that can be overwhelming and you can get kind of stuck and then again the activation energy to continue pushing through is pretty high because you're like okay I don't even know this programming language and I've never built for this platform and like I don't know Postgress and like uh I'm doing this all serverless. and like I've never done that before and like you know all these things might be overwhelming and you get to the point where you're like screw it like I don't you know it's it's just too much work to go do.

So my recommendation is like be a little bit more targeted with what you're trying to learn or focus on and fix some of the other variables. You want to learn Postgress and you are a Java developer. Great. Like maybe stick with Java, build something in Java that uses Postgress. Maybe you're a Java developer that knows Postgress already and you want to learn Python. Great. The thing that you build, the database that you use, keep Postgress, but switch over to Python or just build something simple in Python without a database, right? try to keep some variables or most variables fixed, very few that are new, and that way you can focus your attention on the new thing. Um, I didn't have great advice for people that uh have too many things to pick from and they can't really, you know, decide which one to get started on, but my, I don't know, reminder is just like, please get started.

Pick pick one and get started and go. Um, but yeah, you might want to do some research or understanding about like, you know, why that happens. Um, I'm trying to do a little bit more of this for myself outside of work. Like why does my brain work a certain way? And I forgot the last thing we talked about. Oh, um, resume stuff and goal focus. Yeah. Yeah. So, bring it back to like why you are doing this stuff. Okay. So, if your goal is to go learn, don't AI bumrush a bunch of code and just have it, you know, done deployed somewhere and you're like, I don't even know what it does. Um, take the time to learn and understand it. And you might shift your approach dramatically if you're trying to ship value to customers, right? If you're trying to get users, you probably don't want to say, "hm, this is the perfect time to go learn an entirely different tech stack." Buddy, your light is green.

Honk at this guy. Yeah, that's an advanced green. Holy cow. Anyone counting how many seconds that was? Too many seconds. um if you're trying to like sell things, you don't want to go learn an entirely different tech stock. That's going to slow you down completely. So stick, if you're trying to make money and have a business building things for people, stick to things that you know, try to, you know, obviously you want to learn always, but like you don't want to change everything. Uh that's going to be a hell of a time. And I think that's it. So um thanks to this person for writing this and I hope there was some insight for folks. Uh I love I am the kind of person that loves to build things. So um unfortunately most of my personality is defined by I like writing code. Uh I like writing code and I like you know being a a wizard in video games and collecting items.

Sue me, right? But everyone's different. So, let's back into this spot. And where's my driveway at? Come on, drive. There you are. I see you. It's dark. I would say, um, reminder for folks, if you have questions about software engineering or career development you want answered, leave them below in the comments. You can go to code.com, submit questions anonymously that way, or message Devleer on any social media platform. And a friendly reminder because it's Monday, I do a live stream every Monday 7:00 p.m. Pacific on the Dev Leader podcast. That's on YouTube. You can watch on LinkedIn. You can watch on Twitter. You can watch on Kick. You can watch on Twitch. The places where you stream stuff. Instagram. I got Instagram, I got everything. Tik Tok, they don't let me stream there. I don't know. I guess I'm not cool enough. But come join. There's a lot of code commute people.

It's fun to hang out. And I will see you next time. Take care.

Frequently Asked Questions

These Q&A summaries are AI-generated from the video transcript and may not reflect my exact wording. Watch the video for the full context.

Why should I consider coding outside of my day job as a software developer?
I believe coding outside of work can help you skill up in areas you're not getting to explore at your job, add meaningful projects to your resume, or even build software for income or business ideas. However, it's not a requirement to be a good developer, and your life doesn't have to revolve around coding outside of work if you don't want it to.
How can I overcome the challenge of finding motivation to code outside of work?
I find that aligning your side projects with your personal interests can lower the activation energy needed to get started. For example, if you like video games, you could build a project related to that, which makes the work more engaging and less like a chore. Picking something that excites you helps make coding outside of work feel more enjoyable and sustainable.
What should my goals be when building side projects outside of work?
I think it's important to clearly define your goals, whether it's learning new skills, building a portfolio, or creating software to sell. Your approach should align with your goal; for learning, take time to understand how things work rather than just copying code, and for making money, focus on shipping working software rather than experimenting with too many new technologies at once. Being honest about your goals helps you stay focused and make meaningful progress.