CSE 341: Web Services

W06 Final Demonstration: Job Interview Preparation - Portfolio

Overview

In a technical job interview, employers will ask about portfolio projects. They want to see that you understand the key topics and the way they are used in your project.

For any portfolio project, you should be prepared to show it working. Then, you should be prepared to pull up sections of code and explain the details of what any code snippet is doing.

Most importantly, you should be prepared to explain important decisions you made during your project. You should explain what the options were and why you chose the solution you did. Being able to explain these concepts is much more important in an interview than having working code.

To help you prepare for these experiences, you will demonstrate your work on your team project in a similar way.

Assignment

Your assignment is to follow a specific process to:

Prepare for your demonstration

For your demonstrations, you need to follow this script:

  1. Explain how a web services approach is used in this project.
    • Explain how this is different than a server-side rendering approach.
    • Explain an advantage of using web services in this case.
    • Explain a disadvantage of using web services in this case.
  2. Show a specific example of code you personally wrote that uses the Model-View-Controller (MVC) pattern in your project.
    • Explain how this approach makes it easy to make changes to your project in the future.
  3. Show a specific example of code you personally wrote that returns different HTTP response codes based on success or failure conditions.
    • Explain why you chose the codes you did for each of these conditions.
  4. Show a specific example of code you personally wrote that uses authentication to secure an API route.
    • Explain how this code prevents unauthorized access.
  5. Show a specific example of code you personally wrote that provides paging, filtering, or search in an API.
    • Explain how Express retrieves the filtered set from MongoDB.
  6. Show a specific example of code you personally wrote that tests an API.
    • Explain why you chose the tests you did and some additional tests you would write if you had more time.

Demonstrate your project to two other people

Practice demonstrating the concepts from the previous step by sharing them with two people you know. It is ideal if these people have a technical background, but if that is not possible, you may explain these concepts to any two friends or family members. You are also welcome to explain them to one of your teammates in a video call.

For each of your two demonstrations:

  1. Write down the name of the person you talked to and the date of your visit.
  2. Write down at least one insight you had from your interaction.

Record a video demonstration

Record a video that follows the script in the previous step. Make sure you show code that you wrote and clearly explain each of the concepts.

Video length

Your video should be less than 7 minutes in length.

Save your video somewhere where it can be accessed by the grading team. You should try to access it in a private/incognito browser to be sure others can access it.

Submit the reflection template

Download and fill out the W06 Portfolio Reflection Template and submit it to Canvas for grading.

  1. Download the Portfolio Reflection Template.
  2. Answer each question in your own words.
  3. Save the completed document as a .txt or .md file.
  4. Upload the completed reflection document to Canvas.

Deliverables Checklist

Other Links: