πŸ₯ž backlog

Module-Cloud πŸ”—  

[TECH ED] Coursework feedback πŸ”— Clone

[TECH ED] Coursework feedback πŸ”—

https://github.com/CodeYourFuture/Module-Cloud/issues/

Why are we doing this?

The CYF curriculum is an open source project. Like all software, it is continually revised and improved in iterations.

Help improve the curriculum by giving quick emoji feedback on any assignment.

Screenshot 2024-02-23 at 14 06 56

Feedback on this assignment by pressing the emoji reaction button on the top comment.

Emoji Key

πŸ‘ = Useful
πŸ‘Ž = Not useful

πŸš€ = Way too much time given
πŸ˜• = Not enough time given

You are invited to give feedback on any assignment in this way. Do this on the CYF issue, not your copy, so CYF can track it using the GitHub reactions API.

Maximum time in hours

.05

How to submit

Click the emoji button on the first post on any coursework assignment.

  • 🎯 Topic Iteration
  • 🎯 Topic Teamwork
  • 🏝️ Priority Stretch
  • πŸ¦” Size Tiny
  • πŸ“… Sprint 3
  • πŸ“… Week 4
  • Cloud
  • πŸ¦” Size Tiny
  • πŸ“… Week 4
  • πŸ“… Sprint 3
  • 🏝️ Priority Stretch
  • 🎯 Topic Teamwork
  • 🎯 Topic Iteration
  • Cloud
[TECH ED] Docker Compose πŸ”— Clone

[TECH ED] Docker Compose πŸ”—

https://docs.docker.com/

Why are we doing this?

Research Docker Compose, its syntax and a few examples. Think how it can help you orchestrate your 3 containers for local development, and then create a docker-compose file to use this tool to automatically build, start and network your containers. Find a way to specify dependencies, to ensure that the backend start initialising only when the database is up and running.

If you want, you can experiment with running all 3 components in EC2 via Docker compose, but keep it as an experiment. Think about some advantages and disadvantages of the 2 approaches (all in a docker-compose file inside a EC2 instance vs using multiple managed services such as S3 and RDS)

How to get help

If you are doing this for the first time, this will be hard. You must reach out to volunteers to help you. Your ability to ask for help is actively assessed during this time. Ask good, curious questions with links, code samples, and no screenshots.

https://curriculum.codeyourfuture.io/guides/asking-questions/

You are not expected to be able to complete this module completely independently. You are expected to get help from volunteers.

How to submit

In this advanced module you will demo your work. You may wish to make notes for case studies to add to your portfolio.

  • 🎯 Topic Delivery
  • 🎯 Topic Requirements
  • 🎯 Topic Testing
  • 🎯 Topic Structuring Data
  • 🏝️ Priority Stretch
  • πŸ“… Sprint 3
  • Cloud
  • πŸ“… Sprint 3
  • 🏝️ Priority Stretch
  • 🎯 Topic Testing
  • 🎯 Topic Structuring Data
  • 🎯 Topic Requirements
  • 🎯 Topic Delivery
  • Cloud
[TECH ED] Dockerise CYF Hotel πŸ”— Clone

[TECH ED] Dockerise CYF Hotel πŸ”—

https://docs.docker.com/

Why are we doing this?

Dockerize CYF Hotel

The main aim of this sprint is to become familiar with Docker Concepts and be able to use it to a base level. To achieve this, we’ll keep working on our CYF Hotel.

Prep

Make sure you have completed the prep for this week and your Docker daemon is working correctly before continuing.

Docker Backend

Start working on dockerising your application backend. Create a Dockerfile, set it up for node and replicate your setup and install steps that were manual so far in there. Iterate until you get it to run successfully as a Docker Container locally. Hint: Remember port forwarding!

Once successful, upload your created Docker Image to either your DockerHub account or (advanced) AWS’s ECR.
Once done, Update your EC2 instance to now run your backend as a container. Hint: You will need to set up Docker on the VM itself for this to work

GitHub Pipelines

Once this is done and working fully, time to automate it - rework your Github Actions Workflow to test, build and upload your Docker image, and then deploy the new version to the EC2 machine.

Maximum time in hours

6

How to get help

If you are doing this for the first time, this will be hard. You must reach out to volunteers to help you. Your ability to ask for help is actively assessed during this time. Ask good, curious questions with links, code samples, and no screenshots.

https://curriculum.codeyourfuture.io/guides/asking-questions/

You are not expected to be able to complete this module completely independently. You are expected to get help from volunteers.

How to submit

In this advanced module you will demo your work. You may wish to make notes for case studies to add to your portfolio.

  • 🎯 Topic Delivery
  • 🎯 Topic Requirements
  • 🎯 Topic Testing
  • 🎯 Topic Structuring Data
  • πŸ• Priority Mandatory
  • πŸ”‘ Priority Key
  • πŸ“… Sprint 3
  • Cloud
  • πŸ”‘ Priority Key
  • πŸ“… Sprint 3
  • πŸ• Priority Mandatory
  • 🎯 Topic Testing
  • 🎯 Topic Structuring Data
  • 🎯 Topic Requirements
  • 🎯 Topic Delivery
  • Cloud
[TECH ED] Join a collective job hunting session πŸ”— Clone

[TECH ED] Join a collective job hunting session πŸ”—

#cyf-employment

Why are we doing this?

At CYF we share our job hunting. We work together to find suitable roles, analyse them, share them with each other, and support each other to apply for them. The work of many multitplies our individual efforts.

A key part of that experience is learning to reach out to companies, to people at companies. We connect with them so they come to talk to us at Code Your Future, enhancing our profile and our chances of getting roles.

75% of job applications are never read. ATS software filters them out automatically. When we work together, our voices are more powerful. Hiring managers can hear us when we speak together, when we present to companies, at events, when we make personal connections with people. We get someone to really look at our profiles and together we beat the automated processes that otherwise exclude our applications.

Maximum time in hours

1

How to get help

https://poe.com/CYF_Job_Hunter

How to submit

Find the shared collective job spreadsheet. It’s pinned in Slack. Find a suitable role and add that role to the sheet. Then look through all the questions and actions you can take. As a group, identify a role that at least some of you could achieve and make a plan to apply. What help will you need? Do we know someone at that company? Read the website, does that company participate in local tech events? Can you go there? CYF can help.

How to review

You must find some grads in your region to come to class day and run this session with you. Where will you find them? (Probably on Slack!) Schedule one to two hours to work on this together. And then book another session!

  • 🎯 Topic Communication
  • :brain: Prep work
  • 🎯 Topic Problem-Solving
  • 🎯 Topic Teamwork
  • πŸ• Priority Mandatory
  • πŸ‚ Size Medium
  • πŸ“… Sprint 1
  • πŸ“… Sprint 3
  • πŸ“… Sprint 5
  • Cloud
  • πŸ“… Sprint 5
  • πŸ“… Sprint 3
  • πŸ“… Sprint 1
  • πŸ‚ Size Medium
  • πŸ• Priority Mandatory
  • 🎯 Topic Teamwork
  • 🎯 Topic Problem-Solving
  • 🎯 Topic Communication
  • Cloud
  • :brain: Prep work
[TECH ED] Local Development Docker πŸ”— Clone

[TECH ED] Local Development Docker πŸ”—

https://docs.docker.com/

Why are we doing this?

Local development (bonus)

This step is a bonus one, if you completed all previous steps and are not behind on the previous weeks.

Dockerise your Frontend, and have it run locally alongside via Docker with your backend. Can you get both to work correctly at the same time?

Replicate the process for the database, and move it from your local instance to a local Docker Container (remember persistence via volumes).

In both cases, managed AWS services (S3 and RDS) give us a lot of advantages for Cloud Deployment, but lack support for local development, and Docker can help with that.

Imagine how you would automate, with a script, the process of rebuilding all 3 containers on changes, and restart/reconnect everything. Try to build it.

How to get help

If you are doing this for the first time, this will be hard. You must reach out to volunteers to help you. Your ability to ask for help is actively assessed during this time. Ask good, curious questions with links, code samples, and no screenshots.

https://curriculum.codeyourfuture.io/guides/asking-questions/

You are not expected to be able to complete this module completely independently. You are expected to get help from volunteers.

How to submit

In this advanced module you will demo your work. You may wish to make notes for case studies to add to your portfolio.

  • 🎯 Topic Delivery
  • 🎯 Topic Requirements
  • 🎯 Topic Testing
  • 🎯 Topic Structuring Data
  • 🏝️ Priority Stretch
  • πŸ“… Sprint 3
  • Cloud
  • πŸ“… Sprint 3
  • 🏝️ Priority Stretch
  • 🎯 Topic Testing
  • 🎯 Topic Structuring Data
  • 🎯 Topic Requirements
  • 🎯 Topic Delivery
  • Cloud
[TECH ED] Prepare for live session πŸ”— Clone

[TECH ED] Prepare for live session πŸ”—

https://curriculum.codeyourfuture.io/cloud/sprints/3/prep/

Why are we doing this?

It is essential to start learning new concepts and ideas before Saturday’s session. During the week, we expect you to get stuck and form questions about the new content so you can address misconceptions during Saturday’s session. The prep work here will introduce you to the new concepts for the week.

You will need to do this prep work before tackling the coursework.

Maximum time in hours (Tech has max 16 per week total)

3

How to get help

Share your blockers in your track channel

https://curriculum.codeyourfuture.io/guides/asking-questions

How to submit

It will be clearly evident if you don’t do the prep. At CYF we come to class prepared.

  • :brain: Prep work
  • πŸ• Priority Mandatory
  • πŸ‚ Size Medium
  • πŸ”‘ Priority Key
  • πŸ“… Sprint 3
  • Cloud
  • πŸ”‘ Priority Key
  • πŸ“… Sprint 3
  • πŸ‚ Size Medium
  • πŸ• Priority Mandatory
  • Cloud
  • :brain: Prep work
[TECH ED] Technical Writing 2 πŸ”— Clone

[TECH ED] Technical Writing 2 πŸ”—

https://developers.google.com/tech-writing/two

Why are we doing this?

Every engineer is also a writer.

You must have completed Technical Writing One before doing this work. #33

This course teaches you the fundamentals of technical writing. Use the principles in this course to write compelling:

  • case studies for your portfolio
  • READMEs for your projects
  • documentation
  • tickets, issues, and bug reports
  • developer questions
  1. complete the linked work
  2. revise a piece of technical writing you have already completed using the principles you have just learned
  3. ask Chat GPT to compare your original writing and your revision and explain which is better

Maximum time in hours

2.5

How to get help

Get help by requesting someone to run the Technical Writing 2 workshop in class or in a midweek session online. Ask in Slack.

How to submit

Share ChatGPT’s assessment in a thread in Slack

How to review

ask Chat GPT to compare your writing and your revision and explain which is better

  • πŸ• Priority Mandatory
  • πŸ‚ Size Medium
  • πŸ“… Sprint 3
  • πŸ“… Week 3
  • Cloud
  • πŸ“… Week 3
  • πŸ“… Sprint 3
  • πŸ‚ Size Medium
  • πŸ• Priority Mandatory
  • Cloud
[TECH ED] Write an incident report πŸ”— Clone

[TECH ED] Write an incident report πŸ”—

https://www.atlassian.com/incident-management/postmortem/templates#incident-summary

Why are we doing this?

Write up a problem or outage you have handled during this module, using the template provided:

Summary

This section should provide a high-level overview of the incident, including a brief description of what happened, the severity level, the affected services or components, and the impact on customers or users.

Timeline

This section should chronologically document the key events and actions taken during the incident, from the initial detection to the final resolution. It should include timestamps for each event and the person or team responsible for each action.

Root cause

This section should analyze and identify the underlying cause(s) of the incident. It should provide a detailed explanation of what went wrong, including any contributing factors or related issues.

Resolution and recovery

This section should describe the steps taken to resolve the incident and restore normal operations. It should include details about any workarounds or temporary solutions implemented, as well as the final fix or permanent resolution.

Corrective and preventive measures

This section should outline the actions that will be taken to prevent similar incidents from occurring in the future. It should include both short-term corrective measures and long-term preventive measures, such as process improvements, system upgrades, or training initiatives.

Maximum time in hours

3

How to get help

Use GenAI to evaluate and improve your incident report. Use this prompt to help you:

Act as a straightforward senior DevOps engineer with lots of experience in technical communication. Evaluate my incident report and tell me how I can improve it. Don’t rewrite my report, but give me examples and corrections piece by piece. Please be honest and kind.

How to submit

  1. Write up your incident report as a feature on your portfolio website
  2. Share the link in Slack.

It must be on your portfolio website and not in a message or doc, because the purpose of this exercise is to demonstrate this valuable skill to employers.

How to review

Share your links in Slack and ask a colleague to review. Make sure to review someone else’s report too. What can you learn from theirs?

  • 🎯 Topic Communication
  • πŸ• Priority Mandatory
  • πŸ‚ Size Medium
  • πŸ“… Sprint 3
  • 🎁 Module Product
  • Cloud
  • πŸ“… Sprint 3
  • πŸ‚ Size Medium
  • πŸ• Priority Mandatory
  • 🎯 Topic Communication
  • 🎁 Module Product
  • Cloud