Slide 1

Slide 1 text

Welcome to Week 1! Make sure you’re muted Turn on your webcam! Feel free to talk in the room chat CodePath Intermediate Software Engineering

Slide 2

Slide 2 text

• Intros • Why study programming problems? • Goals • Breakout sessions - meet your pod! • Top 5 coding interview mistakes
 and how to avoid them • Free form Q&A! Agenda

Slide 3

Slide 3 text

Intros!

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

Coding Interviews are difficult

Slide 9

Slide 9 text

Coding Interviews are difficult Like most things in life, 
 luck plays a big factor

Slide 10

Slide 10 text

Coding Interviews are difficult Like most things in life, 
 luck plays a big factor Luck is when preparation meets opportunity

Slide 11

Slide 11 text

Goals for the course

Slide 12

Slide 12 text

Goals for the course • Be able to go into phone screens with confidence

Slide 13

Slide 13 text

Goals for the course • Be able to go into phone screens with confidence • Most questions follow the same pattern! • The key is repeated practice
 


Slide 14

Slide 14 text

Goals for the course • Be able to go into phone screens with confidence • Most questions follow the same pattern! • The key is repeated practice
 
 • Learn more about the tech industry

Slide 15

Slide 15 text

Goals for the course • Be able to go into phone screens with confidence • Most questions follow the same pattern! • The key is repeated practice
 
 • Learn more about the tech industry • Land an internship -> key to full time offer

Slide 16

Slide 16 text

How are we going to work towards the goal?

Slide 17

Slide 17 text

How are we going to work towards the goal? • Lectures to reinforce concepts and walkthrough techniques

Slide 18

Slide 18 text

How are we going to work towards the goal? • Lectures to reinforce concepts and walkthrough techniques • In class exercises for hands-on practice

Slide 19

Slide 19 text

How are we going to work towards the goal? • Lectures to reinforce concepts and walkthrough techniques • In class exercises for hands-on practice • Extra practice problems and review materials to help you fill potential gaps

Slide 20

Slide 20 text

How are we going to work towards the goal? • Lectures to reinforce concepts and walkthrough techniques • In class exercises for hands-on practice • Extra practice problems and review materials to help you fill potential gaps • Weekly HackerRank assessments to keep yourself on track

Slide 21

Slide 21 text

How are we going to work towards the goal? • Lectures to reinforce concepts and walkthrough techniques • In class exercises for hands-on practice • Extra practice problems and review materials to help you fill potential gaps • Weekly HackerRank assessments to keep yourself on track • Mentors, fellow classmates, instructors for help and support

Slide 22

Slide 22 text

What is your personal goal for the next 12 weeks?

Slide 23

Slide 23 text

Questions?

Slide 24

Slide 24 text

Expectations Attend weekly sessions
 Tuesday @ 6pm PST, Saturday @ 10am PST Complete weekly HackerRank test
 *linked in course portal every week Optional resources: extra reading and practice problems

Slide 25

Slide 25 text

https://courses.codepath.com/courses/ intermediate_software_eng Course Portal

Slide 26

Slide 26 text

Course Portal

Slide 27

Slide 27 text

Course Portal

Slide 28

Slide 28 text

Course Portal

Slide 29

Slide 29 text

Course Portal

Slide 30

Slide 30 text

Questions /
 Comments?

Slide 31

Slide 31 text

Pods / Teams

Slide 32

Slide 32 text

Pods / Teams • 5-6 students per team • This is the group you’ll be working with for the next 12 weeks • Help support each other throughout the course!

Slide 33

Slide 33 text

Mentors • This year we’ve recruited 50 mentors to help guide and support you through the course!

Slide 34

Slide 34 text

Mentors • This year we’ve recruited 50 mentors to help guide and support you through the course! • Mentors are industry experts working in tech

Slide 35

Slide 35 text

Mentors • This year we’ve recruited 50 mentors to help guide and support you through the course! • Mentors are industry experts working in tech • Each mentor is paired with a pod through the 12 weeks

Slide 36

Slide 36 text

Mentors • This year we’ve recruited 50 mentors to help guide and support you through the course! • Mentors are industry experts working in tech • Each mentor is paired with a pod through the 12 weeks • Will be in breakout rooms with you on Saturdays to help mentor and guide you through exercises

Slide 37

Slide 37 text

In class exercises

Slide 38

Slide 38 text

In class exercises • Break out into small groups of 5-6 • Work on problems together for the topic of the week • Great practice for phone interviews!

Slide 39

Slide 39 text

Our first in class exercise!

Slide 40

Slide 40 text

Our first in class exercise! • Most common interview question: “Tell me a little about yourself”

Slide 41

Slide 41 text

Our first in class exercise! In a moment, we’re all going to into small groups with our pods

Slide 42

Slide 42 text

Our first in class exercise! In a moment, we’re all going to into small groups with our pods Start by having everybody introduce themselves in alphabetical order

Slide 43

Slide 43 text

Our first in class exercise! In a moment, we’re all going to into small groups with our pods Start by having everybody introduce themselves in alphabetical order Take 5 minutes to prep for your answer (guidance in course portal). Your ‘spiel’ should be ~3 minutes

Slide 44

Slide 44 text

Our first in class exercise! In a moment, we’re all going to into small groups with our pods Start by having everybody introduce themselves in alphabetical order Take 5 minutes to prep for your answer (guidance in course portal). Your ‘spiel’ should be ~3 minutes Take turns answering the question, jot down notes if you’re not the one speaking

Slide 45

Slide 45 text

Our first in class exercise! In a moment, we’re all going to into small groups with our pods Start by having everybody introduce themselves in alphabetical order Take 5 minutes to prep for your answer (guidance in course portal). Your ‘spiel’ should be ~3 minutes Take turns answering the question, jot down notes if you’re not the one speaking Once everyone is done, get some feedback!

Slide 46

Slide 46 text

No content

Slide 47

Slide 47 text

Common Mistakes

Slide 48

Slide 48 text

Common Mistakes • Not mentioning why you’re interested in the role / company

Slide 49

Slide 49 text

Common Mistakes • Not mentioning why you’re interested in the role / company • Only talking about things that’s already on your resume

Slide 50

Slide 50 text

Common Mistakes • Not mentioning why you’re interested in the role / company • Only talking about things that’s already on your resume • Not showing enthusiasm

Slide 51

Slide 51 text

Common Mistakes • Not mentioning why you’re interested in the role / company • Only talking about things that’s already on your resume • Not showing enthusiasm • Not knowing about the company / role you’re interviewing for

Slide 52

Slide 52 text

No content

Slide 53

Slide 53 text

Great things to talk about • Interesting focuses / projects from past companies • Passion projects • Why you’re interested in the company • Specialities you’re interested in (Mobile, Machine Learning, …)

Slide 54

Slide 54 text

Ready for our first breakout rooms?

Slide 55

Slide 55 text

How’d it go?

Slide 56

Slide 56 text

The key to acing interviews

Slide 57

Slide 57 text

The myth: I have to get every problem correct in the most optimal way in the fastest time frame to pass

Slide 58

Slide 58 text

The myth: I have to get every problem correct in the most optimal way in the fastest time frame to pass Top Common interview mistakes:
 - not communicating with interviewer


Slide 59

Slide 59 text

The myth: I have to get every problem correct in the most optimal way in the fastest time frame to pass Top Common interview mistakes:
 - not communicating with interviewer
 - jumping to conclusions / solving the wrong problem


Slide 60

Slide 60 text

The myth: I have to get every problem correct in the most optimal way in the fastest time frame to pass Top Common interview mistakes:
 - not communicating with interviewer
 - jumping to conclusions / solving the wrong problem
 - doesn’t catch or can’t fix bugs


Slide 61

Slide 61 text

The myth: I have to get every problem correct in the most optimal way in the fastest time frame to pass Top Common interview mistakes:
 - not communicating with interviewer
 - jumping to conclusions / solving the wrong problem
 - doesn’t catch or can’t fix bugs
 - not discussing space / run time tradeoffs 


Slide 62

Slide 62 text

The myth: I have to get every problem correct in the most optimal way in the fastest time frame to pass Top Common interview mistakes:
 - not communicating with interviewer
 - jumping to conclusions / solving the wrong problem
 - doesn’t catch or can’t fix bugs
 - not discussing space / run time tradeoffs 
 - speed - interviewer wasn’t able to get a good signal

Slide 63

Slide 63 text

U M P I R E

Slide 64

Slide 64 text

Understand Match Plan Implement Review Evaluate

Slide 65

Slide 65 text

Understand 
 Understand what the interviewer is asking with clarifying questions and test cases

Slide 66

Slide 66 text

Understand 
 Understand what the interviewer is asking with clarifying questions and test cases State any assumptions you make 
 - is the input always sorted?
 - is the input guaranteed to satisfy x & y conditions?

Slide 67

Slide 67 text

Understand 
 Understand what the interviewer is asking with clarifying questions and test cases State any assumptions you make 
 - is the input always sorted?
 - is the input guaranteed to satisfy x & y conditions? Given… x input, do we expect y output?

Slide 68

Slide 68 text

Match 
 Does this problem match any common patterns we’ve seen? Which data structures / techniques can we use to simplify this problem?
 - can we use hash tables for easy lookup later?
 - would using stacks / queues be helpful?
 - should we use Depth First Search or Breadth First Search?

Slide 69

Slide 69 text

Plan 
 It’s easier to modify your solution before you write all the code

Slide 70

Slide 70 text

Plan 
 It’s easier to modify your solution before you write all the code Catch potential bugs before starting to write code

Slide 71

Slide 71 text

Plan 
 It’s easier to modify your solution before you write all the code Catch potential bugs before starting to write code Use diagrams and pseudocode to visualize how the problem will be solved

Slide 72

Slide 72 text

Plan 
 It’s easier to modify your solution before you write all the code Catch potential bugs before starting to write code Use diagrams and pseudocode to visualize how the problem will be solved Run through your approach with test cases to check that it works

Slide 73

Slide 73 text

Implement Code!

Slide 74

Slide 74 text

Review 
 Trace through your code with an input to check for the expected output Catch possible edge cases and off-by-one errors

Slide 75

Slide 75 text

Evaluate 
 Analyze the run time and space complexity of your solution Discuss tradeoffs that were made, or assumptions that were taken

Slide 76

Slide 76 text

Questions?

Slide 77

Slide 77 text

Next Session 
 Walk through a problem with UMPIRE approach Group exercise to try UMPIRE yourself!