How I prepared for interviews and landed my first engineering job
Tags: career, codenewbie
Published: 2019-12-16 02:25:06


Hello DEV community and welcome back to Code Review, a series of coding challenges and job related content released weekly. I thought I’d do something a little special this week to celebrate the holidays and gear you up for greatness in 2020. This article is going to cover some of my best tips for landing that new engineering job. After all, isn’t a new and engaging engineering job at an awesome company high on everyone’s holiday wish lists? :)

##Here are 10 tips for landing your dream engineering job:
###1. It’s a numbers game
One of the most important ways you can help yourself land that dream job is to apply to all the jobs you can. The hard truth is, you won’t hear back from most jobs you apply to, especially if you are looking for your first tech job. So the more jobs you apply for, the more likely you are to get a call back. In my experience, I’ve applied to hundreds of jobs and received relatively few callbacks. Every job applied to increases your chances of getting a response.

###2. Tell a story
When I interview prospective candidates, I try and figure out what led this particular candidate to this particular interview so that I can try and project how their story might continue if we hire them. I ask what attracted them to coding in the first place, how they learned what they know and what excites them to ascertain whether their values align with our team’s. An interview is such a short amount of time to determine whether someone is a good fit to spend a large amount of time with on the job. Hone in on your story and what makes you unique so your interviewer can picture what it would be like to work with you.

###3. Side projects
When I was interviewing for my first engineering role, I had little experience to speak to. That is why it is especially important to work on side projects when looking for your first dev role. Interviewers want to know you have some experience building applications, even on a small scale. Side projects also help demonstrate that you are passionate about your craft and enjoy doing it even when you aren’t getting paid. Most bootcamps will incorporate side projects into the program, but it’s helpful to go above and beyond to demonstrate your skills and differentiate your resume. That’s why I work on fun projects like [Breadwinnerss.com](https://breadwinnerss.com/?utm_source=Dev.to&utm_medium=Article&utm_campaign=CodeReview).

###4. Network
I know, I know, networking events. Most people hate them, myself included. However, there is NOTHING like having someone put in a good word for you at a company. Having an internal referral is gold in this industry and will help your resume stand out from the rest. Make a goal to go to a networking event as often as you can. I find my best networking events through [Meetup](https://www.meetup.com/) where you can filter by topic. Don’t limit yourself to job fairs or job search related events! Go to something you’re passionate about so that you’ll have meaningful conversations with the people you meet. You don’t need a recruiter to get a job referral, any engineer can provide that for you. Trust me, it will pay off!

###5. Real technical challenges you’ve had
Everytime I interview someone, I ask them about a technical challenge they faced and how they handled it. Sometimes, a candidate’s answer to this question is the determining factor in whether we hire them over someone else. Why? Because we as engineers spend almost our **entire careers** facing technical challenges. We realize something we thought would take a couple hours is actually going to take a couple weeks, or two libraries we hoped we could use together actually don’t play nice with one another. Something that separates good engineers from great ones is the ability to be flexible in our approach and communicate the problem effectively so similar miscalculations aren’t repeated (make new mistakes!). Spend some time, and think about one or two challenges you’ve faced (likely you’ve had many to choose from) and how you dealt with them. 
 
###6. Practice, practice, practice
This is pretty straightforward. Practice those algorithm questions!! Don’t let a question take you by surprise. There are infinite amounts of algorithm questions that you may get asked, but the underlying concepts are limited. You **can** master them all with regular practice while prepping for interviews. Whether you’re interviewing for a junior role or a senior one, I recommend using a platform like [Coderbyte](https://coderbyte.com/course/google-interview-questions?utm_source=Dev.to&utm_medium=Article&utm_campaign=CodeReview&utm_term=5%20-%20How%20I%20prepared%20for%20interviews%20and%20landed%20my%20first%20engineering%20job&utm_content=Intro%20paragraph) to help practice those algorithm questions. Almost all technical interviews require that you can do a classic white board problem and writing application code just won’t prepare you for those problems. The more you do, the more comfortable you’ll feel in front of that whiteboard. 

###7. Get comfortable with being uncomfortable
This is probably the hardest tip and one I still struggle with. Being interviewed is UNCOMFORTABLE. It’s a short amount of time where you have to demonstrate your skills, usually by solving some contrived problem in addition to having some basic chemistry with your interviewer which you really have very little control over. That’s ok. Don’t know the answer to the question they asked? Great. It’s a learning opportunity so you’ll know it next time. Profusely sweating because you wore your favorite sweater and the interview room is hot? Not a big deal - it’s happened to everyone. Its okay to be uncomfortable. In fact - if the interview is a breeze, it may be an indication that the role is too junior for you. Start to see every moment of discomfort as an opportunity for growth.

###8. Personal website
This one is pretty self explanatory. Make a personal website! It’s good practice and also a great thing to attach to your resume. It’s also an opportunity to make a first impression that’s a little more three dimensional than your plain ol’ resume. 

###9. Master your language
Many interviews are language agnostic and for good reason. Most engineering jobs will have a good amount of onboarding time where you’ll have to learn the ins and outs of the company’s tech stack and *allllll* that sweet sweet institutional knowledge. Most engineering skills are transferable from language to language and for that reason, companies are generally understanding if you have to learn a new language on the job. That being said, it is a bad sign when a candidate doesn’t have a grasp on the ins and outs of their language of choice. Because if a candidate clearly hasn’t mastered the language they’re best at, they might not be able to master a language they will have to learn to be successful on the job. 

###10. Have fun
Lastly, don’t take yourself too seriously and have some fun. Interviewing is stressful and requires a lot of patience, but it’s also a great time to meet new people, have new experiences, and challenge yourself in ways you never would otherwise.

##Our newsletter 📫
We’re going to be sending out a small, feature reveal snippet every time we release something big, so our community is the first to know when we break out something new. [Give us your email here] (https://coderbyte.typeform.com/to/fb7Yk8) and we'll add you to our "first to know" list :)