πŸ§‘πŸ½β€πŸ€β€πŸ§‘πŸ½ day-plan

✍🏽 Register

🎑 Morning orientation

Learning Objectives

info

🧭 During the week, create a post on Slack and get some people to take on the roles of facilitator and timekeeper. Nominate new people each time.

πŸ‘£ Steps

If you haven’t done so already, choose someone (volunteer or trainee) to be the facilitator for this morning orientation block. Choose another to be the timekeeper.

πŸŽ™οΈ The Facilitator will:

  1. Assemble the entire group (all volunteers & all trainees) in a circle
  2. Briefly welcome everyone with an announcement, like this:

    πŸ’¬ “Morning everyone, Welcome to MCB {REGION}, this week we are working on {MODULE} {SPRINT} and we’re currently working on {SUMMARISE THE TOPICS OF THE WEEK}”

  3. Ask any newcomers to introduce themselves to the group, and welcome them.
  4. Now check: is it the start of a new module? Is it sprint 1? If so, read out the success criteria for the new module.
  5. Next go through the morning day plan only (typically on the curriculum website) - and check the following things:

Facilitator Checklist

  • Check the number of volunteers you have for the morning
  • Check someone is leading each session
  • Describe how any new activities works for the group
  • Decide how best to allocate trainees and volunteers for a given block - most blocks will make this clear

⏰ The Timekeeper will:

  • Announce the start of an activity and how long it will take (check everyone is listening)
  • Manage any whole class timers that are used in an activity
  • Give people a 10-minute wrap-up warning before the end of an activity
  • Announce the end of an activity and what happens next

Job Hunting and Mock Interview

Learning Objectives

Preparation

Bring the job description from prep to class.

Introduction

Hiring managers may sort through hundreds of resumes for a single job, meaning they often scan to find the most relevant details. The best way to get noticed as a candidate is to tailor your CV to the employer’s job description.

Review a job description for a software engineer role

🎯 Goal: Learn how to identify key elements of the job description that can be used to highlight relevant skills and experiences in your resume. (20 minutes)

Form groups of 4 or 5 people. Read the job description you read on the prep and together do the following activities:

Review the job description and discuss:Β 

  • Understand employers’ wants and the qualifications required to perform the job.Β 
  • Read its description and write down/highlight any significant keywords related to skills. These may be unique to the job or that repeat throughout the posting.Β 
  • Take note of specific requirements - necessary education or training and years of experience.
  • Look at the order of the responsibilities listed, as those mentioned first may be more of a priority for the employer.Β 
  • Mirror the employer’s priorities when organising your resume - the first items they mention should be some of the first items you each mention on your CV.

Mock interview: Competency-based interviews using the job description

🎯 Goal: Get prepared and comfortable with competency-based interviews. (40 minutes)

Trainees should pair up and practice interviewing each other. Use the job posting from the previous exercise and the notes you took to complete the following activity:

  • One individual will take the role of the interviewer, and the other the role of the candidate.

  • You both should be very familiar with the job posting, if not, review it carefully.

  • Make sure to cover these stages during the interview:

    • Introductions

    • Interviewer: go over the candidate’s CV, and ask at least 5 questions regarding the candidate’s skills and experience as well as the information found in the CV’s summary. Try using the format followed by the questions below and also feel free to use them:

      • Tell me about a time when you did more than what was expected.
      • Tell me about a time when you received harsh feedback.
      • Tell me about a time when you had to deliver results within a tight deadline.
      • Walk me through a time when requirements were not clear by the time development had to start. What did you do?
      • Talk me through one of the projects that you’re proud of.
      • What is the most (technically) challenging task that you’ve encountered?
    • The candidate should use the STAR method to answer these questions. The interviewer should allow the candidate to ask questions at the end. Remember to always keep in mind what you learned from the job description!Β 

  • Finally, discuss with each other how the interview went and then swap roles.

Morning Break

A quick break of fifteen minutes so we can all concentrate on the next piece of work.

Quiz Time! πŸ”—

SQL Showdown: Team Quiz

Welcome, SQL warriors! Today, we’ll be putting your database knowledge to the test in a team quiz. Prepare to unleash your SQL prowess and collaborate with your squad to conquer the challenges.

Learning Objectives

  • Work through various SQL queries, testing your knowledge on selecting, filtering, manipulating, and aggregating data.
  • Collaborate with your teammates, discussing approaches and problem-solving together.
  • React quickly and apply your SQL knowledge under a time limit, simulating real-world scenarios.

Requirements

  • Quiz Leader: The quizmaster needs to prepare the questions, guide the quiz, and keep the energy high. Sample questions are provided below, but you should set your own. Anyone: trainee or volunteer can take this role. Prepare your quiz questions and answers in advance.
  • Timekeeper: Keep track of time for each round to ensure the quiz runs smoothly.
  • Assemble Your Team: Get into groups of 3-4. Teamwork makes the dream work
  • Paper & Pen: Prepare yourselves to write queries and discuss strategies WITHOUT using a computer.
  • A Dash of Fun & Friendly Competition: Embrace the challenge with a positive and collaborative spirit!

The Challenge

This workshop will be divided into rounds, each presenting a unique SQL query challenge. The scenarios will target various SQL functionalities, so get ready to flex your SQL muscles.

You will write your answers on paper not on a computer. Close your laptops. You may use printed SQL CheatSheets to help you.

  • Round 1: Data Retrieval: Test your fundamental SELECT statement skills, filtering and retrieving specific data from a database table.
  • Round 2: Joining the Party: Level up the difficulty with JOINs, combining data from multiple tables to unlock hidden insights.
  • Round 3: Advanced Arena: Challenge yourselves with more complex queries, potentially involving functions, aggregations, or subqueries.

Bonus Round (Optional): Feeling confident? The quiz leader may throw in an extra round with a real-world database scenario, pushing your problem-solving abilities.

Acceptance Criteria

  • Participation is Key: Actively engage with your team, discussing questions and contributing ideas throughout the quiz.
  • Demonstrate SQL Skills: Work together to formulate correct and efficient SQL queries to solve the presented challenges.
  • Teamwork Triumphs: Collaborate effectively and communicate your solutions clearly within your team.

Bonus Point: If you tackle the bonus round, aim to deliver a well-structured and insightful solution that addresses the real-world scenario.

Let the Games Begin!

Get ready to unleash your SQL mastery and collaborate with your team to conquer the challenges. Remember, effective communication, teamwork, and a dash of friendly competition are the keys to success!

SQL Showdown: Team Quiz Extravaganza - Example Questions

Round 1: Data Retrieval 10 minutes

Scenario: You’re working with an e-commerce database.

Question 1: Say what you see

Write a query to select all product names and prices from the products table.

Question 2: WHERE are we going with this

How can you modify the query to only show products with a price greater than $50?

Round 2: Joining the Party 10 minutes

Scenario: The e-commerce database also has a table named orders that stores information about customer purchases. Each order references a product ID from the products table.

Question 1: Are you in on this

Write a query to retrieve the product name, price, and order quantity for all orders.

Question 2: Oh WHERE do we begin

Modify the query to only show orders for products with a price greater than $100.

Round 3: Advanced Arena 10 minutes

Scenario: Let’s add a customers table to the mix, containing customer names and their order IDs.

Question 1: Does this COUNT AS fun?

Write a query to find the total number of orders placed by each customer.

Question 2: Are we HAVING fun yet?:

How can you modify the query to show only customers who have placed more than 2 orders?

Bonus Round: Real-World Scenario

Scenario: The marketing team wants to identify the top 3 most popular products (by total quantity ordered) for a targeted campaign.

Challenge:

Write a query to achieve this, considering the tables: products, orders.

Remember: These are just examples. You can adjust the difficulty level and scenarios based on your group’s SQL knowledge and experience.

The winning team πŸ†

Take a victory lap and eternal glory in the CodeYourFuture Hall of Fame. May the best SQL warriors emerge victorious! πŸ†πŸ”₯

Lunch

Take your lunch break and be back in an hour!

Study Group

Learning Objectives

What are we doing now?

You’re going to use this time to work through coursework. Your cohort will collectively self-organise to work through the coursework together in your own way. Sort yourselves into groups that work for you.

Use this time wisely

You will have study time in almost every class day. Don’t waste it. Use it to:

  • work through the coursework
  • ask questions and get unblocked
  • give and receive code review
  • work on your portfolio
  • develop your own projects

πŸ›ŽοΈ Code waiting for review πŸ”—

Below are trainee coursework Pull Requests that need to be reviewed by volunteers.

NW6 | Fathi Kahin | Module-Database | E-commerce -API-| Week 4 πŸ”—

Learners, PR Template

Self checklist

  • I have committed my files one by one, on purpose, and for a reason
  • I have titled my PR with COHORT_NAME | FIRST_NAME LAST_NAME | REPO_NAME | WEEK
  • I have tested my changes
  • My changes follow the style guide
  • My changes meet the requirements of this task

Changelist

Briefly explain your PR.

Questions

Ask any questions you have for your reviewer.

Start a review
WM5 | AISHA_ATHMAN_LALI | MODULE_DATABASES | WEEK_3 | CYF_E-COMMERCE πŸ”—

Self checklist

  • I have committed my files one by one, on purpose, and for a reason
  • I have titled my PR with COHORT_NAME | FIRST_NAME LAST_NAME | REPO_NAME | WEEK
  • I have tested my changes
  • My changes follow the style guide
  • My changes meet the requirements of this task

This is a PR on CYF E-COMMERCE.

Questions

Are there better ways I could have written the queries?

Start a review
WM5 | AISHA_ATHMAN_LALI| MODULE_DATABASES | WEEK_2 | BIG-SPENDER πŸ”—

Self checklist

  • I have committed my files one by one, on purpose, and for a reason
  • I have titled my PR with COHORT_NAME | FIRST_NAME LAST_NAME | REPO_NAME | WEEK
  • I have tested my changes
  • My changes follow the style guide
  • My changes meet the requirements of this task

This is a PR for the big-spender database project.

Questions

Is there a better way I could have written the queries?

Start a review
NW6 | Pedro Ricciardi | Databases Module | [TECH ED] E-Commerce API | Sprint 4 πŸ”—

Self checklist

  • I have committed my files one by one, on purpose, and for a reason
  • I have titled my PR with COHORT_NAME | FIRST_NAME LAST_NAME | REPO_NAME | WEEK
  • I have tested my changes
  • My changes meet the requirements of this task

Changelist

All routes and tests implemented following the user stories in readme.md:

  • As a user, I want to view a list of all products with their prices and supplier names.
  • As a user, I want to search for products by name.
  • As a user, I want to view a single customer by their ID.
  • As a user, I want to create a new customer with their name, address, city, and country.
  • As a user, I want to create a new product.
  • As a user, I want to create a new product availability with a price and supplier ID, and get an error if the price is not a positive integer or if either the product or supplier ID does not exist.
  • As a user, I want to create a new order for a customer with an order date and reference number, and get an error if the customer ID is invalid.
  • As a user, I want to update an existing customer’s information with their name, address, city, and country.
  • As a user, I want to delete an existing order and all associated order items.
  • As a user, I want to delete an existing customer only if they do not have any orders.
  • As a user, I want to view all orders with their items for a specific customer, including order references, dates, product names, unit prices, suppliers, and quantities.

Issue

[TECH ED] E-Commerce API

Note

Due to a lack of time, I could not create my own acceptance criteria. I focused on the most important aspect, which is the correct implementation and testing for each route.

Start a review
NW6 | Rabia Avci | Databases Module | [TECH ED] E-Commerce | Week 3 πŸ”—

Learners, PR Template

Self checklist

  • I have committed my files one by one, on purpose, and for a reason
  • I have titled my PR with COHORT_NAME | FIRST_NAME LAST_NAME | REPO_NAME | WEEK
  • I have tested my changes
  • My changes follow the style guide
  • My changes meet the requirements of this task

Changelist

I have written SQL queries to retrieve specific data from a database with different tables with relations between them.

Questions

Ask any questions you have for your reviewer.

Start a review
See more pull requests

Afternoon Break

Please feel comfortable and welcome to pray at this time if this is part of your religion.

If you are breastfeeding and would like a private space, please let us know.

Study Group

Learning Objectives

What are we doing now?

You’re going to use this time to work through coursework. Your cohort will collectively self-organise to work through the coursework together in your own way. Sort yourselves into groups that work for you.

Use this time wisely

You will have study time in almost every class day. Don’t waste it. Use it to:

  • work through the coursework
  • ask questions and get unblocked
  • give and receive code review
  • work on your portfolio
  • develop your own projects

Retro: Start / Stop / Continue

  activity</span>

A retro is a chance to reflect. You can do this on a FigJam (make sure someone makes a copy of the template before you start) or on sticky notes on a wall.

  1. Set a timer for 5 minutes. There’s one on the FigJam too.
  2. Write down as many things as you can think of that you’d like to start, stop, and continue doing next sprint.
  3. Write one point per note and keep it short.
  4. When the timer goes off, one person should set a timer for 1 minute and group the notes into themes.
  5. Next, set a timer for 2 minutes and all vote on the most important themes by adding a dot or a +1 to the note.
  6. Finally, set a timer for 8 minutes and all discuss the top three themes.