Time Off After Graduating... How Do I Get Into Software Engineering?

Time Off After Graduating... How Do I Get Into Software Engineering?

• 278 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

This viewer wanted to know how they can focus their attention on the process of launching their software engineering career after taking some time off since college. Let's discuss!

📄 Auto-Generated Transcript

Transcript is auto-generated and may contain errors.

Hey folks, I'm just headed to CrossFit here. We're going to a submit a question. This was done through code.com where you can submit your questions anonymously. So, this person has graduated and they took a little bit of time off between when they graduated and now. Um, and they're they're trying to get ramped back up into into building, you know, trying to how like trying to basically get the experience, take the all the right steps into getting positioned to get interviews and start applying jobs and the whole shebang. So uh they had asked you know gave a little bit of context and then asked like what are the right things to be focusing on and they kind of mentioned a handful of things that they're like at a high level kind of what they're they're they're starting. So, you know, a couple things they mentioned like building things, um, doing lead code, right?

Networking, like at a high level, check, check, check. Um, I think that there's a couple different angles I want to talk about here. And, uh, because it's a drive to CrossFit, this isn't my my longer drive. So, I'll try to make sure that I'm I'm touching on all all three or all four of these areas that I'm thinking about right now. So first of all uh number one in my opinion most important thing is that like aside from the things like lead code aside from the things like making sure your resume is optimized is that like at the end of the day if you're trying to be a software engineer the most important thing is that you are practicing as close as possible to being a software engineer because um these are the actual skills and experiences that you will need when doing it for real.

And that might sound a little bit confusing, but my whole point in saying that is that there are some things like lead code or some things like, you know, how much you're optimizing your resume and stuff like that, how much time and effort goes into that sort of thing that um that just aren't actually software engineering. Now they're necessary steps uh but they're not software engineering. So it's unfortunate but there is a discrepancy between like how you get positioned to get into the industry, how you position your time and energy for you know optimizing for job applications and then then the interview process. Uh that is different than than actual work on the job. And like I think, you know, it's one of the things that really bothers me about our industry. I don't my whole like I don't know adult life has been in software engineering.

So I don't know if there's other industries that feel so disjoint uh when it comes to prep versus the the actual work experience. But it definitely feels that way for me for software engineering. So, um, that's the the first part I want to get out of the way is like you as much as possible be doing the software engineering work, right? Build things. Um, if you're the kind of person that like the software engineering part, the actual coding, building things, like if that feels like a lot of work to you and it's not something that you like and I was saying you have to like really enjoy it and want to do it in all your spare time. If that's something that like you just don't have fun doing, um it's probably going to feel like a bit more of a slog because you're going to have to like carve out time to go do it and like um it's going to feel like a chore and like it's sort of unfortunate reality.

If you are the kind of person that's like, "Hell yeah, like this kind of stuff's pretty fun or like um you know, building little things here and there just like because you're you're curious or you want to try something out like that." In my opinion, it just makes it easier because it's like those are all opportunities for for building. I'm going to get behind this cop, this police officer. Um, so do be practicing as much as possible. Carve out time for it. That's part one. Okay. Now, um, part two of that is like what should you be building? What should you be practicing as much as possible in the areas that you're interested in? Okay. So, and the reason I say this is it's going to tie into the like resume building your your interviews and that kind of stuff. Um, but if you're like, I really want to get a job building mobile applications and like specifically iOS, in my opinion, you should be trying to build a bunch of iOS apps.

You should be trying to do different things with those iOS apps. You should be building iOS apps and a server that you can talk to. You should see if you can build an iOS app and then like um can you spin up a a front-end web app that like mirrors the same user experience? Can you do an Android app that mirrors the iOS app? Like build iOS apps and then build things that are um like in parallel paths to that. And I I say that because when you're building the other pieces, um you may not be as interested, right? Like if I said, "Hey, go build a backend server that your iOS app talks to." You might say, "Yeah, Nick, but like I really I I want to spend my time on on the phone part." And I get it and you should proportionally spend more time doing that part.

Um but if you learn about the other pieces that you have to interact with, you will become a better rounded software engineer. Okay? So don't my point here is like don't shy away from the other parts. If I said, "Hey, build your iOS app." And then like now you need to have the same, you know, app experience or as close as possible on Android. What do you learn about doing that? Right? Does that mean that you're going to learn some things where you're like, "Wow, on iOS and Android, this is fundamentally a different type of experience in scenario X." So like that's actually really good knowledge for me going forward because uh if we have to go build these types of apps like I don't know like maybe the way you design some workflow like really isn't a good fit for one of these types

of phones and like what is the other pattern that you need to go look at right it's just additional knowledge that's going to help you and more experience that's going to help you. So, um I I do highly recommend you spend your time for your projects focused in the areas that you want to be getting employed in. If you want to do web development buil and like specifically in the front end, like spend more time building front-end websites, okay? And again, don't ignore like it's like, okay, well, Nick said go build frontend like that means I never have to go look at a database. Not what I'm saying. just proportionally spend more time doing the parts that you need to explicitly demonstrate more skill in because this is where it's going to kind of bridge some things. But if that's the work that you want to actually be doing and get paid for, like spend the time skilling up and practicing it, right?

Like build literally give yourself the experience. Someone else is not paying you for it unfortunately at this point. But that doesn't mean well okay well then I'll never have that experience. Nope. Like you start building stuff. Start building it. It doesn't and this is I think people get confused on this and I always try to clarify in videos but um I'm not saying start building it and then the expectation is like now you are uh trying to go build the next Facebook and you better have a trillion users. No, I mean like start building things and like use those as learning opportunities to try out technologies to try like you know get you're going to get stuck on problems right how do you navigate those what design decisions are you making like give yourself experiences where you are building things and navigating solving problems I

will be very very clear about this from my personal experience as a hiring manager I am happy for you, but I do not give a about how many paying users you have on a side project. Okay? Like again, happy for you if you have paying users or just, you know, a bunch of users for a free app. Like I think that's super cool for you, but it doesn't doesn't change or influence my perspective on on like you as a candidate. Where that could differ is if we're talking about side projects and you're like, "Hey, I have this side project and like in order to explain the um I don't know like the learning opportunities and things like that, the things that you've actually tried building and and refactoring or rewriting blah blah blah technology choices." If you were like, I have, you know, a thousand daily active users, like what what I'm more interested in is like you're you're describing the scale of a system.

Okay? And I'm not saying that like you need to go have that many users. I don't care if you have any. But if you're telling me in a system you build that there are x number of uh you know uh daily active users or something like that I would be curious to know hey when you have when you have problems right you you or you want to add new features and you need to change your database schema tell me about how you navigate that. It's just because those will give you different experiences when you have, you know, real users and a real live service and you have to do something about it. And that doesn't mean that you can't build those experiences without those live users, right? You could have zero users and explain to me, hey, on this side project, I was actually practicing like um I'm just making something up, right?

Like you could say I was practicing having zero downtime and so I would have multiple deployments and then I would have database migrations and like automatic roll back or something like and you might say well Nick why the hell would I ever build that for a side project? I don't need that on a side project. And you're right, but like if you wanted to try building that so you could have experience and understanding in building some systems like that, then like try building it. Okay? So build things relative to the space that you want to be in because you can start to give yourself some of that experience. You're not waiting for someone to pay you to uh to have that experience. Okay? So, it's a starting point and spend time doing that. Um, resume prep. Yes. Uh, again, if you don't have work experience related to the industry, side projects, side projects, side projects, side projects, build stuff.

Um, I am very curious and hearing about, for me, again, I'm one person for resumes. Uh I'm very curious and hearing about uh what you are building, why you're selecting technology, uh interesting things that you overcame. Okay, so remember a resume, there's different phases for this stuff. If your resume is not telling people what they need to know upfront, I've I've seen people talk about this before where they're like, you know, um, don't include it on the resume because then like you can like wow them in the interview. And I'm like, dude, you won't get the interview. You won't get that far if they're not being wowed by the resume. Don't hold stuff back. Put it on the resume. You need to stand out as much as possible at the resume point of time, right?

If you're like, "Oh, I'm going to kind of keep the resume nice and like nice and shallow so that what in that interview, oh man, like they're going to be shocked with how much cool stuff." I'm like, if you're if you're shocked about not getting interviews, then like maybe that's why you're not you're not standing out at the part where people are selecting candidates. There is an outrageous amount of competition right now for for job applications. One of the last things this person asked in their their message to me was like, "Am I cooked?" And like, "No, I you're not. It's very competitive right now." And unfortunately, it's like something's got to change at some point for how these job postings, job applications are working. but a job post goes up and then it's like there's hundreds or a thousand applicants in no time and like most of the applicants are not qualified.

Most of the applicants are just automated like AI submissions and it's like there's so much noise to sift through. And what's really crappy about that is like it doesn't help anyone because it's just more noise. So, it's crappier for all the candidates because now there's more noise for them to stand out amongst. It's crappy for the um the companies because there it's not it's not feasible for a human to go sift through that. It's just not. If you have a thousand applicants for a job, one job posting, odds are there are probably more than one job posting at a company for a software developer and like and you're getting hundreds or thousands of applicants. Like what what do you expect someone to do? Because if if you think the answer is well a human needs to manually go read through every resume, I'm sorry, it's just not scalable.

which is really shitty because then it's meaning that like very likely the ability to to identify candidates well is going to be reduced. So we have a a crappier mechanism for identifying good candidates because there's so much noise and then there is so much noise so that like we're the candidate selection for at least getting to the interview stage is like also inhibited. So like the whole thing is just a mess and I think that's got to something's got to change there. But the point is um it's just competitive right now and so much of it is volume just in the application phase. So as this person said I am networking as much as possible. Excellent. Uh keep doing that. I think I think that is uh one of the cheat codes right now. When I say cheat codes, like not because it's going to networking is not going to like propel you so fast that like you're just going to be getting tons of, you know, job opportunities immediately.

It's not. But networking is one of those slow burn things that if you're doing it now and you're trying to apply for jobs, waiting to see if you'll get interviews, like if you're not networking, you might feel like, oh man, like nothing's in my control here. I'm applying, I'm not getting anything. And it's kind of going back to that volume thing I was saying. Um, and like what's the fix for that? It's like, oh, more volume. It's like we're just perpetuating this problem. But, um, if you're feeling like, hey, nothing's in my control. I'm stuck. You know, I'm never getting these opportunities. One, keep going. Yes, you will. Number two, um, while that's happening, what is in your control is networking. Okay? And it's uncomfortable for a lot of people. If you're like me and probably many other software developers, I don't have stats on this, but I feel like many of us are introverted, right?

Many people I think get into this because, you know, they can focus on technical challenges, but software development is very much a people thing. Um, be networking, okay? Find opportunities for that. If that's meetups, if that's uh if that's engaging with, you know, things online, that's contributing to open source, building like finding groups of people maybe on Reddit that want to build stuff with you, like whatever it is, find opportunities to be connecting with other people in the space. Okay? Networking does not guarantee that you magically just get a job because you're doing it, but it does increase your surface area for luck. Luck is not a a strategy necessarily, but it's kind of like the like there are just more opportunities when you network. Okay, so just I I can't emphasize this enough.

If you have questions about networking strategies, how to where to go, what to do, how do I talk to people, like just send like leave a comment if you're comfortable asking that or go to codemute.com and and just write a question anonymously. Uh try to be specific if there's like certain parts about networking and stuff that you're interested in, but please do write in. I'm happy to try covering it in more detail. Um I want to go back to a second uh especially for this person's case around resumes and things like that. Um I was talking about side projects. Um universally for people that are uh trying to get into the industry, side projects. Okay. But this person also said they took a year off. And I think what could be important for others to hear is if you have um whether it's a gap in your resume because uh you know you were doing something else whatever it happens to be nonsoftware development experience can absolutely be useful on a resume.

Okay. I have a another YouTube channel that's called Dev Leader Path to Tech. Uh, I do resume reviews on there. Uhoh. Let's see. That is a firet truck. Let's wait for him to go by. Now they're by. Um, on that channel I do resume reviews and I'm I was a little bit behind. I actually just realized that I feel so stupid about this. I had I just did uh three more videos for that channel and when I had the editor upload them and I was trying to schedule them, I found two videos, two resume reviews from September that I didn't post. I'm such a dummy. Um and so I feel terrible for the people that were waiting for those. Um, I I literally can't do anything about it now, but uh I guess they got uploaded and I just hadn't I just hadn't scheduled them.

Um the thing that I want to mention here is that if you have other experience that is not software development, okay, you can still find ways to talk about things that are helpful especially uh to help build a little bit of confidence for junior developers uh sorry as a junior developer for getting hired. And what I mean by that is when you're a junior developer, the expectation is not that you've architected, you know, massive systems that are highly scalable and you have, you know, all this experience in these different technologies. Like it's understood that you are junior and that you don't have that. And the whole point is that, you know, you're going to be part of a pipeline of people learning and growing at a company. And it's literally needed. And so I don't give a what anyone else says about like AI is going to replace all the juniors.

It's not going to do that. It's not. It might be able to do some things that people can do and that feels like replacement. Are there no parking spots? Come on. One second. I got to pull into this thing. Um, so it might feel like, you know, from a capability perspective, it's doing things, but we need a spread of different skill levels on teams. We just need that. So, to give you an example, if you're like, well, Nick, that doesn't make any sense. It does. Um, because if I have people that are say uh mid to senior level, like they need opportunities where they're coaching and helping others. It's part of how they grow. It's part of how they get better. I literally need people on a team that are of different levels. If I could just hire a whole team of staff and principal level engineers because doesn't that make sense on paper that they're the most skilled, the most experienced, they would be the best engineers.

No, it doesn't work that way because there's going to be things that happen on teams where principal and staff level engineers might be like, why the heck am I spending my time doing this? Right? We need opportunities to give work and uh different experiences to people across different levels because the different types of work, the different things that you need to focus your time and energy on are at different skill levels. They just are. It would not be engaging for individuals to do all of that. There are so many opportunities for different levels of work and we need that spread of people and experience levels. Okay. If you have other experiences that are not related to software development, put them on your resume when you're starting out. If you're like, I worked I worked at a grocery store, moved up a couple levels, and uh you know, I got to uh I don't know the different levels.

I worked at a grocery store very briefly before. Um, but if you're like, I operated in a team and here are the things that I did with my team or you worked in a uh in a bank or you worked doing something completely not related to tech. Can you find opportunities where you're like, I worked with other people, I talked to customers, I like can you talk about things like that? working with other people, talking to customers, uh coordinating projects. These are all things that are very very helpful in software development and everyone's hyperfocused on their technical skills. If you can highlight these other areas because you have some of that experience in a workplace plus your side projects, you have a leg up on all of the other people that just have side projects because you are doing things related to projects, people or customers.

Put it on your resume. Hope that helps. I'm at CrossFit. I'm going to go in and I don't know do some overhead squat attempts which I cannot do. So I will see you later. Leave your questions below in the comments or go to code.com. Thanks so much. Appreciate you.

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.

How should I spend my time practicing software engineering after taking time off post-graduation?
I believe the most important thing is to practice as close as possible to actual software engineering work. This means building projects and coding regularly, not just doing LeetCode or resume optimization. If you enjoy coding and building things, it will feel easier and more natural to carve out time for it, which is essential for ramping back up.
What kind of projects should I build to prepare for a software engineering job in a specific area like mobile or web development?
You should focus your projects on the area you want to work in. For example, if you want to do iOS development, build multiple iOS apps and also try building related components like backend servers or Android apps to understand the full ecosystem. This approach helps you become a well-rounded engineer and gives you relevant experience to showcase on your resume.
How can I effectively use my non-software development experience on my resume when applying for junior software engineering roles?
You should definitely include your non-software development experience on your resume, especially if you can highlight transferable skills like teamwork, customer interaction, or project coordination. These experiences help build confidence and show that you have valuable workplace skills alongside your side projects, which can give you an advantage over candidates who only have side projects.