Author: Heather Stenson

Do you need to prepare for technical interviews?

Do you need to prepare for technical interviews?

If you’re already working as a software engineer, you might think that you don’t need to do any preparation for your next technical interview. Maybe you write C++ that’s pure poetry, or perhaps your SQL queries are so efficient that they make grown men weep. So when you’re looking for a new job, it’s easy to fall into the trap of assuming that you’re ready for interviews right away – no prep needed. But are you?

Sidebar: If you’re not working as a software engineer yet, don’t stop reading! A lot of this applies to you too. And we’re going to be posting another article about preparing for coding interviews specifically for you very soon. Stay tuned! 

Think back to your last interview experience.

What kind of questions did you get asked? Some of the questions might have been pretty straightforward, aimed at evaluating how well you could do the task at hand. And if that task was something you were already pretty comfortable doing, you probably didn’t have too much trouble getting it done.

But chances are good that you also got some pretty esoteric or challenging questions. Questions that were more about testing whether you remembered how to implement certain algorithms or data structures… potentially ones that you hadn’t touched since you were in school.

Let’s face it: You’re good at your job, but that doesn’t necessarily mean you’re good at interviewing. Interviews are a completely different beast.

Bottom line: If you’re looking for a new job, you might not be as prepared as you think you are.

Tigran Sloyan, the founder of CodeFights, puts it this way:

“The reality is that the interview questions you’ll face at most companies are miles away from what you do at your day job, so make sure to do some research and practice using real questions that the company uses in its interviews.”

You might think that traditional technical interviews don’t effectively measure how well you would actually perform on the job, and you’re not alone in that. But the fact is that for now, most companies rely on them to weed out people who can’t cut it. They also use them to gauge the aptitude, interest, and intelligence of those who can.

Technical interviews make me cry.

What should you practice?

A mainstay of the technical interview process is asking questions that help the interviewer determine how well a candidate understands computer science fundamentals like data structures and algorithms, whether they can implement them appropriately, and whether they take time and space complexity into account.

A great way for you to revisit these concepts and get those rusty skills back up to snuff is solving Interview Practice challenges on CodeFights. All 100+ of these questions are pulled directly from actual interviews at top tech companies. You can filter by company and by question topic, which gives you a personalized experience that lets you focus on the topics you need to practice the most.

The list of topics you need to study will be largely informed by research that you’ve done on the companies you are interviewing at (or would like to interview at). If you know that a company is likely to ask you questions about tree traversal, you can start working on tree traversal interview questions to prepare! It’s really important to be honest with yourself about the current state of your skills and knowledge. For example, you might have been a dynamic programming expert in college. But if you’ve been a front-end developer working strictly in HTML, CSS, and JavaScript for the past few years, you probably need a refresher.

Finding time

One common issue that we hear from professionals who are starting to look for new programming jobs is that they don’t have time to practice technical interview questions. It’s true that adding yet another commitment on top of your job and your real life can be daunting. Once you’ve determined what it is that you need to study, you’ll need to carve time out to make that happen.

Create your timeline

This is going to look different for everyone. Do you actually have an interview in three weeks? Then that’s your timeline. If you’re just at the contemplation stage and don’t have any interviews lined up yet, then your timeline might be more in the month to two months range. In general, though, it’s best to keep your timeline fairly short. Having a longer timeline means that you risk losing focus and drive.

Create your routine

Now that you know your timeline and what you need to study, it’s time to set your routine. A routine benefits most people because it becomes a built-in framework to adhere to, which in turn creates accountability. There are countless different schools of thought about what constitutes an effective routine, but they all have one thing in common: consistency. You have to practice consistently in order to see the benefits from it. For most people, at least an hour a day is ideal. If your timeline is short, try to spend more time daily. You may have to scale back on some other commitments while you’re in interview preparation mode!

Stick to it!

Once you’ve got a routine that works for you, stick to it. This is the hard part, because it usually involves scaling back on other, more fun parts of your life. But stick to your guns and protect the time you’ve set aside for practice. Remember, this isn’t a forever commitment! Once you’ve gotten to your goal, you can lay off on the interview preparation and get back to whatever it was that you had to scale back on to find the time, whether it’s watching Friends reruns or running marathons.

Practice pays off

We know you’re a good engineer. You know you’re a good engineer! But technical interviews require different skills – and like any other skill, you have to work to get better. Actually writing code that solves the actual technical interview questions makes you more comfortable with the process. We can’t emphasize this enough: The absolute best way to ensure that you’re good at interviewing is to practice solving coding interview problems!

Now go get ’em, tiger. You’re going to knock that interviewer’s socks off!

On the job hunt? Read these articles too:

Resumes. Not fun, right? But in a lot of cases, they’re a necessary part of the job search process. Read Make Your Engineering Resume Stand Out to find out how to write a resume that really highlights your programming skills and experiences and makes you stand out from the crowd of applicants.

Once you’re on a company’s radar, there’s still a few steps before you make it to the in-person technical interview! First, you have to get past the recruiter phone screen. Read Ace Your Phone Screen By Telling Your Story, Pt. 1  to learn how to create a personal elevator pitch that resonates with recruiters. Then check out Ace Your Phone Screen By Telling Your Story, Pt. 2 for tips on how to wow the recruiter during the phone screen itself.

Tell us…

What’s your take on preparing for interviews? If you do prepare (and we hope you do), what does your process look like? Let us know over on the CodeFights forum!

Make Your LinkedIn Profile Work For You

Make Your LinkedIn Profile Work For You

If you were a small business owner and someone offered you a free billboard on the freeway, you’d take it in a heartbeat, right? Free advertising in a high traffic area! That’s a no-brainer – of course you’d want that.

And that, friends, is pretty much exactly what LinkedIn is: a free billboard for YOU.

Recruiters from tech companies are on LinkedIn all the time, plugging in keywords, looking for leads. The search interface makes sourcing on LinkedIn easy for them, so of course they use it. They’re looking for you! They want to give you a job!

So it just makes sense that you, whether you’re an active or passive job seeker, should also be on LinkedIn. Building your profile up into your own personal billboard makes it easy for all those searching recruiters to find you! It’s a hugely valuable tool that makes you visible and accessible to employers who are actively seeking candidates with the skill set that you have.

Fixing your LinkedIn profile can take a little bit of time, depending on how empty or out of date it is, but it’s totally worth it to spend some quality time putting it together. If you’re actively looking for new programming jobs or maybe just open to considering new options, LinkedIn is going to help you out.

Connie Kehn, Lead Talent Engineer at CodeFights, sees a lot of LinkedIn profiles while she’s working with engineers who are using CodeFights to find new jobs. And she used to be a recruiter for Tesla, so she knows what people on the other end of the equation are looking for too! She says, “Take advantage of your LinkedIn. It’s a free billboard space for you to talk about your strengths, your history, your skills, and what kind of work you’re looking for. Recruiters use that! When you’re on the hunt, build it up. You can always take it down later.”

So without further ado, here are CodeFights’ top 10 tips for making your LinkedIn work for you!

  1. Fill out the entire profile. If you leave sections of your LinkedIn profile blank, not only are you missing out on opportunities to tell recruiters who you are and showcase what you’ve done, but you also might be hidden in searches. The LinkedIn platform actually prioritizes complete profiles! So if you’re not filling it out, your profile might not be surfacing in recruiters’ searches.
  2. Stand out with a good headline. Since this is one of the first things someone looking at your LinkedIn profile will see, make it count! Your headline should be descriptive and highlight your interests or specializations. Think specific, not general. And while you can get a little creative if you want to, don’t go overboard. The recruiter needs to be able to quickly decide whether or not you fit the bill. So a headline like Experienced Scala Wrangler Seeking New Pastures is eye-catching but still descriptive, while one like Programming Mermaid doesn’t really give a recruiter much of a sense of what you do. 
  3. Sum yourself up. Your summary should be 40 words or more in order to rank in searches, but don’t go overboard in the other direction either! If your summary is too long, pertinent information might get lost as recruiters skim through. Write in the first person about yourself (“I’m a web developer” vs “Janet is a web developer”), and keep your language natural! Use the old writing adage of “show, don’t tell.” Instead of saying that you’re enthusiastic about Python, be specific: “I taught myself Python two years ago and have been using it whenever possible ever since.”
  4. Add keywords. Whether recruiters are doing searches or already looking at your profile, they’re looking for certain, specific things. You can think of these as your own personal search keywords, and you should make sure that you’ve got these keywords in your Summary, Skills, Experience, Projects, and Recommendations sections. Obviously you don’t want to misrepresent yourself or try to do some keyword-stuffing that looks unnatural. But you do want to make sure that you’re showing up in the right searches! So if you’re looking for a job as a Rails developer but you don’t list Ruby or Rails anywhere in your profile, you may as well not be looking for a Rails dev job at all.
  5. Show off your work. Since you’re a smart engineer you will, of course, be adding a link to your GitHub from your LinkedIn (quite possibly in the Summary section). But remember, recruiters are skimming, and you want to make it easy for them to see what you’ve been working on! Add information about projects that you’ve done in – what else? – the Projects section. Make sure to include relevant details like languages, frameworks, and whether it was a solo project or something you worked on with other people. This is an easy way for the recruiter to get a better feel for your work. Not to mention all those keywords that you’re adding to the descriptions boost your chances of showing up in the right recruiter’s search!
  6. Show off your education! Remember how we said to fill out your entire profile? Yeah, that goes double for the Education section. Maybe you didn’t go to school for computer science or a related field. Or maybe you didn’t go to school at all. Not a problem! Chances are good that you’ve got some relevant coursework, certifications, or seminars under your belt that you could add to your profile. Recruiters like to see this because it’s a little confirmation for them that you’re qualified and competent enough to do the programming jobs they’re working on filling.
  7. Hide the competition. You know that sidebar on the right side of your LinkedIn profile that says “People also viewed” and has a list of other people? You’re going to want to hide that. Go to Settings, then Privacy, and change this to “No”. Because those other people that LinkedIn users are also looking at probably look a lot like you in terms of work or educational history and/or skills, meaning they show up in the same searches… meaning they’re the competition.
  8. Get endorsements. While you’re busy adding your own personal keywords to your Skills section, ask coworkers, classmates, clients, or acquaintances who are familiar with your work to endorse you for those skills. While this actually won’t rank you any higher in searches, it does give the recruiter who’s looking at your profile some very positive cues: Not only do you say that you know Sass, Emily who you worked with at your last company says you know Sass too!
    • Optional: Get recommendations. On a related note, it looks really good when you have recommendations from supervisors, clients, or teachers, especially if they reference specific projects you’ve worked on or things you’re really good at.
  9. Order your sections. By now, you’ve probably noticed that you can move the sections of your profile around. Use this to your advantage! If you just got out of school or you’re switching careers and you don’t have much work experience yet, move your Education and Projects sections up to the top. Been in the tech industry for ages? Keep your Experience section at the top.
  10. Personalize your URL. Which URL would you rather have a recruiter send to a hiring manager: linkedin.com/in/joe-cool-20a70070 or linkedin.com/in/josephcool? While this isn’t a make-or-break situation, having a good personal URL can give your profile an extra layer of professionalism and help build your personal brand.

Bonus: Don’t leave your LinkedIn profile picture blank! Recruiters respond to photos because it helps them create a more complete picture of a candidate in their minds. You don’t have to go get professional headshots unless you want to, but you should make sure that the photo is clear, well-lit, and work-appropriate (no bar-hopping pictures, please). And while you’re at it, add a banner picture too! It makes your profile look more professional, more complete, and more you. After all, what’s a billboard without an eye-catching image?

Doable, right? And once you’ve got your LinkedIn profile fully set up, it’s just a matter of upkeep: adding new jobs, certifications, and skills as you get them. Whether you’re actively looking for new tech jobs or just interested in seeing what comes your way, your personal LinkedIn billboard is a sure-fire way to make sure that recruiters see you for the talented, savvy programmer that you are.

On the job hunt? Read these articles too:

Resumes. Not fun, right? But they’re a necessary part of the job search process a lot of the time. Read Make Your Engineering Resume Stand Out to find out how to write a resume that really highlights your programming skills and experiences and makes you stand out from the crowd of applicants.

Once you’re on a company’s radar, there’s still a few steps before you make it to the in-person technical interview! First, you’re going to have to get past the recruiter phone screen. Read Ace Your Phone Screen By Telling Your Story, Pt. 1  to learn how to craft a personal elevator pitch that will resonate with recruiters. Then check out Ace Your Phone Screen By Telling Your Story, Pt. 2 for tips on how to wow the recruiter during the phone screen itself.

Tell us…

Have you ever found a job opportunity through LinkedIn? Have any great tips for making your LinkedIn profile stand out from other engineers’ profiles? Let us know on the forum!

Ace Your Phone Screen By Telling Your Story, Pt. 2

Ace Your Phone Screen By Telling Your Story, Pt. 2

In Part 1 of this series, you learned how to craft a Story that will resonate with recruiters. Now we’ll talk about exactly how to tell the recruiter your Story during your phone screen.

So you’ve prepared your Story and practiced it a few times. You’ve got your next phone screen scheduled. Now you just need to wow the recruiter!

Be ready

When it’s time for the phone screen, be ready at the agreed-upon time. The recruiter may call a few minutes late, and you shouldn’t take this personally, but on your end you should be 100% ready. Make sure that you’re in a quiet spot and that your phone is fully charged! While this might seem obvious, every recruiter can tell you stories about candidates who took the phone call on the subway, or in a too-loud coffee shop, or… Well, you get the picture. Somewhere other than a quiet, calm place with no background interference that might make it hard for the recruiter to concentrate on what you’re saying. And give yourself a little padding at the end of the scheduled time. If the phone screen is going well and runs a little long, you don’t want to have to cut it short because you have another appointment.

You want to have enough time to finish up this conversation!

Tell your Story

Recruiters will often lead with an open ended question like “Tell me a little bit about yourself.” The purpose of this is two-fold: they want to put you at ease, and they want to get a sense of who you are and what you’re about. The recruiter likely has your resume and your LinkedIn profile in front of them while you’re talking, so don’t just start reciting bullet points. Instead, this is when you’re going to tell the recruiter your Story. At this point, keep the narrative at a high level (think generalities, not specifics). You can dive into the details later if they’re relevant and will drive your Story forward.

Let’s discuss

Your Story isn’t a monologue. Instead, it’s an invitation for the recruiter to ask questions! If you find that you get lost when the recruiter asks a question, it can be worthwhile to keep a list of the high points on hand during the phone screen so that you don’t miss entire portions of your personal narrative.

Talking tech

Even though recruiters tend not to be very technical, as the gatekeepers of the interview process they need to hear that you’re technically competent enough to get to the next round. Be prepared to talk about languages, frameworks, etc. so that they can get a sense of your proficiency level. Part of your Story should be a quantification of how well you know the tools that you have listed on your resume and LinkedIn. Be honest about this stuff! “Familiar but rusty” isn’t going to disqualify you in most cases, and it’s going to come out sooner rather than later if you’ve overstated your skills.

Context, context, context

Never forget why you’re talking to the recruiter – you are interested in a particular position! This context will help you tailor your Story to the specific role and company in question. For instance, if you’re interviewing for a role at a startup, discuss projects or anecdotes that highlight your flexibility, agility, and sense of urgency. Or, if you’re interviewing for a role at a larger company, highlight your commitment to iteration, optimization, and process. Think about why you’re excited about the role or company, and this will come through in your answers.

Stay positive

Never trash talk employers, even when it’s deserved! Keep things positive and professional at all times. Negativity is a big red flag for recruiters.

Check in

While most recruiter phone screens tend to take between 30 minutes to an hour, sometimes they can seem to last forever. Talking about yourself for that long can be hard! It’s okay to check in with the recruiter if you feel like you’ve been talking too much. Don’t be afraid to stop and ask if there’s anything else they want to know about.

Question everything

Always be prepared with some questions! Be sure to do some preliminary homework on the company. Google them to find some recent articles, and spend some time on their website. This will definitely guide a few specific questions. A few good generic ones:

  • “What will role be immediately responsible for/what would I be working on first?”
  • “Is this role new? If so, how is <company> building out the team?”
  • “Can you tell me about professional development at <company>?”
  • “What does the career path/growth for <role> look like?”
  • “What are you most excited about for <company> this year? What brought you there? What keeps you there?”

And finally, never ask about money first. If that’s what you lead with, that’s what you seem to care about most.

Finish strong

The end of your conversation with the recruiter is the perfect opportunity to seal the deal! Tie elements of your Story into specifics about the role and company: “After chatting with you, I’m really excited about x,y,z because it fits in with a,b,c that I’m bringing to the table.” Emphasize that you’re really interested. Now’s not the time to play it cool!

Do you want that job?
The recruiter should already be able to tell you want the job. Don’t make them ask.

And always ask about what the next steps are and what you can do to prepare for them. This shows that you’re proactive, and it’s always a great signal to recruiters.

Congratulations!

You made it past the recruiter gatekeeper! You’re not out of the interview labyrinth – heck, you really just got started – but you’re one step closer to getting that job offer. Put the time and effort into crafting a cohesive, compelling Story before you start off into the interview labyrinth. It’s going to pay off. Not only will you be able to use it in in phone screens, as we’ve discussed in this article, but you’ll be able to use large parts of it in the actual interview as well.

You’re reading an article about how to ace recruiter phone screens, so my spidey senses tell me you might be looking for a job! Did you know that CodeFights can connect you with hundreds of tech companies that are actively seeking qualified engineers – all with only one application? Head to codefights.com/jobs and start finding that dream job today!  

Tell us…

Do you have any tried-and-true tips for doing well on recruiter phone screens? Tell us over on the CodeFights forum!

Ace Your Phone Screen By Telling Your Story, Pt. 1

Ace Your Phone Screen By Telling Your Story, Pt. 1

Sometimes getting through the interview process can feel like trying to find your way through a maze. Scratch that, a labyrinth. One with a bunch of traps and scary parts. (It’s not a perfect metaphor, but work with me here.) There are almost always some predictable stages in the process, though, and one of these is the recruiter phone screen. This is where the recruiter gets a sense of who you are as a candidate and whether you’re worth moving along to the next step. So you can think of the recruiter as the gatekeeper to the labyrinth. You need to get past them in order to get further into the maze, so that you can find your way through, so that you can get to the end, which is of course the amazing job offer. 

Sometimes the end of the labyrinth seems really far away.

Your Story 

To get past this recruiter gatekeeper, you need to have a Story. Not just a story, but a Story. Your Story must be a cohesive narrative that describes your professional path. Your Story will be personal to you, of course, because it’s yours, but the recruiter will be looking for certain cues in your Story that indicate to them whether you’d be a good fit for the role and for the company. If the recruiter doesn’t hear what they need to hear, chances are you won’t be making it to the next, more technical parts of the interview process. So while it’s tempting to dismiss the recruiter phone screen as a mere formality, in reality it’s hugely important. Because without it, you’re done.

The interview process is like a labyrinth
The recruiter probably doesn’t have hair like this, but you can’t tell since it’s a phone screen.

Make it cohesive

Create a narrative that helps recruiters understand your professional path. In a lot of ways, this narrative is similar to your personal elevator pitch – just with a lot more detail. Most people aren’t great with coming up with this sort of thing on the fly, which is why it’s important to prepare your Story ahead of time.

Cover your bases

Your Story should cover your education, your professional history, any personal history that might impact your professional history, and your professional skills. (What do I mean by personal history that impacts your professional history? Think things like: A cross-country move for a partner that resulted in a few months where you were looking for work.) You want the recruiter to get a really good sense of who you are professionally – where you’ve been, where you are now, and where you’d like to go. It’s fine to sprinkle in a few personal details like your hobbies, but keep these brief.

Frame it

Your career path, including any pit stops and pivots, needs to make sense to the recruiter. Even if something isn’t part of a plan, you will be able to work it into the narrative. Framing is everything. For example, if you got laid off from your sales job and then decided to switch careers and become a developer, you can frame that layoff as the best thing that ever happened to you because it gave you the chance to pursue your real passion. It would also be a great chance to talk about any sales skills that make you a strong developer (great communicator, good at working in distributed teams, etc.) List out your work history. If a piece of it doesn’t flow naturally with the rest, work on framing it so that it makes sense in context.  

Explain yourself

Be prepared to explain any gaps in your employment, because the recruiter will ask about them. In general, these gaps aren’t worrisome as long as you have a good explanation for them! (A big exception to this is quitting a job without having anything else lined up. The recruiter might take this as a signal that you have trouble sticking with a company.) Taking a sabbatical is fine – just make sure you have a great reason for it. This is another case in which having your Story prepared is key.

Focus on action and impact

Part of crafting your Story is having some stock anecdotes that you can refer to in pretty much any phone screen. Be prepared with a few projects or stories that you can walk the recruiter through. Recruiters want to hear that you can break things down into manageable chunks and explain them. In these anecdotes, focus on action and impact rather than on what your job duties are/were. State of what your impact was, followed by an explanation of the problem you solved and the specific actions you took.

Practice makes perfect

You might feel silly doing it, but it’s absolutely worthwhile to get some help while you’re crafting your Story. Practice in front of friends. They’ll be able to help you clarify your Story or tighten the narrative. It’s also useful to have them pretend to be a recruiter and ask you some questions.

Sometimes it will take a few tries to get your Story right. You should prepare it beforehand, of course, but you may also find that it evolves over the course of a few phone screens into a Story that resonates with recruiters.

phone screen
You’re so ready for this.

You’re reading an article about how to ace recruiter phone screens, so my spidey senses tell me you might be looking for a job. Did you know that CodeFights can connect you with hundreds of tech companies that are actively seeking qualified engineers – all with only one application? Head to codefights.com/jobs and start finding that dream job today!

Stay tuned!

Now that you’ve put some serious time and effort into crafting your personal Story, it’s time to put it into action! In Part 2, we talk about how to effectively tell your Story to a recruiter.

Tell us…

How do you prepare for recruiter phone screens? Tell us over on the CodeFights forum!

 

Make Your Engineering Resume Stand Out

Make Your Engineering Resume Stand Out

Love ’em or hate ’em (and we’re guessing you don’t love them), resumes are still part of the typical job search process. But putting your resume together can feel like one of the hardest parts of the whole thing! What should you include? What should you leave out? And do you need to include your home address? (Hint: City and state? Sure. Street address? NO.)

A typical engineering job posting can generate hundreds of applications. Only a relatively small percentage of those resumes ever make it in front of a recruiter – and the percentage of those applications that lead to interviews is tiny.

Make your resume stand out
This monkey is having trouble with his resume.

With odds like those, you need to ensure that your resume stands out.

Caity Barnes, recruiter extraordinaire at CodeFights, is going to let you in on some insider knowledge: exactly what she looks for when she’s looking at resumes for engineering roles.

“In a lot of ways, writing a good engineering resume isn’t any different than writing any other kind of resume – make sure it’s well-formatted and that everything’s spelled right. But there are some really specific things that I look for when we’re trying to fill engineering roles.”

Format

  • Recruiters tend to scan resumes in a very specific order. They look at your geographic location, the last job you had, and your education, then the skills list. If they get past that point, that’s when they’ll dive into the other jobs that you’ve listed, and then at projects, achievements, and anything else you’ve included. 
  • If you try to get creative with formatting, fonts, or layout, Caity says that many recruiters will glance at it, decide that it’ll be too hard to scan, and toss it. Don’t let this happen to you! (This applies less if you’re applying for a design job, of course, but most CodeFighters are probably applying for engineering jobs.)
  • A one-page resume is best. If you just can’t cut it down that much, at least make sure that the most important stuff is on the first page. Many recruiters won’t make it further. Hook their attention by putting the most eye-catching stuff first.
  • For every job you list, make it easy for the recruiter to see the company’s name, your title, and how long you were there.
  • Bullet points are your friend! Instead of writing in paragraphs, use bullet points. They’re much easier for recruiters to scan.
  • Don’t talk about yourself in the third person – who are you, the Queen of England? Instead of saying “Bart designed and implemented a user feedback module using Django”, say “I designed and implemented…” Or better yet, since you’re using bullet points, say “Designed and implemented…”
  • In Caity’s opinion, it’s not necessary to include an objective statement at the top of your resume. They’re usually so generic that they’re not useful, and recruiters tend to gloss over them. If you do choose to include one, make it a statement about the kind of company culture that you’re looking for, instead of the kind of work you want to do.
  • Caity says, “I don’t care if you went to the best school in the country – your work experience is more important!” If you’re a very recent grad, you can put the Education section at the top, but otherwise put it at the bottom of the page.
  • Run your resume through spell check and grammar check, and get a few different people to proofread it. While it might seem unimportant – damn it, Jim, you’re an engineer, not an editor! – in some cases a typo or incomprehensible sentence might disqualify you immediately.
Jim, your resume is a mess.
Jim, your resume is a mess.

Content

  • Make sure that you include relevant keywords in your resume. Caity says that when a recruiter’s skimming, they need to be able to pick out important items immediately. And these keywords will change depending on the type of jobs you’re applying for. Think about the skills you’d be highlighting if you were applying for front end jobs vs Java engineering jobs.
  • Be thoughtful about how you include skill items like languages or frameworks. If you list Go, there’s a big difference having used it daily on the job vs having taken a 30 minute seminar on it 2 years ago. Recruiters want to be able to get a sense of how proficient you are. It’s also helpful if you can talk about what you did with these tools so that the recruiter can weight them accordingly.
  • Keep in mind that recruiters tend not to be super technical. From Caity: “We know more about impact than super technical details, so focus on business outcomes that you were a part of.” It’s also helpful to quantify your contributions. (For instance: Were you an individual contributor or part of a team? Was it a big or small team? How many concurrent users did your tool support? How much data did it process daily/weekly?)
  • Try to highlight solo projects or projects to which you contributed a lot, whether they’re for work or side projects. Creating something from scratch is huge and shows initiative, and it’s a great signal to recruiters that you’re a problem solver.
  • “Spell as much out for the recruiter as possible,” Caity says. They are not going to have time to do internet detective work, at least on the first pass. If you worked at a small startup, a short blurb about what the company is helpful. What industry is it in, what size is it, what sort of funding did it get? And if there’s a short tenure on your resume (less than a year), call it out and explain why you left – contract ended, company went under, etc.
  • Put links to your GitHub and your LinkedIn, because they give the recruiter a good overall picture of you. Including other social media can be a little tricker. What does your Twitter feed look like? If you tweet about work-appropriate and relevant topics, go for it. Otherwise, leave it off your resume. Same goes for your blog.
  • Speaking of GitHub, make sure that your profile is something that you’re proud of. Caity says that most recruiters will share it with their hiring managers or interviewing teams to review before taking next steps with candidates. So take some time to clean yours up. Repos that are your own work, rather than forks off other people’s, are good, as is a strong commit history.
  • For recent grads or students – if your GPA is lower than 3.5, don’t include it. If you’ve taken advanced courses on really relevant topics (especially if they were practical, rather than theoretical), you can list them in your Education section. And remember that class projects or coursework aren’t the same thing as side projects, and recruiters won’t weigh them the same.
  • Feel free to put your personality into the resume. What are your hobbies and special interests? Caity says that recruiters love being able to get a sense of who you are! But this stuff should go at the bottom of the page. Remember, recruiters scan top to bottom. You need to put all of the important, must-see stuff at the top of the page.

tl;dr

To boil all of these down into a few principles: Your resume should be clear, concise, and easy to digest. Keep the layout simple and easy to scan. In terms of content, include information that makes it so the recruiter doesn’t have to guess about your history or do extra digging on the internet.

Remember, recruiters aren’t maliciously ignoring your resume! They’re trying to optimize the number of resumes that they can look at for any given engineering job in order to quickly find the most qualified candidates. If you follow these guidelines, your resume stands a much better chance of making it into the “follow-up” pile.

Your resume looks amazing
Your resume looks amazing!

You’re reading an article about how to make your resume stand out, so my spidey senses tell me you might be looking for a job! Did you know that CodeFights can connect you with hundreds of tech companies that are actively seeking qualified engineers – all with only one application? Head to codefights.com/jobs and start finding that dream job today!  

Tell us…

Do you have any tried-and-true tips on how to make your resume stand out? Head over to the CodeFights forum and let us know!

Mastering the Basics for Technical Interviews

Mastering the Basics for Technical Interviews

It’s natural to want to focus on really tricky concepts when you’re preparing for interviews. You know you’re going to get some really hard problems, and so that’s the stuff that you want to practice! But we hear stories all the time about people who prepare for higher-level questions, only to completely blank out when they get questions about the basics. And we definitely don’t want that to happen to you!

You absolutely need to be able to answer questions about programming basics quickly and easily, because for most interviewers, this represents the baseline of what you should be able to do. And if you don’t perform well, this can automatically put you out of the running even if you’ve done well on the rest of the interview.

The basics

Consider the fizzBuzz conundrum that Imran Ghory and others have written about: A surprising amount of seemingly well-qualified applicants are unable to answer even trivial programming questions during technical interviews. An example of this sort of question is the old standby fizzBuzz, which asks the interviewee to write a program that takes a number n and print out the numbers from 1 to n, replacing multiples of 3 with fizz, multiples of 5 with buzz, and multiples of both 3 and 5 with fizzbuzz. (Go ahead, take a minute and do it. We know you want to.) While the odds that an interviewer actually asks you to solve fizzBuzz is pretty low since it’s well-trod territory at this point, it’s a good example of the level of this type of “basic” question.

Questions like this are aimed at making sure that you have a fundamental understanding of how to write code. The interviewer also wants to make sure that you can problem-solve in ways that take test cases and optimization into account. Since this sort of question is usually asked while you’re whiteboarding, interviewers also use this to gauge how you think while you’re working through a problem.

Know your tools

It’s also important that you actually know your favored interviewing language well. Can you write loops, use appropriate methods when they’re available to you, and use the right terminology when you’re discussing elements of the code you’re writing? If not, it’s going to show and the interviewer is going to pick up on it.

Technical interview topics

What basic things should you be really solid on in order to prepare for technical interviews? They tend to fall into a few basic categories:

  • String manipulation (Generate permutations, find substrings, reverse a string, substitute specific letters…)
  • Array manipulation or traversal
  • Number manipulation
  • Pattern matching (If necessary, be ready to write your own regular expression rather than using a regex library)
  • Condition matching (Find the largest/smallest/missing element)

Remember, this represents the baseline of what you should know in order to succeed in an interview (not to mention on the job). You’ll actually need to know a lot more advanced stuff to ace the interview – and don’t worry, Interview Practice has you covered on that front too. But even if you do well on more advanced topics, if you don’t wow the interviewer on the simple ones they’re going to question how capable you actually are. So don’t neglect the basics! Here are some great examples on Interview Practice to get you started:

String manipulation:

Array manipulation or traversal:

Number manipulation:

Pattern matching:

Condition matching:

Tell us:

Have you ever encountered a basic programming question in an otherwise hard interview? How did you handle it? Let us know on the CodeFights forum!