This is everything that you need to know to get your first software engineer job after graduating from college or finishing bootcamp. My first job after I graduated from college was as a software engineer at Google, and I've helped tons of other college/bootcamp graduates land their dream job after graduating, too. I'll go over how to make a strong software engineering resume, how to get job interview offers from companies you're interested in, and how to prep and succeed at the technical interviews.
In this video, I'm gonna be going over how to maximize your chances of getting a job
offer as a new grad out of college or from a coding bootcamp.
While I can't guarantee that you'll get a job, I will tell you everything that I know
to maximize your chances of getting that job offer, that job interview.
My very first job after graduating from college was as a software engineer at Google and I've
also helped a lot of other college graduates from state schools to other private universities
as well as coding bootcamp graduates land their very first jobs after graduating.
While I can't claim to be an expert, I can say that I've gone through this process a
couple of times and helped out other people through it as well.
So I want to give you all the information that I know to help you get your job in tech.
I'm gonna be going over three main topics today.
Number one is how to make a very good resume.
Number two is how to get those job interviews.
And number three is how to succeed and prepare for your job interviews.
Get ready because this is gonna be a super long, informative, and detailed video.
It's gonna be a lot of talking and a lot of information.
And if you like that type of content, definitely make sure to subscribe as well because I post
a ton of informative content just like this.
And with that in mind, let's get started.
Let's start off with the resume.
The resume gets so much hype as the most important thing that you can work on.
And that's kind of true.
Oftentimes, a resume is just used as a first screen, as a filter to determine whether or
not you should get that interview or not.
And then once you are actually in the interview process, your resume doesn't really matter.
And what does matter more is how you perform during those job interviews.
But regardless, you can't get that job interview unless your resume is good enough.
So here's how to make a very, very good resume to maximize your chances of getting that interview
offer after a recruiter looks at your resume.
So in terms of a basic format of the resume, I like to keep it very simple.
You want your resume to be one page long.
Nothing longer, nothing shorter.
And in terms of the format of how your resume should look, the very first section should
be your contact information, who you are, your phone number, your email.
And the next section after that should be your education, what school you went to,
your academic accomplishments, what coding bootcamp you went to, and any awards or academic
accomplishments that you received at that school or institution.
In terms of your GPA, what I typically tell people is if your GPA is above like a 3.2,
3.3, then I would say include it.
But if your GPA is not great, there's no need to put it on there.
Your resume should only include information that makes you look like a good candidate
and a bad GPA does not help you out at all.
So no need to put it if it's below like a 3.3 or 3.2.
The next section afterwards is where I like to put my technical skills.
What languages do I know?
What frameworks do I know?
What technologies have I used?
This is important so that recruiters know whether or not you'll be able to fit in into
their job pipeline immediately because you know the technology that they're using or
if you're going to be somebody that's going to require a little bit more time to onboard
and learn a new language or learn a new framework.
After the technical skills section, you want to go into your work experience.
Now, as a college student or a coding bootcamp student, chances are you probably don't have
a lot of work experience and that's okay.
What you should instead put in this section is your project experience because your projects
are the closest thing that you have to real work experience.
Common questions that I get asked a lot is, is it okay for me to put in a school project
or a coding bootcamp project?
And the answer to that is yes, absolutely yes.
While you definitely should work on some personal projects that really test your limits of what
you can do technically, it's also totally okay to include school projects or coding
bootcamp assignments as well.
Those are fair game because those are real coding projects that you worked on.
The most important thing that you need to keep in mind when you're writing out these
little sections of your previous work experience is you want to be able to talk very fluently
about the technical challenges that you encountered and that you solved and implemented on your
own.
The format that I typically like to follow for each bullet point is I accomplished X
by doing Y resulting in Z.
For example, let's say you designed the system of the application and you implemented it
using React and Express resulting in a full stack web application that was used by over
a hundred students on campus.
It's a very clear structured way to demonstrate what you did, how you did it, and why what
you did was important.
Just remember that what you are trying to do when you are talking about your previous
work experience is you are trying to demonstrate to the recruiter, to whoever is looking at
your application.
Hey, I built something cool using your particular type of technology and I would fit into the
work culture of your company too because I can use these same technical skills or learn
a new technical skill and build something at your company.
I know a very common thing that people say in terms of the job recruiting process is
make a personal project, but it's always easier said than done because I think a lot of people
get stuck because they're like, what exactly do I build for a personal project?
Am I trying to build the next Facebook, the next Instagram?
Does my idea have to be original?
No, it does not.
Your idea does not have to be original.
There's so many project lists out there.
Just Google best personal products to build for software engineering and just build any
of them.
It doesn't matter what the idea is, but rather the fact that you built it yourself.
Now, obviously the best case scenario is you build something that is actually used by other
people, your friends, your family, but if not, that's okay.
In fact, if you go to my own YouTube channel, you can find two videos where I coded two
projects completely from scratch.
One of them is where I recreated Flappy Bird using React JavaScript and the second one
is where I recreated a link tree website as well.
These are full end to end tutorials, completely free to watch.
I'll include the links to those videos down below in the description if you want to check
them out.
While it is true that what technology you use doesn't really matter in terms of learning
how to code, I do think what technologies you use when you're building out projects
is important because ultimately there's a higher chance that a recruiter or a company
would want to hire somebody that already knows how to use a particular technology rather
than them having to spend a couple of months learning a new language or learning a new
framework.
If I had to pick a go-to tech stack to build out a full stack web application, I would
probably use Next.js or React.js on the front end and on the back end, I would use Firebase
or maybe something like Superbase because Superbase is actually a Postgres database
on the back end and most importantly, I would learn how to deploy these websites out onto
the internet for real people.
I think so many personal projects are often stuck to just a local instance running on
your computer which is great, don't get me wrong, but I also think it's really important
and even more impressive when somebody deploys their project out onto the internet for real
people to use on a day-to-day basis.
I would personally recommend doing that on Vercel which makes it super easy to deploy
websites out onto the internet or Google Cloud Run or something on AWS as well.
Those have a little bit of a higher learning curve but they're also more in-demand skills
as well so if you have the time to learn how to deploy projects on like a Docker container
onto AWS or Google Cloud, that's a skill that will definitely stand out as well.
And then if you're trying to be a mobile app developer, I would say build an app using
either React Native or Swift or Kotlin or best case scenario, build two to three projects
using each one because then you demonstrate to the recruiter that you can build a mobile
application using any of the big three languages.
That is about it for the resume section, now let's get on over to how to actually get those
job interviews in the first place.
At the time of filming this video, it's 2023.
Tech layoffs are happening almost every single week.
It is a bad time to be in the tech job market but I think that this is a temporary thing
and in the long run, tech is going to be fine.
So I will say right now, it is going to be extra hard, probably the hardest that it has
ever been to get a job offer after graduating from college or graduating from a coding boot
camp but it's not impossible.
You just have to change your expectations and change your approach to it all.
I think back in the day before all these layoffs were happening, you had a pretty good
chance if you went to a good school or if you built a really impressive personal project
to be able to get a job at a big tech company like Facebook, Google, Apple, Amazon but right
now, that's definitely not the case and in fact, these are the companies that are not
hiring right now.
If I were in your shoes and trying to get my very first job and trying to get some job
interviews, I would not really bank too much on these big tech companies providing you
with anything and in fact, I'll switch my gaze over to startups.
These startups, they know that there's a lot of talent in the market and even though
the economy is pretty bad right now, these startups are still hiring and raising money
and wanting to grow their team out.
Your best bet in getting a job interview right now at the time of publishing this video in
2023 is with a startup and not a big company but the strategy to actually get an interview
at a big company or a startup company is not going to be any different.
One thing that you can do is leverage your network.
It doesn't matter if you go to a state school or you go to an elite private school or if
you go to a coding bootcamp, chances are if you do enough LinkedIn stalking, you can find
someone that went to your school or bootcamp who is currently working at a tech company
right now and it is a great idea for you to reach out to these people, DM them on LinkedIn
and try to connect with them and ask them for some advice and maybe ask them for a referral
or to connect you with somebody who is a job recruiter at that company.
Leveraging your network is one of the most important things that you can do to get that
very first job interview.
Don't be afraid to connect with random people on LinkedIn, DM them, ask them for some help.
Worst case scenario, they say no.
Another thing that you can do to maximize your chances of getting a job interview is
by finding any company that you want to work for and even if they don't have a formal job
posting, you should still cold email them.
Most companies have some type of support email in their contact us section.
Find that email and email them incessantly.
Email them week over week, sending a little cover letter, sending your resume, telling
them about why you want to work at that company.
Chances are they're not going to respond to the very first email that you send but
every single time you follow up, the second, the third, the fourth email, the higher the
chance that they end up responding.
This is what I first did when I had zero experience.
I emailed over a hundred companies and out of those hundred companies, maybe five of
them responded to me and out of those five, I got maybe one offer.
You just have to cast as wide of a net as you possibly can to maximize your chances
of getting someone to respond to you and to get your very first interview.
And worst case scenario, even if they're not hiring for a full-time job offer, you
can ask them about an internship position as well.
And then while you're finessing that internship interview, you can also say, hey, is it possible
that I go through this internship process and if I perform really well as an intern,
is there a chance that I can convert to a full-time offer?
That's another great way to sneak yourself in there and get that full-time job offer.
It's by converting an internship offer into a full-time offer.
Oftentimes, these companies have lower hiring bars for interns than they do for full-time
employees.
Another hack that you can do is going to some type of coding conference out there because
a lot of time at these conferences, there are lots of companies recruiting.
Probably the most famous example I can think of is the Grace Hopper Conference.
Grace Hopper Conference is a software engineering conference geared specifically towards women
and historically, a lot of companies show up there and they give out tons of interviews
and they give out tons of job offers as well.
Depending on the type of person you are, I can almost guarantee that there is some type
of conference or type of group out there dedicated strictly for somebody like you,
so you should definitely do your research and leverage that opportunity.
That's how to get your job interview, but now here's how to actually prepare for your
job interview.
I'll be honest, software engineer interviews suck.
I hate them so much, especially the data structure and algorithm problem.
They're not fun, but unfortunately, that is what a lot of companies do right now.
I will say they're the most common with big tech companies and I think with smaller companies
like mid-sized companies or startups, they don't strictly follow the data structure algorithm
question route.
Sometimes they'll give you a take-home project instead, so really, you need to be prepared
for both.
Really, the only way to practice this is by doing tons and tons of representation out
there.
There are tons of platforms where you can learn these things.
The ones I can think of off the top of my head are AlgoExpert, LeetCode, InterviewCake.
Basically, all you need to do is sign up for one of these platforms and do one or two questions
every single day and practice like crazy.
Data structure and algorithm interview questions, in my opinion, don't test real software engineering
skills and in fact, they are a completely separate skill that you need to learn and
practice on your own.
Unfortunately, it sucks, but it's the game right now and you have to learn how to master
this game and the only way to do it is with a ton and ton of practice.
Now, on the other hand, a lot of other companies, mostly the smaller, the mid-sized companies,
they're going to be doing a project-based interview instead and I like these a lot
more because if it's a project using a language or framework that you know, oftentimes, they're
going to be pretty straightforward to implement and they're either going to give you a take-home
project where you have to complete it on your own and then at the interview, you chat with
them and you go over the implementation, some of the technical problems that you may have
run into, and explaining your thought process through it all.
I love these interviews a lot more because I think they more accurately test what it's
actually like to be a software engineer, but they're also not nearly as common as the data
structure and algorithm questions that are out there in the world.
You should not start preparing for the interview when you have an interview scheduled.
That is way too late.
While you're sending out applications and while you're building up personal projects,
that is when you should be interviewing so that the minute you get an interview scheduled,
you are ready to go do that interview and crush it.
It should not be something that is separate from the resume building process or the job
interview getting process.
It is something that should be done in parallel at the same time.
So the minute you are on job recruiting mode and you're trying to build your personal projects
to beef up your resume, sending out those cold emails to get those initial job interviews,
that is when you should be prepping for these interviews as well.
You want to start early and just do a little bit every single day, one or two questions
a day for two to three months, you're going to be set.
Those are some of the ways to maximize your chances of getting a job in tech.
I went over a ton of information, so definitely if you enjoyed this content, please do me
a favor and hit that like button and if you want to see more of my content as well, definitely
hit that subscribe button and leave any questions that you may have in the comments down below.
I'll do my best to answer them as much as I can.
Thanks for watching.
I'll see you in the next one.