Mastering the Software Engineering Interview

Product type

Mastering the Software Engineering Interview

Coursera (CC)
Logo Coursera (CC)
Provider rating: starstarstarstar_halfstar_border 7.2 Coursera (CC) has an average rating of 7.2 (out of 6 reviews)

Need more information? Get more details on the site of the provider.

Description

When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan

  • Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
  • Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.

About this course: You’ve hit a major milestone as a computer scientist and are becoming a capable programmer. You now know how to solve problems, write algorithms, and analyze solutions; and you have a wealth of tools (like data structures) at your disposal. You may now be ready for an internship or (possibly) an entry-level software engineering job. But can you land the internship/job? It depends in part on how well you can solve new technical problems and communicate during interviews. How can you get better at this? Practice! With the support of Google’s recruiting and engineering teams we’ve provided tips, examples, and practice opportunities in this course that may help you with a…

Read the complete description

Frequently asked questions

There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.

When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan

  • Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
  • Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.

About this course: You’ve hit a major milestone as a computer scientist and are becoming a capable programmer. You now know how to solve problems, write algorithms, and analyze solutions; and you have a wealth of tools (like data structures) at your disposal. You may now be ready for an internship or (possibly) an entry-level software engineering job. But can you land the internship/job? It depends in part on how well you can solve new technical problems and communicate during interviews. How can you get better at this? Practice! With the support of Google’s recruiting and engineering teams we’ve provided tips, examples, and practice opportunities in this course that may help you with a number of tech companies. We’ll assist you to organize into teams to practice. Lastly, we’ll give you basic job search advice, and tips for succeeding once you’re on the job.

Who is this class for: Undergraduates looking for a software engineering internship or full-time job. Professionals looking to make a career shift towards software engineering. Computer science enthusiasts looking to polish their technical communication skills. Anyone curious about what goes on in a technical interview, and how to use psychology and research to combat self-doubt and set yourself up for success.

Created by:  University of California, San Diego
  • Taught by:  Mia Minnes, Assistant Teaching Professor

    Computer Science and Engineering
  • Taught by:  Leo Porter, Assistant Teaching Professor

    Computer Science and Engineering
  • Taught by:  Christine Alvarado, Associate Teaching Professor

    Computer Science and Engineering
Basic Info Course 4 of 5 in the Object Oriented Java Programming: Data Structures and Beyond Specialization Level Intermediate Commitment 4 weeks of study, 2-4 hours/week Language English How To Pass Pass all graded assignments to complete the course. User Ratings 4.5 stars Average User Rating 4.5See what learners said Coursework

Each course is like an interactive textbook, featuring pre-recorded videos, quizzes and projects.

Help from your peers

Connect with thousands of other learners and debate ideas, discuss course material, and get help mastering concepts.

Certificates

Earn official recognition for your work, and share your success with friends, colleagues, and employers.

University of California, San Diego UC San Diego is an academic powerhouse and economic engine, recognized as one of the top 10 public universities by U.S. News and World Report. Innovation is central to who we are and what we do. Here, students learn that knowledge isn't just acquired in the classroom—life is their laboratory.

Syllabus


WEEK 1


Welcome & What is a Software Engineering Interview?



Welcome to our course on effectively communicating your technical abilities. This course focuses on landing a technical job and excelling in a technical role. To succeed in job interviews, you’ll need to be able to confidently articulate your ability to solve challenging problems and come up with new solutions under potentially stressful conditions. After getting a technical job, the role of communication increases even more. You’ll need to work with other members of the team, communicate technical challenges and successes, and potentially sell the value of your work to those outside the company. Our goal is that by the end of this course each and every one of you understands the importance of technical communication, and has received constructive feedback on areas of potential improvement. In achieving this goal you will also learn about algorithmic thinking on the fly, how to evaluate a good interview answer to a difficult technical problem, and how “soft” skills impact interview outcomes. In this module, we’ll begin to see what a technical interview looks like, from the perspective of a major tech company. We’ll then focus on how to best get the interview in the first place. If you're not in the job market right now, you might want to skim the videos in this module and skip ahead to the Resume Critique (for insights about how to present yourself in writing) or the Introductions assignment (on effectively presenting yourself in person).


15 videos, 6 readings, 4 practice quizzes expand


  1. Video: Course Introduction
  2. Reading: Prerequisites and how to get the most out of this course
  3. Video: Course Goals
  4. Video: Why Soft Skills?
  5. Video: Google engineers share their stories
  6. Reading: After completing this course, you will be able to...
  7. Reading: By the end of this week, you will be able to...
  8. Discussion Prompt: Introduction
  9. Practice Quiz: Where do you want to start?
  10. Video: The Application Process
  11. Video: Preparing for the Interview
  12. Reading: Interview prep resources
  13. Discussion Prompt: Recommended resources
  14. Video: Researching the Company
  15. Practice Quiz: Preparing for the interview
  16. Video: Effective Resumes
  17. Reading: Congratulations and quiz answers
  18. Video: Resume critique recap
  19. Video: People Involved
  20. Video: What is a technical phone screen or interview?
  21. Video: What Is an In-Person Interview?
  22. Video: When I struggled: Overcoming a tough interview experience
  23. Practice Quiz: Your experience
  24. Practice Quiz: Where do you want to go next?
  25. Video: The value of your introduction
  26. Video: Good and bad example introductions
  27. Discussion Prompt: Your recommendations
  28. Reading: Screen and video recording tips

Graded: Resume critique
Graded: Introductions
Graded: End of Week Quiz

WEEK 2


Live coding: the technical phone interview and beyond



Now that you’ve gotten warmed up, it’s time to practice your coding skills. One of the things you’ll almost certainly be asked to do during a technical phone interview is to code up a solution to a problem in a shared text document (e.g. Google doc) while you are on the phone with the interviewer. This experience can be intimidating, unfamiliar and humbling if you are not prepared, so this week we will give you lots of practice and tips for getting through this part of the interview with flying colors.


12 videos, 3 readings, 3 practice quizzes expand


  1. Video: Welcome and Introduction to Live Coding
  2. Reading: By the end of this week, you will be able to...
  3. Video: Cold Live Coding Assignment Walkthrough
  4. Practice Quiz: Your evaluation criteria
  5. Video: Sample demonstrating key pitfalls
  6. Video: Talking Through Processes
  7. Video: Getting Started
  8. Video: Getting Stuck and Recovering from Mistakes
  9. Video: Correctness and Testing
  10. Video: A Very Good Phone Interview
  11. Video: When I struggled: a first technical phone interview
  12. Reading: Resources for finding problems to practice with
  13. Video: Imposter Syndrome and Stereotype Threat
  14. Video: Growth mindset
  15. Video: Imposter Syndrome Gallery
  16. Practice Quiz: Imposter syndrome and growth mindset
  17. Reading: Growth Mindset and Stereotype Threat: Additional Information and Resources
  18. Practice Quiz: Live coding assignment, take 2

Graded: Cold Live Coding Assignment
Graded: Self-assessment
Graded: Live coding take 2, self assessment

WEEK 3


Explaining what you've already done



This week, we’re going to focus on how to speak about your experiences working on projects and how to speak about the technical problems you’ve experienced and how you’ve solved those problems. We’ll introduce the STAR (Situation, Task, Action, Results) model for presenting your work, and discuss how to and how not to present the problem you worked on and the solution you developed. We’ll also discuss the communication skills that are critical to this task. It’s a fun week with lots of examples (both good and bad), which ends with an assignment where you will present your own work on video and submit this video for peer review.


17 videos, 1 reading, 1 practice quiz expand


  1. Video: Welcome and Introduction to Personal Narrative
  2. Video: Sample Pitch, Broadly Technical
  3. Video: Sample Pitch, Non-Technical
  4. Video: Sample Pitch, Technical
  5. Video: Personal Narrative: Key Aspects
  6. Reading: By the end of this week, you will be able to...
  7. Practice Quiz: Planning your narrative
  8. Video: Making the Problem Compelling
  9. Video: Common Pitfall: Mixing Problem and Solution
  10. Video: Common Pitfall: Assuming Too Much
  11. Video: Presenting Your Solution
  12. Video: Common Pitfall: In the Weeds
  13. Video: Common Pitfall: Chronology
  14. Video: Visual Aids
  15. Video: Eye Contact, Speaking, and Projecting Excitement
  16. Video: When I struggled: A surprising discovery
  17. Video: Responding to Your Audience
  18. Video: Describing a group project
  19. Video: Assignment Overview
  20. Discussion Prompt: What project should you talk about?

Graded: Describe Your Work

WEEK 4


Algorithmic thinking on the fly



As we saw in week 2, coding on the fly can be a difficult task! In this final week of the course we’ll revisit the skill of live problem solving by looking at how to solve more challenging algorithmic problems (and write the code associated with the solution) on the whiteboard. You’ll recognize these problems as “classic” interview problems you’ve probably heard a lot about, designed to test your problem solving skills as well as your analysis and coding abilities. Don’t worry, we’ll teach you how to approach them with confidence through a 6-step process to addressing technical questions (hint: you don’t have to produce the perfect solution on the first try!). We’ll show you how to use this process in a number of examples. But of course, there is no substitute for practice, so we’ll set you up with how to train and evaluate yourself.


17 videos, 5 readings, 3 practice quizzes expand


  1. Video: Welcome to algorithmic problem solving
  2. Reading: By the end of this week, you will be able to...
  3. Practice Quiz: Your experience
  4. Video: Algorithmic problem solving and interviews
  5. Video: Case study: introduction
  6. Video: Case study: a first solution
  7. Video: Case study: working at the whiteboard
  8. Video: Case study: going deeper
  9. Video: Case study: next steps
  10. Reading: Study notes
  11. Video: When I struggled: dealing with nerves
  12. Video: In the real world: career advice
  13. Video: Evaluation criteria
  14. Video: Highlights from a good mock interview
  15. Video: Pitfalls in a bad mock interview
  16. Practice Quiz: Evaluating the mock interviews
  17. Video: What's next?
  18. Reading: Evaluation questions
  19. Practice Quiz: Record your live problem-solving session
  20. Reading: Interview Question Solutions--DON'T PEEK
  21. Reading: Additional Resources
  22. Video: End of course message
  23. Video: Appendix: full-length mock phone interview
  24. Video: Appendix: full-length mock bad in-person interview
  25. Video: Appendix: full-length mock good in-person interview

Graded: Solving algorithmic problems on the fly: Part 1
Graded: Solving Algorithmic Problems on the Fly: Part 2 (self-assessment)
There are no reviews yet.

Share your review

Do you have experience with this course? Submit your review and help other people make the right choice. As a thank you for your effort we will donate £1.- to Stichting Edukans.

There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.