Voyages are 6-week long remote team projects where you'll level up your skills and build experience to help you land your dream job. This is by:
- Putting the technical knowledge you've gained into practice in one of three tiers which match your technical skills to thoseof your teammates.
- Improving "soft" skills like teamwork, collaboration, and project management.
- Being accountable to your commitments to your team and yourself.
- Adding new skills like Agile & Scrum.
| Milestone | Voyage 59 | Voyage 60 | Voyage 61 | Voyage 62 | Voyage 63 |
|---|---|---|---|---|---|
| Solo Project Deadline | December 31 | March 11 | May 20 | August 19 | October 21 |
| Voyage Launch | January 12 | March 23 | June 1 | August 31 | November 2 |
| Weekly Checkin due every... | Monday | Monday | Monday | Monday | Monday |
| Voyage ends & projects due | February 22 | May 10 | July 19 | October 18 | December 20 |
| Demo Day presentations due | February 23 | May 11 | July 20 | October 19 | December 21 |
| Demo Day | February 25 | May 13 | July 22 | October 21 | December 23 |
| Completion Certificates issued | March 4 | May 20 | July 29 | October 28 | December 30 |
| Showcase article available | March 4 | May 20 | July 29 | October 28 | December 30 |
Voyages have specific requirements, milestones, and require a commitment of 8-12 hours per week from each team member.
Chingu doesn't charge for organizing & managing Voyages, but that doesn't mean they are "free". Getting the most out of your Voyage requires dedication and commitment on your part to be an active participant and to finish what you start.
A team channel is provided in Discord to every team at the start of the Voyage. You should use this to communicate and collaborate with your teammates. Access to this channel is restricted to your team, so it's the best place for open, frank, and respectful communication with your teammates.
You and your team must use only the Team Channel we provide to communicate with each other about your project. We don't monitor the content in this channel, but we do count the number of messages posted to make sure teams are communicating.
You will also be provided with a GitHub repo for your project. This
is created for you in the chingu-voyages organization and everyone
on your team is granted adminaccess to it. But, you must:
- leave this as a public repo
- not rename the repo we've provided
- not create any additional repos on your own
If you need another repo, open a ticket and a member of the Chingu Admin team will be happy to create it for you.
---
config:
layout: elk
theme: dark
---
block-beta
columns 1
block:B0:1
columns 1
block:TOPL1
columns 11
A1((" 1 "))
A4((" 4 "))
A9((" 9 "))
A12((" 12 "))
end
block:TOPL2
columns 11
end
block:TOPL3
columns 11
A3((" 3 "))
A5((" 5 "))
A11((" 11 "))
end
space
space
space
block:CENTER
columns 11
SPRINT0(" Sprint 0 ")
space
SPRINT1(" Sprint 1 ")
space
SPRINT2(" Sprint 2 ")
space
SPRINTS35(" Sprints 3-5 ")
space
SPRINT6(" Sprint 6 ")
end
block:BOTTOML1
columns 11
A2((" 2 "))
A7((" 7 "))
space
A10((" 10 "))
end
block:BOTTOML2
columns 11
end
block:BOTTOML3
columns 11
A6((" 6 "))
A8((" 8 "))
end
A1 -- "<a style="background-color:#292d30" href="https://github.com/chingu-voyages/Handbook/blob/main/docs/guides/voyage/voyage.md#1-get-to-know-your-team-">Get to know</br>your</br> team</a>" --> SPRINT0
A2 -- "<a style="background-color:#292d30" href="https://github.com/chingu-voyages/Handbook/blob/main/docs/guides/voyage/voyage.md#2-hold-a-realtime-team-meeting-%E2%80%8D%EF%B8%8F">Hold a</br>realtime</br>team mtg.</a>" --> SPRINT0
A3 -- "<a style="background-color:#292d30" href="https://github.com/chingu-voyages/Handbook/blob/main/docs/guides/voyage/voyage.md#3-hold-a-kickoff-meeting-%E2%80%8D">Hold</br>Kickoff</br>Mtg.</a>" --> SPRINT1
A4 -- "<a style="background-color:#292d30" href="https://github.com/chingu-voyages/Handbook/blob/main/docs/guides/voyage/voyage.md#4-Create-your-teams-working-agreements-">Create</br>team</br>agreements</a>" --> SPRINT1
A5 -- "<a style="background-color:#292d30" href="https://github.com/chingu-voyages/Handbook/blob/main/docs/guides/voyage/voyage.md#5-choose-a-project--create-a-vision-statement-">Choose</br>project &</br>create vision</a>" --> SPRINT1
A6 -- "<a style="background-color:#292d30" href="https://github.com/chingu-voyages/Handbook/blob/main/docs/guides/voyage/voyage.md#6-define--prioritize-mvp-features-">Define &</br>prioritize</br>features</a>" --> SPRINT1
A7 -- "<a style="background-color:#292d30" href="https://github.com/chingu-voyages/Handbook/blob/main/docs/guides/voyage/voyage.md#7-add-your-info-to-the-team-list-in-your-readmemd-%EF%B8%8F">Update</br>readme.md</br>team list</a>" --> SPRINT1
A8 -- "<a style="background-color:#292d30" href="https://github.com/chingu-voyages/Handbook/blob/main/docs/guides/voyage/voyage.md#8-select-a-technical-stack-%EF%B8%8F">Select a</br>technical</br>stack</a>" --> SPRINT1
A9 -- "<a style="background-color:#292d30" href="https://github.com/chingu-voyages/Handbook/blob/main/docs/guides/voyage/voyage.md#9-setup-product-backlog-">Create</br>Product</br>Backlog</a>" --> SPRINT2
A10 -- "<a style="background-color:#292d30" href="https://github.com/chingu-voyages/Handbook/blob/main/docs/guides/voyage/voyage.md#10-create-a-uiux-design-%EF%B8%8F">Create</br>UI/UX design</a>" --> SPRINT2
A11 -- "<a style="background-color:#292d30" href="https://github.com/chingu-voyages/Handbook/blob/main/docs/guides/voyage/voyage.md#11-sprint-3-5---reaching-your-mvp-">Design, code,</br>test & deploy</a>" --> SPRINTS35
A12 -- "<a style="background-color:#292d30" href="https://github.com/chingu-voyages/Handbook/blob/main/docs/guides/voyage/voyage.md#12-sprint-3-5---reaching-your-mvp-">Project Closure</a>" --> SPRINT6
end
SPRINT0 --> SPRINT1
SPRINT1 --> SPRINT2
SPRINT2 --> SPRINTS35
SPRINTS35 --> SPRINT6
style TOPL1 stroke:#292d30,fill:#292d30
style TOPL2 stroke:#292d30,fill:#292d30
style TOPL3 stroke:#292d30,fill:#292d30
style CENTER stroke:#292d30,fill:#292d30
style BOTTOML1 stroke:#292d30,fill:#292d30
style BOTTOML2 stroke:#292d30,fill:#292d30
style BOTTOML3 stroke:#292d30,fill:#292d30
style A1 color:#f0f6fc,fill:#1d8348
style A2 color:#f0f6fc,fill:#1d8348
style A3 color:#f0f6fc,fill:#1d8348
style A4 color:#f0f6fc,fill:#1d8348
style A5 color:#f0f6fc,fill:#1d8348
style A6 color:#f0f6fc,fill:#1d8348
style A7 color:#f0f6fc,fill:#1d8348
style A8 color:#f0f6fc,fill:#1d8348
style A9 color:#f0f6fc,fill:#1d8348
style A10 color:#f0f6fc,fill:#1d8348
style A11 color:#f0f6fc,fill:#1d8348
style A12 color:#f0f6fc,fill:#1d8348
style SPRINT0 color:#f0f6fc,fill:#b9770e
style SPRINT1 color:#f0f6fc,fill:#b9770e
style SPRINT2 color:#f0f6fc,fill:#b9770e
style SPRINTS35 color:#f0f6fc,fill:#b9770e
style SPRINT6 color:#f0f6fc,fill:#b9770e
Chingu_Voyage__Sprint_0.mp4
Objective
The foundation of any project is teamwork and learning how to work as a team is just as important as your technical knowledge. This is valued by employers, so increasing your team skills is one way to set you apart from other job applicants.
Your project’s success depends on how effective your team is at working together. In fact, this is more important than how much code you create or how fast you deploy it.
Spend time in your team channel to introduce yourself, learn more about your teammates, and determine what your common goals and dislikes. Voyages are hard work and building trust within the team helps you reduce conflicts and work more productively together.
How
- Start by introducing yourself to your team. Post an introduction in your team channel to let your teammates know about you as a professional and an individual.
- *Share information with your team including your availability, goals, expectations, likes and dislikes with your teammates. Identify what you have in common and what differences exist so you can work to understand one another better.
- Have Fun! Work doesn't have to be stressful or painful. In fact, the team environment you create has to be productive, but it should also one that's focused on the goal, but also relaxed and supportive.
Resources
What the different roles in a Voyage team?
Objective
Once you have met your teammates and spent a few days getting to know one another in your team channel, schedule a realtime meeting. Talking with your teammates in realtime is a more personal way to communicate and one that will reinforce the team bonding process.
How
- When the Sprint 0 starts, the first person in the Team Channel should create a Schej meeting availability event and post it in the channel. Everyone can update add their availability so the team meeting can be scheduled.
- Schedule this meeting for the latter half of Sprint 0 to give yourselves time to get to know one another in your team channel.
- Consider starting the meeting with an "icebreaker". You can find some ideas for these in this article, 6 Of The Best Icebreakers For Your Next Workshop Or Meeting
- Not everyone will feel comfortable speaking in a group meeting. Make sure to build an environment where everyone feels safe and comfortable in finding their voice and sharing with their teammates.
Pro Tip! Use the audio/visual channel for your team for meetings. This supports not only audio & video in real time, but also screen sharing.
Resources
Schej meeting availability tool
Overview_Video_Sprint_1.mp4
Objective
In the Kickoff Meeting you will meet your teammates, review the goals & steps to follow in Sprints 1 & 2, discuss the project you will be building, agree on a working agreement, plus anything else to create a solid foundation for teamwork.
How
- When the Voyage starts, the first person in the Team Channel should create a Schej meeting availability event and post it in the channel. Everyone can update add their availability so a Kickoff meeting can be scheduled.
- Find a time as early as possible in Sprint 1 for your Kickoff meeting. Six weeks sounds like a long time, but it’s quite short and every day you delay in getting started counts!
- Use the Voyage Kickoff meeting agenda template to guide you and as a
place to record notes and decisions. This and other helpful document templates
are in the
docssubdirectory in your team's repo.
Pro Tip! Use the audio/visual channel for your team for meetings. This supports not only audio & video in real time, but also screen sharing.
Resources
Document Templates
(These read-only templates will be copied to the docs subdirectory in your
team’s repo when the Voyage starts)
Meeting template - Voyage Kickoff
Objective
Define how you plan to work together as a team. This includes how often you’ll share status, coding standards, git/GitHub processes, and deciding how many meetings you need each week.
How
- Decide on the coding standards the team must follow.
- Define the characteristics of your repo including the number of branches, branch names, & the working agreement everyone must follow.
- Agree on the format of commit messages, how Pull Requests will be reviewed, and GitHub branch protection rules.
- Decide on where you’ll deploy your app and the branch to be considered as ‘production’ you’ll be deploying from. We strongly recommend you deploy your
developmentbranch to the same Web host as yourmainbranch, so you have a place to perform integration testing that's in an environment that is similar to your production environment. You should also deploy your app changes to yourmainbranch and test them in the Web host it is deployed to in each and every sprint even before the MVP is complete. - Decide on what meetings you’ll need each week and to save time, schedule them as recurring meetings. You might want to look ahead to learn more about the types of meetings you’ll need.
- Develop the App
Resources
Javascript Style Guides
Defining a Git Workflow (Chingu Handbook)
Git Branches (Chingu Handbook)
Git Commits (Chingu Handbook)
Conventional Commits
Git Pull Requests (Chingu Handbook)
Chingu Video: How to use git & GitHub in a Team
This is for Tier 3 teams only. All Tier 1 & Tier 2 teams have been assigned a project along with a link to its requirements and specifications in the team channel.
Objective
Choose a project your team will build during the Voyage. In addition to refining your technical skills you’ll also be learning new “soft” skills to help you advance your career. These include collaboration, communication,planning, & working in an Agile environment.
How
-
Exchange ideas and share screenshots or URLs of projects you would like to build. Look at the references below to get ideas or create a project you and the team are passionate about.
- Collect ideas from the team
- Brainstorm with your team
- Vote to select one idea
- Decide on the technical stack you’ll use to construct it in
-
Create a short vision statement to capture what it does and the benefit it will bring to its users.
This should be completed by the end of Sprint 1. Keep in mind that since the Voyage is only 6-weeks long it's important to get started quickly. In addition, you'll learn and build experience no matter what project you decide to create.
Resources
How to Select a Project
Voyage Project Showcase articles (Dev.to)
These read-only document templates will be placed in the docs
subdirectory of your team’s repo at the start of the Voyage.
Objective
The Minimum Viable Product (MVP) is the minimum number of features your users need to be able to use and get value from through your app.
How
- Everyone should add ideas to the Project Vision & Feature Planning template before the team meeting
- Prioritize each feature - Must Have, Should Have, Nice to Have
- Meet with the team to review each feature & refine priorities
Once you’ve agreed on the features and their priorities you will be ready to add them to the Product Backlog.
Must Have features define your MVP, while features in the other two priorities are “stretch goals'' to be worked on when you’ve implemented all the Must Haves.
Resources
Project Vision and Feature Planning Template (These read-only templates will
be copied to the docs subdirectory in your team’s repo when the Voyage
starts)
Objective
Your team repo is a public GitHub repo where your team will maintain the source code for your project. Only you and your teammates have update access to it.
Every member of the team should verify that they have update access to this repo. This includes Product Owners, Scrum Masters, UI/UX Designers, and Developers.
How
- The
README.mdin your team repo has been pre-populated with a section titled "Our Team". Before the end of Sprint 1 every team member should add their information to it.
This shows not only who is on the team, but it is also a quick and easy way to verify that everyone has update access.
Resources
Defining a Git Workflow (Chingu Handbook)
Objective
Every project is created using a specific combination of programming language(s), libraries, and tools. As a team, agreeing on these is one step in making sure the application you create will be consistent, supportable, and maintainable.
How
Developers are the primary decision makers for the choice of a Technical Stack, but teammates in other roles are contributors by asking questions to help them make sure they've made the best decision for the team.
- As a team meet and discuss the various options available to you in either your team channel, a realtime meeting, or both.
Resources
Overview_Video_Sprint_2.mp4
Objective
The Product Backlog defines what needs to be completed to finish the project and to track your progress.
If you are creating your Voyage project based on specifications provided by Chingu you don't need to wait until Sprint 2 to start this task. Instead, get ahead and start it during Sprint 1.
How
- Identify & prioritize features
- Create an epic for each feature
- Choose the highest priority epics & divide them into user stories
- Add your epics & user stories to a backlog tool. In prior Voyages, teams have used tools like Jira, Miro, GitHub Projects, Trello, and others as well.
- Prioritize the user stories
In every Sprint you’ll refine the Product Backlog as you refine your requirements and as you discover more about your technology stack.
Resources
Define Your MVP
How to Create a Product Backlog (video)
Agile Methodology 101 (article)
Objective
Create a common understanding of the information and actions on each screen.
If you are creating your Voyage project based on specifications provided by Chingu you don't need to wait until Sprint 2 to start this task. Instead, get ahead of the game and start it during Sprint 1.
How
- Decide what screens you’ll need and the information on each one based on the features you have identified.
- Map the actions users will use to perform activities and navigate from screen-to-screen.
- Create a low-fidelity wireframe using pencil and paper or a tool like Figma.
Resources
If you are in a Voyage team without a UI/UX Designer this guide can help your team create a design.
How To Wireframe A Website in 3 Easy Steps
Overview_Video_Sprint_3-5.mp4
Objective
Create your app by using Agile and the Scrum framework. At the end of each
sprint you should deploy your app to the main branch in your team repo and
to your production webhost.
How
- Sprint Planning - Select the highest priority tasks the team can realistically complete in the sprint
- Post Daily Status - Communicating & collaborating with your team is the
most important factor to success. Post answers to these questions in your team
channel every day:
- What tasks have I completed?
- What am I currently working on and what will I work on next?
- What issues or blockers do I need help with and from who?
- PR & Deploy - As team members complete tasks they should create PRs for
review and deploy the app. Remember that at the end of each and every sprint
you should PR completed changes from your
developmentbranch into themainbranch and deploy it to the Internet web host you've chosen. - Sprint Review & Retrospective - Meet at the end of each sprint to review how the team worked together and the processes you used. Make modifications as necessary to improve what didn’t work well and reinforce what did work well.
Many teams have found the following meeting advice helpful:
- Schedule a Sprint Planning meeting at the beginning of each sprint, ideally on Monday, which is the first day of every sprint.
- Schedule a second meeting later in the Sprint for a combined Sprint Review and Sprint Retrospective. Remember these are two separate meetings, so take a five minute break between them and have separate agenda for each.
- Post your status daily in your Team Channel and use the audio/video channel we’ve created for your team for team meetings, ad hoc discussions, and pair programming.
Pro Tip! Schedule meetings to repeat on the same day and time in each Sprint so you only have to schedule them once.
Resources
How can I share Daily Standup status in my Team Channel?
Agile Methodology 101 (Chingu Handbook)
How to Plan a Sprint (video)
Schej meeting availability tool
Plagarism caution & advice
The following read-only document templates will be placed in your repos docs subdirectory at the start of the Voyage.
- Team Decision Log template
- Meeting templates - Sprint Review, Retrospective, & Planning
- Meeting template - Open Topic
Your_Guide_to_Sprint_6.mp4
Objective
The team’s goal in Sprint 6 is to wrap up the project & celebrate your success.
How
flowchart TB
A(["Complete your MVP"]) --> B(Join the Chingu</br>Discord Server);
B --> C(Make sure your readme.md is updated);
C --> D{PO & SM: Agile Leadership mini Course on EdApp completed?};
D -- Yes --> E(Final deployment your Internet host);
D -- No --> F(PO & SM: Complete your the course);
F --> E;
E --> H(Submit your</br><a href='https://forms.gle/zjc4F3fauDiwiz1H9' target='_blank'>team project</a> for review);
H --> I(Submit your</br><a href='https://docs.google.com/forms/d/1U9WxiY4QSSkIwYJTDyHQBV02NSzvi0Lj_3wWo9GlLrM/' target='_blank'>presentation</a> for Demo Day);
I --> J(Share your success on LinkedIn and other social media);
J --> Z([End]);
Only one Voyage Project form is required per team and any teammate may submit it. This is separate from Final Project Presentation, which is only applicable to Scrum Masters and Product Owners. More information is shared in the Agile Leaders channel on Discord.
Chingu's Agile Leadership team will post information about our Demo Day event, including its schedule and location, in Discord during Sprint 6.
Two other optional activities you should consider to share your success with others, including potential employers, are:
- Create a Showcase video on YouTube!
- No more than 5 minutes long
- It should be available via a publicly accessible URL
- Answer these simple questions:
- What did we build?
- Who participated in the team?
- What technology stack did we use?
- What did we create? Demo the app
- Write an article about your experience for the Chingu page on Dev.to or Hashnode (see Resources below)
Resources
We know you have a lot of questions about our Voyages. Here are a few of those we hear most frequently.
What Level of Commitment is Required for a Voyage
What are the criteria for successfully completing a Voyage?
How do I check my Voyage Status?
What Does a Voyage Cost?
How should PO's and Scrum Masters work together?
What are the roles in a Voyage team?
What are the tiers in a Voyage?
How can I choose my Timeblock?
How are Voyage teams formed?
What "Soft Skills" are needed?
What if I need more skills?
What git & GitHub knowledge will I need?
How should my Team select a project?
How should PO's and Scrum Masters monitor the project?
How do I make a voice channel for my team?
What should I do if I don't have access to my team repo?
How can I share Daily Standup status in my Team Channel?
How can I “pin” messages to my Team Channel?
Which team role is the most important one?
My team doesn't have a Product Owner. What should we do?
Titan - User Status & Ticketing System
Do PO's need to be able to develop code?
How can PO's keep from getting overwhelmed?
How can you improve your approach and identify areas for growth?
Stay tuned for new content!


