<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Interview Cake</title>
    <description>The latest articles on DEV Community by Interview Cake (@interviewcake).</description>
    <link>https://dev.to/interviewcake</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F169%2F368eb566-088b-4572-b0f6-8525d1e1acde.jpg</url>
      <title>DEV Community: Interview Cake</title>
      <link>https://dev.to/interviewcake</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/interviewcake"/>
    <language>en</language>
    <item>
      <title>Telling better stories for behavioral programming interview questions</title>
      <dc:creator>Parker Phinney</dc:creator>
      <pubDate>Tue, 02 Oct 2018 12:43:19 +0000</pubDate>
      <link>https://dev.to/interviewcake/telling-better-stories-for-behavioral-programming-interview-questions-35a4</link>
      <guid>https://dev.to/interviewcake/telling-better-stories-for-behavioral-programming-interview-questions-35a4</guid>
      <description>&lt;h2&gt;
  
  
  “&lt;em&gt;Show&lt;/em&gt;, don’t tell”
&lt;/h2&gt;

&lt;p&gt;You’ve probably heard this advice before. Maybe it was your 10th grade English teacher. Maybe it was career services in college. “Remember: &lt;em&gt;show&lt;/em&gt;, don’t tell.”&lt;/p&gt;

&lt;p&gt;And it’s good advice. When it comes to answering behavioral questions (like “Tell me about yourself”) in coding interviews, the difference between a good answer and a &lt;em&gt;great&lt;/em&gt; answer comes down to &lt;em&gt;showing&lt;/em&gt; rather than telling.&lt;/p&gt;

&lt;p&gt;The problem is, people who give you the advice of “Show, don’t tell”… are &lt;em&gt;themselves&lt;/em&gt; failing to follow it. They’re &lt;em&gt;telling&lt;/em&gt; you to show, but they should be &lt;em&gt;showing&lt;/em&gt; you &lt;em&gt;how to show&lt;/em&gt;. That’s the hardest part!&lt;/p&gt;

&lt;p&gt;So here are three specific tips for showing more and telling less.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Sprinkle in specific details
&lt;/h2&gt;

&lt;p&gt;Imagine two responses to the stock interview question “Tell me about yourself.”&lt;/p&gt;

&lt;p&gt;First:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I started programming about two years ago with some personal projects. I eventually got a job at a small tech company in my home town, and I’ve been working there about a year and a half. I like my job, but I’m looking for a new challenge, which I think your company could provide.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Then:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I got started programming because I wanted to build a social network for cats. That didn’t take off, but the prototype helped me get a job at a small tech company in my home town.&lt;/p&gt;

&lt;p&gt;Last month, I read an awesome article on Hacker News about the social network your company is building. The scaling challenges you face seem like they’ll help me grow faster and stronger than my current role will.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The second response says &lt;em&gt;a lot&lt;/em&gt; more about the candidate.&lt;/p&gt;

&lt;p&gt;Why? Because of the &lt;em&gt;specific details&lt;/em&gt;. An interviewer won’t remember the tenth person to say “I’m looking for a new challenge.” They &lt;em&gt;will&lt;/em&gt; remember the person who tried to build a social network for cats and read about their company on Hacker News.&lt;/p&gt;

&lt;p&gt;So don’t skimp on the details. &lt;strong&gt;Look out for opportunities to use specifics&lt;/strong&gt;, especially if they’re at all quirky, funny, surprising, or otherwise &lt;em&gt;memorable&lt;/em&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Tell a story from your life
&lt;/h2&gt;

&lt;p&gt;Take another common question: “Why do you want to work here?”&lt;/p&gt;

&lt;p&gt;People tend to just cross-reference their values with those of the company or team they’re interviewing with:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I’m really interested in technical blogging and open source. So I like that your company has some open-source work and contributes back to the community.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That’s a fine response. But to really wow your interviewer, try adding a specific story around those values:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A couple years ago, when I was still new to programming, I was working on this tricky bug. I found a post on a company blog where an engineer explained how her team solved the issue. She included a code snippet she’d open-sourced. I appreciated that she took the time to write about her team’s experience and share their solution. It helped me!&lt;/p&gt;

&lt;p&gt;That’s how I first started getting into open source. I really wanna work with more engineers like that—who write about their work and try to help others in the community. So I was excited to see all the stuff your team shares on your blog and on the company’s Github profile.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The second response just sounds more genuine. It &lt;em&gt;shows&lt;/em&gt; a personal connection to open source and technical blogging, instead of just &lt;em&gt;telling&lt;/em&gt; it.&lt;/p&gt;

&lt;p&gt;Anyone can look up a company’s core values and repeat them during an interview. It’s more meaningful to &lt;strong&gt;tell a story from your life&lt;/strong&gt; that shows how those values benefited you or taught you something.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Use someone else’s voice
&lt;/h2&gt;

&lt;p&gt;This one’s a neat trick. Consider one more standard behavioral question: “What’s your biggest strength?”&lt;/p&gt;

&lt;p&gt;You might tell the interviewer:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I work well with others. Even under tough circumstances, I make sure my coworkers feel supported.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;But a lightly detailed story is better suited to show this strength:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I have a coworker, Ana, who’s been an engineer for almost a decade. We worked together on this really tough, messy project.&lt;/p&gt;

&lt;p&gt;Towards the end, she told me, “For such a hellish project, you really made things feel sane.” I think this is my biggest strength—I work well with others, even under tough circumstances.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;When you respond with a story, you can &lt;strong&gt;refer to what &lt;em&gt;other&lt;/em&gt; people have said about your best qualities&lt;/strong&gt;. In this case, a ten-year tech veteran said you made a project feel less awful. That kind of praise is a lot more credible when it comes from someone else.&lt;/p&gt;

&lt;h2&gt;
  
  
  Practice, practice, practice
&lt;/h2&gt;

&lt;p&gt;Remember these specific tricks for showing rather than telling:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;Use specific, memorable details&lt;/strong&gt;. “Social network for cats” instead of “a personal project.”&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Tell a story from your life&lt;/strong&gt;. “I was trying to solve a tricky bug…” instead of “I value open source contributions.”&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Use someone else’s voice&lt;/strong&gt;. “’You really made things feel sane‘” instead of "I work well with others."&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Try these tactics out on the questions below. Keep in mind, sometimes it’s easiest to start with a “tell” response, then spruce it up to “show.”&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  Tell me your biggest weakness as an engineer.&lt;/li&gt;
&lt;li&gt;  Describe a tricky bug you’ve encountered.&lt;/li&gt;
&lt;li&gt;  What’s the biggest project you’ve shipped?&lt;/li&gt;
&lt;li&gt;  What’s your favorite programming language? Why?&lt;/li&gt;
&lt;li&gt;  How do you overcome interpersonal conflicts with coworkers?&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Get the free coding interview crash course
&lt;/h2&gt;

&lt;p&gt;Don't leave your interviews to chance. I'll teach you the underlying patterns behind the clever algorithms you'll need to come up with during tricky coding interview questions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.interviewcake.com/free-coding-interview-crash-course?utm_source=dev"&gt;Send me coding interview tips »&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




</description>
      <category>career</category>
      <category>interviewing</category>
      <category>interview</category>
      <category>beginners</category>
    </item>
    <item>
      <title>First time going through coding interviews? Common questions and answers.</title>
      <dc:creator>Parker Phinney</dc:creator>
      <pubDate>Mon, 10 Sep 2018 21:37:54 +0000</pubDate>
      <link>https://dev.to/interviewcake/first-time-going-through-coding-interviews-common-questions-and-answers-c0j</link>
      <guid>https://dev.to/interviewcake/first-time-going-through-coding-interviews-common-questions-and-answers-c0j</guid>
      <description>&lt;h3&gt;
  
  
  What's the interview process like at a tech company?
&lt;/h3&gt;

&lt;p&gt;It's actually pretty different from most other companies.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.interviewcake.com/interview-process-at-tech-companies?utm_source=dev"&gt;Here's what it's like to interview for a programming job&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Do I need to know this "big O" stuff?
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.interviewcake.com/big-o-notation-time-and-space-complexity?utm_source=dev"&gt;Big O notation&lt;/a&gt; is the language we use for talking about the efficiency of data structures and algorithms.&lt;/p&gt;

&lt;p&gt;Will it come up in your interviews? Well, it depends. There are different types of interviews.&lt;/p&gt;

&lt;p&gt;There’s the classic algorithmic coding interview, sometimes called the “Google-style whiteboard interview.” It’s focused on data structures and algorithms (&lt;a href="https://www.interviewcake.com/concept/queue?utm_source=dev"&gt;queues&lt;/a&gt; and &lt;a href="https://www.interviewcake.com/concept/stack?utm_source=dev"&gt;stacks&lt;/a&gt;, &lt;a href="https://www.interviewcake.com/concept/binary-search?utm_source=dev"&gt;binary search&lt;/a&gt;, etc).&lt;/p&gt;

&lt;p&gt;That’s what &lt;a href="https://www.interviewcake.com/upgrade?utm_source=dev"&gt;our full course&lt;/a&gt; prepares you for. It's how the big players interview. &lt;a href="https://www.interviewcake.com/google-interview-questions?utm_source=dev"&gt;Google&lt;/a&gt;, &lt;a href="https://www.interviewcake.com/facebook-interview-questions?utm_source=dev"&gt;Facebook&lt;/a&gt;, &lt;a href="https://www.interviewcake.com/amazon-interview-questions?utm_source=dev"&gt;Amazon&lt;/a&gt;, &lt;a href="https://www.interviewcake.com/microsoft-interview-questions?utm_source=dev"&gt;Microsoft&lt;/a&gt;, &lt;a href="https://www.interviewcake.com/oracle-interview-questions?utm_source=dev"&gt;Oracle&lt;/a&gt;, &lt;a href="https://www.interviewcake.com/linkedin-interview-questions?utm_source=dev"&gt;LinkedIn&lt;/a&gt;, etc.&lt;/p&gt;

&lt;p&gt;For startups and smaller shops, it’s a mixed bag. Most will ask at least a few algorithmic questions. But they might also include some role-specific stuff, like &lt;a href="https://www.interviewcake.com/java-interview-questions?utm_source=dev"&gt;Java questions&lt;/a&gt; or &lt;a href="https://www.interviewcake.com/sql-interview-questions"&gt;SQL questions&lt;/a&gt; for a backend web engineer. They’ll be especially interested in your ability to ship code without much direction. You might end up doing a code test or pair-programming exercise instead of a whiteboarding session.&lt;/p&gt;

&lt;p&gt;To make sure you study for the right stuff, you should ask your recruiter what to expect. Send an email with a question like, “Is this interview going to cover data structures and algorithms? Or will it be more focused around coding in X language.” They’ll be happy to tell you.&lt;/p&gt;

&lt;p&gt;If you you've never learned about data structures and algorithms, or you're feeling a little rusty, check out our &lt;a href="https://www.interviewcake.com/data-structures-and-algorithms-guide?utm_source=dev"&gt;Intuitive Guide to Data Structures and Algorithms&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Which programming language should I use?
&lt;/h3&gt;

&lt;p&gt;Companies usually let you choose, in which case you should use your most comfortable language. If you know a bunch of languages, prefer one that lets you express more with fewer characters and fewer lines of code, like Python or Ruby. It keeps your whiteboard cleaner.&lt;/p&gt;

&lt;p&gt;Try to stick with the same language for the whole interview, but sometimes you might want to switch languages for a question. E.g., processing a file line by line will be far easier in Python than in C++.&lt;/p&gt;

&lt;p&gt;Sometimes, though, your interviewer will do this thing where they have a pet question that’s, for example, C-specific. If you list C on your resume, they’ll ask it.&lt;/p&gt;

&lt;p&gt;So keep that in mind! If you’re not confident with a language, make that clear on your resume. Put your less-strong languages under a header like ‘Working Knowledge.’&lt;/p&gt;

&lt;h3&gt;
  
  
  What should I wear?
&lt;/h3&gt;

&lt;p&gt;A good rule of thumb is to dress a tiny step above what people normally wear to the office. For most west coast tech companies, the standard digs are just jeans and a t-shirt. Ask your recruiter what the office is like if you’re worried about being too casual.&lt;/p&gt;

&lt;h3&gt;
  
  
  Should I send a thank-you note?
&lt;/h3&gt;

&lt;p&gt;Thank-you notes are nice, but they aren’t really expected. Be casual if you send one. No need for a hand-calligraphed note on fancy stationery. Opt for a short email to your recruiter or the hiring manager. Thank them for helping you through the process, and ask them to relay your thanks to your interviewers.&lt;/p&gt;




&lt;h2&gt;
  
  
  Get the free coding interview crash course
&lt;/h2&gt;

&lt;p&gt;Don't leave your interviews to chance. I'll teach you the underlying patterns behind the clever algorithms you'll need to come up with during tricky coding interview questions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.interviewcake.com/free-coding-interview-crash-course?utm_source=dev"&gt;Send me coding interview tips »&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




</description>
      <category>career</category>
      <category>interviewing</category>
      <category>interview</category>
      <category>beginners</category>
    </item>
    <item>
      <title>The 24 hours before your onsite coding interview</title>
      <dc:creator>Parker Phinney</dc:creator>
      <pubDate>Mon, 16 Jul 2018 15:44:55 +0000</pubDate>
      <link>https://dev.to/interviewcake/the-24-hours-before-your-onsite-coding-interview-1742</link>
      <guid>https://dev.to/interviewcake/the-24-hours-before-your-onsite-coding-interview-1742</guid>
      <description>&lt;h2&gt;
  
  
  Feeling anxious? That’s normal. Your body is telling you you’re about to do something that matters.
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;The twenty-four hours before your onsite are about finding ways to maximize your performance.&lt;/strong&gt; Ideally, you wanna be having one of &lt;em&gt;those days&lt;/em&gt;, where elegant code flows effortlessly from your fingertips, and bugs dare not speak your name for fear you'll squash them.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;You need to get your mind and body in The Zone™&lt;/strong&gt; before you interview, and we've got some simple suggestions to help.&lt;/p&gt;

&lt;h2&gt;
  
  
  Don't study all night—sleep!
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Interviewing sleep deprived could be &lt;a href="https://www.huffingtonpost.com/lissette-calveiro/studies-show-sleep-deprivation-performance-is-similar-to-being-under-the-influence-of-alcohol_b_9562992.html"&gt;worse than getting drunk&lt;/a&gt; beforehand&lt;/strong&gt;. Make it your mission to get a full night of sleep, because you want all the brain power you can get.&lt;/p&gt;

&lt;p&gt;In fact, try to get &lt;em&gt;two&lt;/em&gt; nights of good sleep before interviewing, since &lt;a href="https://www.seventhgeneration.com/enhancing-health/cost-sleep-debt-can-you-recover"&gt;sleep debt lasts a few days&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;As soon as the sun goes down, put down the practice problems and focus on relaxing.&lt;/strong&gt; If sleeping isn't your strongest skill, try these sleepytime guidelines:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  Exercise &lt;em&gt;lightly&lt;/em&gt; earlier in the day.&lt;/li&gt;
&lt;li&gt;  Don't drink caffeine in the afternoon, and don't drink alcohol at all.&lt;/li&gt;
&lt;li&gt;  Avoid bright screens in the evening. Dim your screen once the sun sets.&lt;/li&gt;
&lt;li&gt;  Eat a &lt;em&gt;light&lt;/em&gt; dinner, ideally one with noggin-friendly foods, like salmon, beans, and vegetables.&lt;/li&gt;
&lt;li&gt;  Before bed, turn on a boring podcast, listen to some calming music, or read a book.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The most important thing is to &lt;em&gt;not&lt;/em&gt; stay up late practicing &lt;em&gt;new or difficult&lt;/em&gt; problems.&lt;/strong&gt; That'll only put your brain on a train to Los Anxiousness. Instead, you should…&lt;/p&gt;

&lt;h2&gt;
  
  
  Practice stuff you rock at
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;To cultivate your confidence, practice questions that you can already solve handily.&lt;/strong&gt; Sure, feel free to &lt;em&gt;start&lt;/em&gt; the day with a new problem, but by the afternoon you should be building momentum with the questions you know best.&lt;/p&gt;

&lt;p&gt;Giving yourself a few wins like this helps your brain simulate a stellar session at the whiteboard. You'll go to sleep dreaming of data structures, and you'll wake up with a self-esteem stimulus that makes you stand out in your interview.&lt;/p&gt;

&lt;h2&gt;
  
  
  Imagine your best day
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Write out the ideal version of your day.&lt;/strong&gt; It's a positive visualization exercise. This might sound like some hippie shit, but it's something athletes and entrepreneurs do all the time.&lt;/p&gt;

&lt;p&gt;The fun part is that there isn't a ‘correct’ way to do this. It's up to you! If you're not sure where to start, here's some inspiration:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Greet your interviewer(s).&lt;/strong&gt; Play through some small talk. Maybe you make a little joke they find funny.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Crush your first question.&lt;/strong&gt; The first question comes your way, and you write out the answer deftly. Your interviewer's face looks impressed.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Overcome a tough question.&lt;/strong&gt; You get to a trickier part of a problem. You feel some adrenaline, but you keep calm. You ask a few clarifying questions and carry on to a solution.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;End the day on a high note.&lt;/strong&gt; Your last interview of the day involves talking to a director or VP, and the conversation is lively. You leave the building smiling and feeling great about the whole experience.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Visualizing a successful day will build your confidence.&lt;/strong&gt; You're training your brain to expect success and feel more comfortable during your interview.&lt;/p&gt;

&lt;h2&gt;
  
  
  Walk through your problem solving process
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Reinforcing problem-solving patterns goes a longer way than practicing new problems&lt;/strong&gt; in the hours leading up to your interview. Notice how our &lt;a href="https://www.interviewcake.com/coding-interview-tips?utm_source=dev"&gt;coding interview tips article&lt;/a&gt; gives you a handy process for solving algorithmic problems:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;Brainstorm an algorithm.&lt;/strong&gt; Draw out sample inputs and play around with them while talking and thinking out loud. Don't start writing code until you and your interviewer feel good about your algorithm.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Barf out your algorithm in code.&lt;/strong&gt; Focus on getting it all down first, and jot down notes next to the things you wanna go back and double-check later.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Debug your code.&lt;/strong&gt; Walk through your code with sample input, look for off-by-one-errors and other bugs.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This high-level, “What's my problem solving &lt;em&gt;process&lt;/em&gt;” is great to keep thinking about the morning of your interview. And speaking of that morning…&lt;/p&gt;

&lt;h2&gt;
  
  
  Precompute your morning
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Decision fatigue is real.&lt;/strong&gt; It's why successful people like Mark Zuckerberg and Barack Obama always wear the same thing—to minimize the number of decisions they make each morning. Luckily, it's easy to avoid decision fatigue once you're aware of it!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Plan the boring stuff ahead of time.&lt;/strong&gt; Here are a few suggestions to get you started:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Pack your bag.&lt;/strong&gt; Include a snack and water bottle.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Lay out some nice clothes.&lt;/strong&gt; Dress a tiny step above what others in the office are wearing (usually they'll be sporting jeans and a t-shirt).&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Plan your breakfast.&lt;/strong&gt; For your brain's sake, try to include eggs, berries, and avocado.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Choose your route&lt;/strong&gt; to the office. Expect traffic. Scope out the parking situation if you're driving.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Tarantino your morning.&lt;/strong&gt; Work backwards from about 30 minutes before your interview, and figure out what time you need to wake up.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Set an alarm (or ten).&lt;/strong&gt; Remember that you want time in the morning to chill, eat a leisurely breakfast, and sip on a cup of coffee (if that's your cup of… tea).&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Brainstorm a pump-up routine.&lt;/strong&gt; Come up with a few things to get you stoked. If you're not sure what your morning pump-up routine looks like, we've got you covered…&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Get pumped
&lt;/h2&gt;

&lt;p&gt;The morning of your interview, you wanna get energized! The right pump-up routine should make you excited, confident, and ready to tackle your interview head-on.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Get your body moving.&lt;/strong&gt; Do sun salutations and a few jumping jacks. Light exercise increases the blood flow to your brain and helps &lt;a href="https://www.scientificamerican.com/article/why-do-you-think-better-after-walk-exercise/"&gt;clear your mind&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Power pose and read your positive visualization.&lt;/strong&gt; It might feel strange at first, but &lt;a href="https://jamesclear.com/body-language-how-to-be-confident"&gt;it works&lt;/a&gt;! You'll prime yourself to feel more confident heading into your interview.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Listen to pump-up music.&lt;/strong&gt; If you're like me, the intro to &lt;em&gt;Backstreet's Back&lt;/em&gt; should do the trick. If you're not like me (i.e., you're unwilling to admit you like the Backstreet Boys), you probably have an equally awesome song in mind.&lt;/p&gt;




&lt;h2&gt;
  
  
  Get the free coding interview crash course
&lt;/h2&gt;

&lt;p&gt;Don't leave your interviews to chance. I'll teach you the underlying patterns behind the clever algorithms you'll need to come up with during tricky coding interview questions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.interviewcake.com/free-coding-interview-crash-course?utm_source=dev"&gt;Send me coding interview tips »&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




</description>
      <category>interviewing</category>
      <category>interview</category>
      <category>career</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Tricks for getting unstuck during a coding interview</title>
      <dc:creator>Parker Phinney</dc:creator>
      <pubDate>Mon, 11 Jun 2018 20:52:22 +0000</pubDate>
      <link>https://dev.to/interviewcake/tricks-for-getting-unstuck-during-a-coding-interview-2602</link>
      <guid>https://dev.to/interviewcake/tricks-for-getting-unstuck-during-a-coding-interview-2602</guid>
      <description>&lt;p&gt;Getting stuck during a coding interview is rough.&lt;/p&gt;

&lt;p&gt;If you weren’t in an interview, you might take a break or ask Google for help. But the clock is ticking, and you don’t have Google.&lt;/p&gt;

&lt;p&gt;You just have an empty whiteboard, a smelly marker, and an interviewer who’s looking at you expectantly. And all you can think about is how stuck you are.&lt;/p&gt;

&lt;p&gt;You need a lifeline for these moments—like a little box that says “In Case of Emergency, Break Glass.”&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Inside&lt;/em&gt; that glass box? A list of tricks for getting unstuck. Here’s that list of tricks.&lt;/p&gt;

&lt;h2&gt;
  
  
  When you’re stuck on getting started
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1) Write a sample input on the whiteboard and turn it into the correct output "by hand."&lt;/strong&gt; Notice the &lt;em&gt;process&lt;/em&gt; you use. Look for patterns, and think about how to implement your process in code.&lt;/p&gt;

&lt;p&gt;Trying to reverse a string? Write “hello” on the board. Reverse it “by hand”—draw arrows from each character’s current position to its desired position.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2F%2Fimages%2Fsvgs%2Funstuck__hello_string.svg%3Fbust%3D170" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2F%2Fimages%2Fsvgs%2Funstuck__hello_string.svg%3Fbust%3D170" alt="An array containing the string "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Notice the pattern: it looks like we’re &lt;em&gt;swapping&lt;/em&gt; pairs of characters, starting from the outside and moving in. Now we’re halfway to an algorithm.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2) Solve a simpler version of the problem.&lt;/strong&gt; Remove or simplify one of the requirements of the problem. Once you have a solution, see if you can adapt that approach for the original question.&lt;/p&gt;

&lt;p&gt;Trying to find the k-largest element in a set? Walk through finding the &lt;em&gt;largest&lt;/em&gt; element, then the &lt;em&gt;second largest&lt;/em&gt;, then the &lt;em&gt;third largest&lt;/em&gt;. Generalizing from there to find the k-largest isn’t so bad.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3) Start with an inefficient solution.&lt;/strong&gt; Even if it feels &lt;em&gt;stupidly inefficient&lt;/em&gt;, it’s often helpful to start with &lt;em&gt;something&lt;/em&gt; that’ll return the right answer. From there, you just have to &lt;a href="https://www.interviewcake.com/#unstuck-optimization?utm_source=dev" rel="noopener noreferrer"&gt;optimize&lt;/a&gt; your solution. Explain that this is only your first idea, and that you suspect there are faster solutions.&lt;/p&gt;

&lt;p&gt;Suppose you were given two lists of sorted numbers and asked to find the median of both lists combined. It’s messy, but you could simply:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Concatenate the arrays together into a new array.&lt;/li&gt;
&lt;li&gt; Sort the new array.&lt;/li&gt;
&lt;li&gt; Return the value at the middle index.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Notice that you could’ve &lt;em&gt;also&lt;/em&gt; arrived at this algorithm by using trick (2): Solve a simpler version of the problem. “How would I find the median of &lt;em&gt;one&lt;/em&gt; sorted list of numbers? Just grab the item at the middle index. Now, can I adapt that approach for getting the median of &lt;em&gt;two&lt;/em&gt; sorted lists?”&lt;/p&gt;

&lt;h2&gt;
  
  
  When you’re stuck on finding optimizations
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1) Look for repeat work.&lt;/strong&gt; If your current solution goes through the same data multiple times, you’re doing unnecessary repeat work. See if you can save time by looking through the data just once.&lt;/p&gt;

&lt;p&gt;Say that inside one of your loops, there’s a brute-force operation to find an element in an array. You’re repeatedly looking through items that you don’t have to. Instead, you could convert the array to a &lt;a href="https://www.interviewcake.com/concept/hash-map?utm_source=dev" rel="noopener noreferrer"&gt;lookup table&lt;/a&gt; to dramatically improve your runtime.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2) Look for hints in the specifics of the problem.&lt;/strong&gt; Is the input array sorted? Is the &lt;a href="https://www.interviewcake.com/concept/binary-tree?utm_source=dev" rel="noopener noreferrer"&gt;binary tree&lt;/a&gt; balanced? Details like this can carry huge hints about the solution. If it didn’t matter, your interviewer wouldn’t have brought it up. It’s a strong sign that the best solution to the problem exploits it.&lt;/p&gt;

&lt;p&gt;Suppose you’re asked to find the first occurrence of a number in a sorted array. The fact that the array is &lt;em&gt;sorted&lt;/em&gt; is a strong hint—take advantage of that fact by using a &lt;a href="https://www.interviewcake.com/concept/binary-search?utm_source=dev" rel="noopener noreferrer"&gt;binary search&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Sometimes interviewers leave the question deliberately vague because they want you to &lt;em&gt;ask questions&lt;/em&gt; to unearth these important tidbits of context. So ask some questions at the beginning of the problem.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3) Throw some &lt;a href="https://www.interviewcake.com/article/data-structures-computer-science?utm_source=dev" rel="noopener noreferrer"&gt;data structures&lt;/a&gt; at the problem.&lt;/strong&gt; Can you save time by using the fast lookups of a &lt;a href="https://www.interviewcake.com/concept/hash-map?utm_source=dev" rel="noopener noreferrer"&gt;hash table&lt;/a&gt;? Can you express the relationships between data points as a &lt;a href="https://www.interviewcake.com/concept/graph?utm_source=dev" rel="noopener noreferrer"&gt;graph&lt;/a&gt;? Look at the requirements of the problem and ask yourself if there’s a data structure that has those properties.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4) Establish bounds on space and runtime.&lt;/strong&gt; Think &lt;em&gt;out loud&lt;/em&gt; about the parameters of the problem. Try to get a sense for how fast your algorithm &lt;em&gt;could possibly&lt;/em&gt; be:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  “I have to at least look at all the items, so I can’t do better than time”.&lt;/li&gt;
&lt;li&gt;  “The brute force approach is to test all possibilities, which is
time. So the question is whether or not I can beat that time.”&lt;/li&gt;
&lt;li&gt;  “The answer will contain n^2 items, so I must at least spend that amount of time.”&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  When All Else Fails
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1) Make it clear where you are.&lt;/strong&gt; State what you know, what you’re trying to do, and highlight the gap between the two. The clearer you are in expressing &lt;em&gt;exactly&lt;/em&gt; where you’re stuck, the easier it is for your interviewer to help you.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2) Pay attention to your interviewer.&lt;/strong&gt; If she asks a question about something you just said, there’s probably a hint buried in there. Don’t worry about losing your train of thought—drop what you’re doing and dig into her question.&lt;/p&gt;

&lt;h2&gt;
  
  
  Relax. You’re &lt;em&gt;supposed&lt;/em&gt; to get stuck.
&lt;/h2&gt;

&lt;p&gt;Interviewers choose hard problems on purpose. They want to see how you poke at a problem you don’t immediately know how to solve.&lt;/p&gt;

&lt;p&gt;Seriously. If you &lt;em&gt;don’t&lt;/em&gt; get stuck and just breeze through the problem, your interviewer’s evaluation might just say “Didn’t get a good read on candidate’s problem-solving process—maybe she’d already seen this interview question before?”&lt;/p&gt;

&lt;p&gt;On the other hand, if you &lt;em&gt;do&lt;/em&gt; get stuck, use one of these tricks to get unstuck, and communicate clearly with your interviewer throughout...&lt;em&gt;that’s&lt;/em&gt; how you get an evaluation like, “Great problem-solving skills. Hire.”&lt;/p&gt;




&lt;h2&gt;
  
  
  Get the free coding interview crash course
&lt;/h2&gt;

&lt;p&gt;Don't leave your interviews to chance. I'll teach you the underlying patterns behind the clever algorithms you'll need to come up with during tricky coding interview questions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.interviewcake.com/free-coding-interview-crash-course?utm_source=dev" rel="noopener noreferrer"&gt;Send me coding interview tips »&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




</description>
      <category>career</category>
      <category>interviewing</category>
      <category>interview</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Coding Interview Tips</title>
      <dc:creator>Parker Phinney</dc:creator>
      <pubDate>Mon, 21 May 2018 19:36:01 +0000</pubDate>
      <link>https://dev.to/interviewcake/coding-interview-tips-1h02</link>
      <guid>https://dev.to/interviewcake/coding-interview-tips-1h02</guid>
      <description>&lt;h2&gt;
  
  
  Chitchat like a pro.
&lt;/h2&gt;

&lt;p&gt;Before diving into code, most interviewers like to chitchat about your background. They're looking for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Metacognition about coding&lt;/strong&gt;. Do you think about how to code well?&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Ownership/leadership&lt;/strong&gt;. Do you see your work through to completion? Do you fix things that aren't quite right, even if you don't have to?&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Communication&lt;/strong&gt;. Would chatting with you about a technical problem be useful or painful?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You should have at least one:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  example of an interesting technical problem you solved&lt;/li&gt;
&lt;li&gt;  example of an interpersonal conflict you overcame&lt;/li&gt;
&lt;li&gt;  example of leadership or ownership&lt;/li&gt;
&lt;li&gt;  story about what you should have done differently in a past project&lt;/li&gt;
&lt;li&gt;  piece of trivia about your favorite language, and something you do and don't like about said language&lt;/li&gt;
&lt;li&gt;  question about the company's product/business&lt;/li&gt;
&lt;li&gt;  question about the company's engineering strategy (testing, Scrum, etc)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Nerd out about stuff&lt;/strong&gt;. Show you're proud of what you've done, you're amped about what they're doing, and you have opinions about languages and workflows.&lt;/p&gt;

&lt;h2&gt;
  
  
  Communicate.
&lt;/h2&gt;

&lt;p&gt;Once you get into the coding questions, communication is key. A candidate who needed some help along the way but communicated clearly can be even better than a candidate who breezed through the question.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Understand what kind of problem it is&lt;/strong&gt;. There are two types of problems:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;Coding&lt;/strong&gt;. The interviewer wants to see you write clean, efficient code for a problem.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Chitchat&lt;/strong&gt;. The interviewer just wants you to talk about something. These questions are often either (1) high-level system design ("How would you build a Twitter clone?") or (2) trivia ("What is hoisting in Javascript?"). Sometimes the trivia is a lead-in for a "real" question e.g., "How quickly can we sort a list of integers? Good, now suppose instead of integers we had . . ."&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If you start writing code and the interviewer just wanted a quick chitchat answer before moving on to the "real" question, they'll get frustrated. Just ask, "Should we write code for this?"&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Make it feel like you're on a team&lt;/strong&gt;. The interviewer wants to know what it feels like to work through a problem with you, so make the interview feel collaborative. Use "we" instead of "I," as in, "If we did a breadth-first search we'd get an answer in time." If you get to choose between coding on paper and coding on a whiteboard, always choose the whiteboard. That way you'll be situated next to the interviewer, facing the problem (rather than across from her at a table).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Think out loud.&lt;/strong&gt; Seriously. Say, "Let's try doing it this way—not sure yet if it'll work." If you're stuck, just say what you're thinking. Say what might work. Say what you thought could work and why it doesn't work. This also goes for trivial chitchat questions. When asked to explain Javascript closures, "It's something to do with scope and putting stuff in a function" will probably get you 90% credit.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Say you don't know.&lt;/strong&gt; If you're touching on a &lt;em&gt;fact&lt;/em&gt; (e.g., language-specific trivia, a hairy bit of runtime analysis), don't try to appear to know something you don't. Instead, say "&lt;em&gt;I'm not sure, but I'd guess $thing, because...&lt;/em&gt;". The &lt;em&gt;because&lt;/em&gt; can involve ruling out other options by showing they have nonsensical implications, or pulling examples from other languages or other problems.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Slow the eff down&lt;/strong&gt;. Don't confidently blurt out an answer right away. If it's right you'll still have to explain it, and if it's wrong you'll seem reckless. You don't win anything for speed and you're more likely to annoy your interviewer by cutting her off or appearing to jump to conclusions.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get unstuck.
&lt;/h2&gt;

&lt;p&gt;Sometimes you'll get stuck. Relax. It doesn't mean you've failed. Keep in mind that the interviewer usually cares more about your ability to cleverly poke the problem from a few different angles than your ability to stumble into the correct answer. When hope seems lost, keep poking.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Draw pictures.&lt;/strong&gt; Don't waste time trying to think in your head—think on the board. Draw a couple different test inputs. Draw how you would get the desired output by hand. Then think about translating your approach into code.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Solve a simpler version of the problem.&lt;/strong&gt; Not sure how to find the 4th largest item in the set? Think about how to find the 1st largest item and see if you can adapt that approach.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Write a naive, inefficient solution and optimize it later.&lt;/strong&gt; Use brute force. Do whatever it takes to get &lt;em&gt;some kind&lt;/em&gt; of answer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Think out loud more&lt;/strong&gt;. Say what you know. Say what you thought might work and why it won't work. You might realize it actually does work, or a modified version does. Or you might get a hint.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Wait for a hint.&lt;/strong&gt; Don't stare at your interviewer expectantly, but do take a &lt;em&gt;brief&lt;/em&gt; second to "think"—your interviewer might have already decided to give you a hint and is just waiting to avoid interrupting.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Think about the bounds on space and runtime.&lt;/strong&gt; If you're not sure if you can optimize your solution, think about it out loud. For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  "I have to at least look at all of the items, so I can't do better than ."&lt;/li&gt;
&lt;li&gt;  "The brute force approach is to test all possibilities, which is ."&lt;/li&gt;
&lt;li&gt;  "The answer will contain n^2 items, so I must at least spend that amount of time."&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Get your thoughts down.
&lt;/h2&gt;

&lt;p&gt;It's easy to trip over yourself. Focus on getting your thoughts down first and worry about the details at the end.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Call a helper function and keep moving.&lt;/strong&gt; If you can't immediately think of how to implement some part of your algorithm, big or small, just skip over it. Write a call to a reasonably-named helper function, say "this will do X" and keep going. If the helper function is trivial, you might even get away with never implementing it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Don't worry about syntax.&lt;/strong&gt; Just breeze through it. Revert to English if you have to. Just say you'll get back to it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Leave yourself plenty of room.&lt;/strong&gt; You may need to add code or notes in between lines later. Start at the top of the board and leave a blank line between each line.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Save off-by-one checking for the end.&lt;/strong&gt; Don't worry about whether your for loop should have "&amp;lt;" or "&amp;lt;=." Write a checkmark to remind yourself to check it at the end. Just get the general algorithm down.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Use descriptive variable names.&lt;/strong&gt; This will take time, but it will prevent you from losing track of what your code is doing. Use names_to_phone_numbers instead of nums. Imply the type in the name. Functions returning booleans should start with "is_*". Vars that hold a list should end with "s." Choose standards that make sense to you and stick with them.&lt;/p&gt;

&lt;h2&gt;
  
  
  Clean up when you're done.
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Walk through your solution by hand, out loud, with an example input.&lt;/strong&gt; Actually &lt;em&gt;write down&lt;/em&gt; what values the variables hold as the program is running—you don't win any brownie points for doing it in your head. This'll help you find bugs and clear up confusion your interviewer might have about what you're doing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Look for off-by-one errors.&lt;/strong&gt; Should your for loop use a "&amp;lt;=" instead of a "&amp;lt;"?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Test edge cases.&lt;/strong&gt; These might include empty sets, single-item sets, or negative numbers. Bonus: mention unit tests!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Don't be boring.&lt;/strong&gt; Some interviewers won't care about these cleanup steps. If you're unsure, say something like, "Then I'd usually check the code against some edge cases—should we do that next?"&lt;/p&gt;

&lt;h2&gt;
  
  
  Practice.
&lt;/h2&gt;

&lt;p&gt;In the end, there's no substitute for running practice questions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Actually write code with pen and paper.&lt;/strong&gt; Be honest with yourself. It'll probably feel awkward at first. Good. You want to get over that awkwardness now so you're not fumbling when it's time for the real interview.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.interviewcake.com/all-questions?utm_source=dev"&gt;Interview Cake's practice questions&lt;/a&gt; mirror the interview process by offering hints when you're stuck and nudges if your algorithm could be improved.&lt;/p&gt;

</description>
      <category>career</category>
      <category>interviewing</category>
      <category>interview</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Why you're hitting dead ends in whiteboard interviews</title>
      <dc:creator>Parker Phinney</dc:creator>
      <pubDate>Mon, 14 May 2018 18:05:40 +0000</pubDate>
      <link>https://dev.to/interviewcake/why-youre-hitting-dead-ends-in-whiteboard-interviews-23e1</link>
      <guid>https://dev.to/interviewcake/why-youre-hitting-dead-ends-in-whiteboard-interviews-23e1</guid>
      <description>&lt;h2&gt;
  
  
  Listening vs. holding your train of thought
&lt;/h2&gt;

&lt;p&gt;Finally! After a while of shooting in the dark and frantically fiddling with sample inputs on the whiteboard, you've came up with an algorithm for solving the coding question your interviewer gave you.&lt;/p&gt;

&lt;p&gt;Whew. Such a relief to have a clear path forward. To not be flailing anymore.&lt;/p&gt;

&lt;p&gt;Now you're cruising, getting ready to code up your solution.&lt;/p&gt;

&lt;p&gt;When suddenly, your interviewer throws you a curve ball.&lt;/p&gt;

&lt;p&gt;"What if we thought of the problem this way?"&lt;/p&gt;

&lt;p&gt;You feel a tension we've all felt during the coding interview:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;"Try to listen to what they're saying...but don't lose your train of thought...ugh, I can't do both!"&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This is a make-or-break moment in the coding interview. And so many people get it wrong.&lt;/p&gt;

&lt;p&gt;Most candidates end up only half understanding what their interviewer is saying. Because they're only half listening. Because they're desperately clinging to their train of thought.&lt;/p&gt;

&lt;p&gt;And it's easy to see why. For many of us, completely losing track of what we're doing is one of our &lt;em&gt;biggest&lt;/em&gt; coding interview fears. So we devote half of our mental energy to clinging to our train of thought.&lt;/p&gt;

&lt;p&gt;To understand why that's so wrong, we need to understand the difference between what &lt;em&gt;we&lt;/em&gt; see during the coding interview and what &lt;em&gt;our interviewer&lt;/em&gt; sees.&lt;/p&gt;

&lt;h2&gt;
  
  
  The programming interview maze
&lt;/h2&gt;

&lt;p&gt;Working on a coding interview question is like walking through a giant maze.&lt;/p&gt;

&lt;p&gt;You don't know anything about the shape of the maze until you start wandering around it. You might know vaguely where the solution is, but you don't know how to get there.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Ffog_of_war__maze_start.svg%3Fbust%3D170" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Ffog_of_war__maze_start.svg%3Fbust%3D170" alt="A maze with a mouse at one corner labeled "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As you wander through the maze, you might find a promising path (an approach, a way to break down the problem). You might follow that path for a bit.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Ffog_of_war__maze_first_path.svg%3Fbust%3D170" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Ffog_of_war__maze_first_path.svg%3Fbust%3D170" alt="The same maze with the mouse further along, nearing the cheese."&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Suddenly, your interviewer suggests a different path:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Ffog_of_war__maze_new_path.svg%3Fbust%3D170" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Ffog_of_war__maze_new_path.svg%3Fbust%3D170" alt="Now the mouse has turned around in the same spot, and an arrow points the mouse back towards the beginning of the maze to a new path."&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;But from what you can see so far of the maze, your approach has already gotten you halfway there! Losing your place on your current path would mean a huge step backwards. Or so it seems.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;That's&lt;/em&gt; why people hold onto their train of thought instead of listening to their interviewer. Because from what they can see, it looks like they're getting somewhere!&lt;/p&gt;

&lt;p&gt;But here's the thing: &lt;strong&gt;your interviewer knows the whole maze&lt;/strong&gt;. They've asked this question 100 times.&lt;/p&gt;

&lt;p&gt;I'm not exaggerating: if you interview candidates for a year, you can easily end up asking the same question over 100 times.&lt;/p&gt;

&lt;p&gt;So if your interviewer is suggesting a certain path, you can bet it leads to an answer.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Ffog_of_war__maze_completed.svg%3Fbust%3D170" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Ffog_of_war__maze_completed.svg%3Fbust%3D170" alt="Following the new path, the mouse has made it to the cheese at the end of the maze."&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And your seemingly great path? There's probably a dead end just ahead that you haven't seen yet:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Ffog_of_war__maze_dead_end.svg%3Fbust%3D170" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Ffog_of_war__maze_dead_end.svg%3Fbust%3D170" alt="Now the entirety of the maze is revealed, showing that the mouse's original path through the maze lead to a dead end."&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Or it could just be a much longer route to a solution than you think it is. That actually happens pretty often—there's an answer there, but it's more complicated than you think.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Ffog_of_war__maze_complicated_path.svg%3Fbust%3D170" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Ffog_of_war__maze_complicated_path.svg%3Fbust%3D170" alt="Again the maze is revealed, showing an alternate scenario in which the mouse's original path eventually lead to the cheese but in a much more complicated way."&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Hitting a dead end is okay. Failing to listen is not.
&lt;/h2&gt;

&lt;p&gt;Your interviewer probably won't &lt;em&gt;fault&lt;/em&gt; you for going down the wrong path at first. They've seen really smart engineers do the same thing. They understand it's because you only have a partial view of the maze.&lt;/p&gt;

&lt;p&gt;They might have let you go down the wrong path for a bit to see if you could keep your thinking organized without help. But now they want to rush you through the part where you discover the dead end and double back. Not because they don't believe you can manage it yourself. But because they want to make sure you have enough time to finish the question.&lt;/p&gt;

&lt;p&gt;But here's something they &lt;em&gt;will&lt;/em&gt; fault you for: failing to listen to them. Nobody wants to work with an engineer who doesn't listen.&lt;/p&gt;

&lt;p&gt;So when you find yourself in that crucial coding interview moment, when you're torn between holding your train of thought and considering the idea your interviewer is suggesting...remember this:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Listening to your interviewer is the &lt;em&gt;most&lt;/em&gt; important thing.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Take what they're saying and run with it. Think of the next steps that follow from what they're saying.&lt;/p&gt;

&lt;p&gt;Even if it means completely leaving behind the path you were on. Trust the route your interviewer is pointing you down.&lt;/p&gt;

&lt;p&gt;Because they can see the whole maze.&lt;/p&gt;




&lt;h2&gt;
  
  
  Get the free coding interview crash course
&lt;/h2&gt;

&lt;p&gt;Don't leave your interviews to chance. I'll teach you the underlying patterns behind the clever algorithms you'll need to come up with during tricky coding interview questions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.interviewcake.com/free-coding-interview-crash-course?utm_source=dev" rel="noopener noreferrer"&gt;Send me coding interview tips »&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




</description>
      <category>career</category>
      <category>interviewing</category>
      <category>interview</category>
      <category>beginners</category>
    </item>
    <item>
      <title>How to get the most out of your coding interview practice sessions</title>
      <dc:creator>Parker Phinney</dc:creator>
      <pubDate>Mon, 23 Apr 2018 18:14:05 +0000</pubDate>
      <link>https://dev.to/interviewcake/how-to-get-the-most-out-of-your-coding-interview-practice-sessions-733</link>
      <guid>https://dev.to/interviewcake/how-to-get-the-most-out-of-your-coding-interview-practice-sessions-733</guid>
      <description>&lt;p&gt;When you start practicing for coding interviews, there’s a lot to cover. You’ll naturally wanna brush up on technical questions. But &lt;em&gt;how&lt;/em&gt; you practice those questions will make a big difference in how well you’re prepared.&lt;/p&gt;

&lt;p&gt;Here’re a few tips to make sure you get the most out of your practice sessions.&lt;/p&gt;

&lt;h2&gt;
  
  
  Track your weak spots
&lt;/h2&gt;

&lt;p&gt;One of the hardest parts of practicing is knowing &lt;em&gt;what&lt;/em&gt; to practice. Tracking what you struggle with helps answer that question.&lt;/p&gt;

&lt;p&gt;So grab a fresh notebook. After each question, look back and ask yourself, “What did I get wrong about this problem at first?” Take the time to write down one or two things you got stuck on, and what helped you figure them out. Compare these notes to our &lt;a href="https://www.interviewcake.com/article/unstuck?utm_source=dev"&gt;tips for getting unstuck&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;After each full practice session, read through your &lt;em&gt;entire&lt;/em&gt; running list. Read it at the beginning of each practice session too. This’ll add a nice layer of rigor to your practice, so you’re really internalizing the lessons you’re learning.&lt;/p&gt;

&lt;h2&gt;
  
  
  Use an actual whiteboard
&lt;/h2&gt;

&lt;p&gt;Coding on a whiteboard is awkward at first. You have to write out every single character, and you can’t easily insert or delete blocks of code.&lt;/p&gt;

&lt;p&gt;Use your practice sessions to iron out that awkwardness. Run a few problems on a piece of paper or, if you can, a real whiteboard. A few helpful tips for handwriting code:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Start in the top-left corner.&lt;/strong&gt; You want all the room you can get.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Leave blank space between each line of code&lt;/strong&gt;. This makes it &lt;em&gt;much&lt;/em&gt; easier to add things later.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Slow down.&lt;/strong&gt; Take an extra second to think of descriptive variable names. You might be tempted to move faster by using short variable names, but that actually ends up costing &lt;em&gt;more&lt;/em&gt; time. It’ll make your code harder to debug!&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Set a timer
&lt;/h2&gt;

&lt;p&gt;Get a feel for the time pressure of an actual interview. You should be able to finish a problem in 30–45 minutes, including debugging your code at the end.&lt;/p&gt;

&lt;p&gt;If you’re just starting out and the timer adds too much stress, put this technique on the shelf. Add it in later as you start to get more comfortable with solving problems.&lt;/p&gt;

&lt;h2&gt;
  
  
  Think out loud
&lt;/h2&gt;

&lt;p&gt;Like writing code on a whiteboard, this is an acquired skill. It feels awkward at first. But your interviewer will expect you to think out loud during the interview, so you gotta power through that awkwardness.&lt;/p&gt;

&lt;p&gt;A good trick to get used to talking out loud: &lt;strong&gt;Grab a buddy.&lt;/strong&gt; Another engineer would be great, but you can also do this with a non-technical friend.&lt;/p&gt;

&lt;p&gt;Have your buddy sit-in while you talk through a problem. Better yet—try loading up one of our questions on an iPad and giving that to your buddy to use as a script!&lt;/p&gt;

&lt;h2&gt;
  
  
  Set aside a specific time of day to practice.
&lt;/h2&gt;

&lt;p&gt;Give yourself an hour each day to practice. Commit to practicing around the same time, like after you eat dinner. This helps you form a stickier habit of practicing.&lt;/p&gt;

&lt;p&gt;Prefer small, daily doses of practice to doing big cram sessions every once in a while. Distributing your practice sessions helps you learn more with &lt;a href="https://www.aft.org/periodical/american-educator/summer-2002/ask-cognitive-scientist"&gt;less time and effort in the long run&lt;/a&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Get the free coding interview crash course
&lt;/h2&gt;

&lt;p&gt;Don't leave your interviews to chance. I'll teach you the underlying patterns behind the clever algorithms you'll need to come up with during tricky coding interview questions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.interviewcake.com/free-coding-interview-crash-course?utm_source=dev"&gt;Send me coding interview tips »&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




</description>
      <category>interviewing</category>
      <category>career</category>
      <category>beginners</category>
    </item>
    <item>
      <title>How to structure your coding interview timeline</title>
      <dc:creator>Parker Phinney</dc:creator>
      <pubDate>Fri, 13 Apr 2018 18:19:35 +0000</pubDate>
      <link>https://dev.to/interviewcake/how-to-structure-your-coding-interview-timeline-2aea</link>
      <guid>https://dev.to/interviewcake/how-to-structure-your-coding-interview-timeline-2aea</guid>
      <description>&lt;h2&gt;
  
  
  The exploding offer dilemma
&lt;/h2&gt;

&lt;p&gt;Here’s the situation you wanna avoid: You’ve just started interviewing with a company you're really excited about. Another company you've been talking to for a while sends you an “exploding offer”—an offer that expires in a week or even 24 hours. You have to respond to the exploding offer before your final round of interviews at the first company.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;You don’t wanna have to decide between a real offer and a potential offer.&lt;/strong&gt; Either decision has a big downside:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  If you accept the offer in front of you, you’re moving forward with a nagging “What if?”—especially if you were excited about the other company.&lt;/li&gt;
&lt;li&gt;  If you reject the real offer, it's possible the other company won't end up extending you an offer in the end. You could end up with nothing.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It's also bad for negotiation. The best way to get negotiating leverage with one company is to have an offer from another company. If your offers aren't open at the same time, you lose that leverage.&lt;/p&gt;

&lt;h2&gt;
  
  
  Work backwards from a signing date
&lt;/h2&gt;

&lt;p&gt;So you want to do everything you can to ensure your offers come in at the same time. But how do you do that? The key is to work backwards:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pick a "signing date" and stick to it.&lt;/strong&gt; This is the date that you plan to make a final decision and sign an offer. This includes some allowed time for &lt;em&gt;negotiating&lt;/em&gt; once you have all your offers in hand (more on that later).&lt;/p&gt;

&lt;p&gt;Share your chosen signing date with every company as soon as you start talking to them. You may even want to ask them to &lt;em&gt;confirm&lt;/em&gt; that they'll be able to work with your timeline. This way a company is much less likely to give you an offer that explodes before that date—they already know your timeline, so if they can't work with it they should tell you up front.&lt;/p&gt;

&lt;p&gt;What if a company &lt;em&gt;does&lt;/em&gt; give you an offer that explodes before your signing date, even though you told them about it early on? Don't panic. Politely remind them that you've been clear about your timeline from the beginning. Explain that you'd like to make your final decision on the date you've already shared with them.&lt;/p&gt;

&lt;p&gt;If they still won't budge, you might be better off passing on that company—if they're comfortable squeezing you this early on in your relationship, that's a bad sign for how they'd treat you as an employee.&lt;/p&gt;

&lt;p&gt;Now, some companies have policies about not having open offers for more than X days. So what if you're going through the interview process with one of those companies and it looks like you're moving too fast and the offer would come in too early and explode before the signing date you chose?&lt;/p&gt;

&lt;p&gt;No problem. Most companies are happy to "pause" or slow down your interview process so the offer comes in later. This way both parties can get what they want: the company can follow their usual "offers explode after X days" policy, and you can have the offer still open on your pre-planned signing date.&lt;/p&gt;

&lt;h2&gt;
  
  
  How far out should my signing date be?
&lt;/h2&gt;

&lt;p&gt;It depends. At a high level, you should &lt;strong&gt;allow as much time as you can afford to&lt;/strong&gt;. Most people underestimate how long their job search is going to take. And when you end up in a time crunch at the end, it means less time at the negotiation stage. So allowing an extra week for your job search could literally mean earning tens of thousands of dollars more in your final salary.&lt;/p&gt;

&lt;p&gt;If you have a current job or are a full-time student, try to allow more time by starting the process earlier.&lt;/p&gt;

&lt;p&gt;Of course, some of us will be in situations where we really need to start our new job as soon as possible. That's fine. Do what works for you.&lt;/p&gt;

&lt;p&gt;Keep in mind that you’re shooting for having enough time to practice and get through the &lt;a href="https://www.interviewcake.com/interview-process-at-tech-companies?utm_source=dev"&gt;whole interview process&lt;/a&gt; with multiple companies if you can. Think through how much time you can devote to each of these steps:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  Studying (1–8 weeks)&lt;/li&gt;
&lt;li&gt;  Phone screens (1–3 weeks)&lt;/li&gt;
&lt;li&gt;  Onsites (1–3 weeks)&lt;/li&gt;
&lt;li&gt;  Negotiation (1–2 weeks)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One more consideration: if you have the means, &lt;strong&gt;consider leaving yourself some time for a vacation before starting your new job&lt;/strong&gt;. Job hunting is stressful. And that window of time between signing a new offer and starting a new job can be a rare window of low stress and low responsibility in your life.&lt;/p&gt;

&lt;p&gt;Many companies are happy to accommodate this by setting your start date a few weeks after your signing date—just ask. Many offers include a signing bonus, which could help offset the cost of this extra time without a salary. But again, this'll depend on your means—not everyone can afford to take this extra time off.&lt;/p&gt;

&lt;h2&gt;
  
  
  Cast A Wide Net
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Interview with multiple companies.&lt;/strong&gt; Exactly how many companies depends on your situation, but the point is to avoid putting all your eggs in one basket. You want multiple offers by the end, so you can negotiate the best offer possible.&lt;/p&gt;

&lt;p&gt;A good rule of thumb: send out applications to more places than you’re currently planning. If you end up getting too many interviews…well that’s a good problem to have! You can always "pause" or simply cancel the interview process with some companies.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Schedule your favorite companies last.&lt;/strong&gt; Get interview practice with the places you aren’t as excited about. You’ll be in your prime by the time you interview with your top choices, so long as you don’t burn out.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Jot down your impressions after each interview.&lt;/strong&gt; You’ll be surprised how much different companies can start to melt together after a couple weeks of interviewing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Avoid Burnout
&lt;/h2&gt;

&lt;p&gt;If you’re casting a wide net and allowing several weeks for your job search, you need to be careful about burnout. The interview process is a marathon, not a sprint.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Space out your onsites.&lt;/strong&gt; Onsites are draining. Try to keep at least a two day buffer between them—one day to recover after your last onsite, and &lt;a href="https://www.interviewcake.com/24-hours-before-onsite-whiteboard-coding-interview?utm_source=dev"&gt;one day to get ready for the next&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Don’t travel too much.&lt;/strong&gt; You can quickly burn yourself out bopping across the country. When you have to travel for an interview, try to wait a few days before you travel again.&lt;/p&gt;

&lt;p&gt;Batch interviews that are in cities you have to fly to. Try to avoid flying to the same city multiple times—though sometimes traveling to the same place twice is better than trying to cram three or more onsites into a short span of time.&lt;/p&gt;




&lt;h2&gt;
  
  
  Get the free coding interview crash course
&lt;/h2&gt;

&lt;p&gt;Don't leave your interviews to chance. I'll teach you the underlying patterns behind the clever algorithms you'll need to come up with during tricky coding interview questions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.interviewcake.com/free-coding-interview-crash-course?utm_source=dev"&gt;Send me coding interview tips »&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




</description>
      <category>interviewing</category>
      <category>career</category>
      <category>computerscience</category>
    </item>
    <item>
      <title>The coding bootcamp student's guide to beating the technical interview</title>
      <dc:creator>Parker Phinney</dc:creator>
      <pubDate>Tue, 03 Apr 2018 20:40:35 +0000</pubDate>
      <link>https://dev.to/interviewcake/the-coding-bootcamp-students-guide-to-beating-the-technical-interview-29ap</link>
      <guid>https://dev.to/interviewcake/the-coding-bootcamp-students-guide-to-beating-the-technical-interview-29ap</guid>
      <description>&lt;p&gt;Interviewing for a software developer role is different from interviewing for other jobs. There's a &lt;a href="https://www.interviewcake.com/interview-process-at-tech-companies?utm_source=dev"&gt;particular interview process&lt;/a&gt;, involving technical phone screens and onsite whiteboard coding interviews.&lt;/p&gt;

&lt;p&gt;You'll be asked to write code on the spot. Code that not only gets the correct answer, but also &lt;em&gt;runs efficiently&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;This may sound daunting, but the coding interview is a &lt;em&gt;learnable&lt;/em&gt; skill. Just follow this guide.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;1. Learn coding interview strategy&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;The key to being able to solve tricky coding interview questions is using a specific process and sticking to it:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;Brainstorm and design your algorithm by manipulating sample inputs by hand on the whiteboard&lt;/strong&gt;. Don't start writing code until you know how your algorithm will work.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Once you have an answer, code it up as quickly as possible&lt;/strong&gt;. Don't get caught up in details like, "should this be a '&amp;lt;' or a '&amp;lt;='?" Just leave a mark in the margin to come back later, and move on. Don't start debugging it until it's all written out.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Walk through your solution by hand, out loud, with an example input.&lt;/strong&gt; Fix any bugs you find along the way.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The important lesson here is to never skip ahead. Only move on to the next step after finishing the last step. This keeps your thinking more organized, makes it easier for your interviewer to follow what you're doing, helps you avoid mistakes, and ultimately makes you move faster.&lt;/p&gt;

&lt;p&gt;More coding interview strategy:&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://www.interviewcake.com/coding-interview-tips?utm_source=dev"&gt;Coding interview tips »&lt;/a&gt;
&lt;/h3&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://www.interviewcake.com/tricks-for-getting-unstuck-programming-interview?utm_source=dev"&gt;Tricks for getting unstuck during a coding interview »&lt;/a&gt;
&lt;/h3&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://www.interviewcake.com/why-youre-hitting-dead-ends-in-whiteboard-interviews?utm_source=dev"&gt;Why you hit dead ends, and why that's okay »&lt;/a&gt;
&lt;/h3&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;2. Get comfortable with data structures and algorithms&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;This is something coding boot camp students really struggle with. They try to sidestep the issue entirely, hoping it won't come up. But it inevitably does.&lt;/p&gt;

&lt;p&gt;The good news is you can pick this stuff up pretty quickly. Yes, it's new. And yes, some of it involves a little math. But it comes together more quickly than you think it will. With a few hours of reading, you can give yourself a solid foundation.&lt;/p&gt;

&lt;p&gt;Some stuff you should know:&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://www.interviewcake.com/big-o-notation-time-and-space-complexity?utm_source=dev"&gt;Big O notation »&lt;/a&gt;
&lt;/h3&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://www.interviewcake.com/article/data-structures-computer-science?utm_source=dev"&gt;Data structures »&lt;/a&gt;
&lt;/h3&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://www.interviewcake.com/article/logarithms?utm_source=dev"&gt;Logarithms »&lt;/a&gt;
&lt;/h3&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://www.interviewcake.com/glossary?utm_source=dev"&gt;Coding interview glossary »&lt;/a&gt;
&lt;/h3&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;3. Conquer your impostor syndrome&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;This is a common issue for coding bootcamp graduates. They worry that they're not "real engineers."&lt;/p&gt;

&lt;p&gt;Would it surprise you to learn that new graduates from four-year computer science programs feel the same way? It's true!&lt;/p&gt;

&lt;p&gt;In the same way that &lt;em&gt;you&lt;/em&gt; feel like you're not a real engineer because you're weak on the theoretical and mathy stuff, computer science majors feel like they're not real engineers because they're weak on modern software development practices, tools, and frameworks. Many of them don't know the first thing about making a webpage.&lt;/p&gt;

&lt;p&gt;The point is, we &lt;em&gt;all&lt;/em&gt; have weak points and gaps in our knowledge.&lt;/p&gt;

&lt;p&gt;Read more:&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://www.interviewcake.com/impostor-syndrome-in-programming-interviews?utm_source=dev"&gt;Getting over impostor syndrome »&lt;/a&gt;
&lt;/h3&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;4. Run a &lt;em&gt;bunch&lt;/em&gt; of practice questions&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Your first 7 or 8 practice questions will involve lots of, "Whaaaat, how do you even &lt;em&gt;come up&lt;/em&gt; with something like that?" But after like 15 or 20 questions, seemingly all at once you'll start getting a lot of, "Oh wait, I can do something kinda like what I did for that other question!"&lt;/p&gt;

&lt;p&gt;You should probably practice more than you currently think you should. Most candidates don't practice enough. Don't be one of them.&lt;/p&gt;

&lt;p&gt;It's like exercise—you're not going to do it unless you make an explicit &lt;em&gt;plan&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;So pick a specific time each day for coding interview practice and put it on your calendar&lt;/strong&gt;. Try to do at least one practice question each day. Focus on not skipping a single day.&lt;/p&gt;

&lt;p&gt;Check out:&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://www.interviewcake.com/all-questions?utm_source=dev"&gt;Interview Cake's practice coding interview questions »&lt;/a&gt;
&lt;/h3&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://www.interviewcake.com/free-weekly-coding-interview-problem-newsletter?utm_source=dev"&gt;Get a free practice problem by email each week »&lt;/a&gt;
&lt;/h3&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://www.interviewcake.com/getting-the-most-from-coding-interview-practice-sessions?utm_source=dev"&gt;How to get the most out of your coding interview practice »&lt;/a&gt;
&lt;/h3&gt;

</description>
      <category>interviewing</category>
      <category>career</category>
      <category>computerscience</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Recognizing impostor syndrome and fixing it before it messes up your coding interview</title>
      <dc:creator>Parker Phinney</dc:creator>
      <pubDate>Tue, 20 Mar 2018 23:45:23 +0000</pubDate>
      <link>https://dev.to/interviewcake/recognizing-impostor-syndrome-and-fixing-it-before-it-messes-up-your-coding-interview-2j12</link>
      <guid>https://dev.to/interviewcake/recognizing-impostor-syndrome-and-fixing-it-before-it-messes-up-your-coding-interview-2j12</guid>
      <description>&lt;p&gt;&lt;em&gt;“It's a fluke that I got this job interview...”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;“I studied for weeks, but I’m still not prepared...”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;“I’m not actually good at this. They’re going to see right through me...”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;If any of these thoughts resonate with you, you're not alone. They are so common they have a name: impostor syndrome.&lt;/p&gt;

&lt;p&gt;It’s that feeling like you’re on the verge of being exposed for what you really are—an impostor. A fraud.&lt;/p&gt;

&lt;p&gt;Impostor syndrome is like kryptonite to coding interviews. It makes you give up and go silent.&lt;/p&gt;

&lt;p&gt;You might stop asking clarifying questions because you’re afraid they’ll sound too basic. Or you might neglect to think out loud at the whiteboard, fearing you’ll say something wrong and sound incompetent.&lt;/p&gt;

&lt;p&gt;You know you should speak up, but the fear of looking like an impostor makes that really, really hard.&lt;/p&gt;

&lt;p&gt;Here’s the good news: you’re not an impostor. You just feel like an impostor because of some common cognitive biases about learning and knowledge.&lt;/p&gt;

&lt;p&gt;Once you understand these cognitive biases—where they come from and how they work—you can slowly fix them. You can quiet your worries about being an impostor and keep those negative thoughts from affecting your interviews.&lt;/p&gt;

&lt;h1&gt;
  
  
  Everything you could know
&lt;/h1&gt;

&lt;p&gt;Here’s how impostor syndrome works.&lt;/p&gt;

&lt;p&gt;Software engineering is a massive field. There’s a huge universe of things you could know. Huge.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Fimposter_syndrome__everything_you_could_know.svg%3Fbust%3D500" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Fimposter_syndrome__everything_you_could_know.svg%3Fbust%3D500" title="Everything you could know" alt="Everything you could know"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In comparison to the vast world of things you could know, the stuff you actually know is just a tiny sliver:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Fimposter_syndrome__everything_you_do_know.svg%3Fbust%3D500" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Fimposter_syndrome__everything_you_do_know.svg%3Fbust%3D500" title="Everything you do know" alt="Everything you do know"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;That’s the first problem. It feels like you don’t really know that much, because you only know a tiny sliver of all the stuff there is to know.&lt;/p&gt;

&lt;h1&gt;
  
  
  The expanding universe
&lt;/h1&gt;

&lt;p&gt;It gets worse: counterintuitively, as you learn more, your sliver of knowledge feels like it's shrinking.&lt;/p&gt;

&lt;p&gt;That's because you brush up against more and more things you don’t know yet. Whole disciplines like machine learning, theory of computation, and embedded systems. Things you can't just pick up in an afternoon. Heavy bodies of knowledge that take months to understand.&lt;/p&gt;

&lt;p&gt;So the universe of things you could know seems to keep expanding faster and faster—much faster than your tiny sliver of knowledge is growing. It feels like you'll never be able to keep up.&lt;/p&gt;

&lt;h1&gt;
  
  
  What everyone else knows
&lt;/h1&gt;

&lt;p&gt;Here's another common cognitive bias: we assume that because something is easy for us, it must be easy for everyone else. So when we look at our own skills, we assume they're not unique. But when we look at other people's skills, we notice the skills they have that we don't have.&lt;/p&gt;

&lt;p&gt;The result? We think everyone’s knowledge is a superset of our own:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Fimposter_syndrome__everything_they_know.svg%3Fbust%3D165" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Fimposter_syndrome__everything_they_know.svg%3Fbust%3D165" title="Everyone's knowledge is a superset of your own" alt="Everyone's knowledge is a superset of your own"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This makes us feel like everyone else is ahead of us. Like we're always a step behind.&lt;/p&gt;

&lt;p&gt;But the truth is more like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Fimposter_syndrome__venn_diagram.svg%3Fbust%3D165" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.interviewcake.com%2Fimages%2Fsvgs%2Fimposter_syndrome__venn_diagram.svg%3Fbust%3D165" title="Your knowledge and other people's knowledge form a venn diagram" alt="Your knowledge and other people's knowledge form a venn diagram"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There's a whole area of stuff you know that neither Aysha nor Bruno know. An area you're probably blind to, because you're so focused on the stuff you don't know.&lt;/p&gt;

&lt;p&gt;We’ve all had flashes of realizing this. For me, it was seeing the back end code wizard on my team—the one that always made me feel like an impostor—spend an hour trying to center an image on a webpage.&lt;/p&gt;

&lt;h1&gt;
  
  
  It's a problem of focus
&lt;/h1&gt;

&lt;p&gt;Focusing on what you don't know causes you to underestimate what you do know. And that's what causes impostor syndrome.&lt;/p&gt;

&lt;p&gt;By looking at the vast (and expanding) universe of things you could know, you feel like you hardly know anything.&lt;/p&gt;

&lt;p&gt;And by looking at what Aysha and Bruno know that you don't know, you feel like you're a step behind.&lt;/p&gt;

&lt;p&gt;And interviews make you really focus on what you don't know. You focus on what could go wrong. The knowledge gaps your interviewers might find. The questions you might not know how to answer.&lt;/p&gt;

&lt;p&gt;But remember:&lt;/p&gt;

&lt;p&gt;Just because Aysha and Bruno know some things you don't know, doesn't mean you don't also know things Aysha and Bruno don't know.&lt;/p&gt;

&lt;p&gt;And more importantly, everyone's body of knowledge is just a teeny-tiny sliver of everything they could learn. We all have gaps in our knowledge. We all have interview questions we won't be able to answer.&lt;/p&gt;

&lt;p&gt;You're not a step behind. You just have a lot of stuff you don't know yet. Just like everyone else.&lt;/p&gt;




&lt;h4&gt;
  
  
  Get the free coding interview crash course
&lt;/h4&gt;

&lt;p&gt;Don't leave your interviews to chance. We'll teach you the underlying patterns behind the clever algorithms you'll need to come up with during tricky coding interview questions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.interviewcake.com/free-coding-interview-crash-course?utm_source=dev" rel="noopener noreferrer"&gt;Send me coding interview tips »&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




</description>
      <category>interviewing</category>
      <category>career</category>
      <category>computerscience</category>
    </item>
  </channel>
</rss>
