Software Project Overview

The capstone project is one of the most important pieces of landing the perfect LaunchCode apprenticeship. Your project is one of the primary ways that the LaunchCode and potential employers will verify that you are job-ready, and it should be something that you’re proud to show off. So don’t skimp on the time, energy, and thought that you put into this!

Be unique, innovative and creative. Your project should demonstrate meaningful thought and planning, and that you can build software from the ground up.

Note

If you participated in CoderGirl in the UX, Data Science, Data Analysis, or SQL learning tracks then your project will not consist of a piece of software. Discuss project guidelines with your project track mentor.

What a Good Project Does

Your project should:

  1. Demonstrate marketable skills: You want to demonstrate that you have a strong foundation in at least one language that is widely used by professional developers, along with the related tools and best practices. You can apply your programming skills within a professional-grade framework or tools like ASP.NET MVC, Spring Boot, or React.
  2. Demonstrate your ability to learn new things: In your project, you will go beyond your initial learning to teach yourself something new. Maybe you learned Angular.js for your front-end web project, or connected to an API in your back-end Java application.
  3. Solve a problem: When employed as a programmer, you’ll be asked to implement solutions to problems. Your project should demonstrate that you are capable of identifying a problem and coming up with a software-based solution to the problem. For example, creating an app that allows a nonprofit to organize and communicate with volunteers solves a meaningful problem. Creating a Sudoku app doesn’t.

What a Good Project Avoids

Your project should not:

  1. Be a project created via a step-by-step tutorial. Tutorials are great ways to learn, but the programs you create following heavily-guided lessons won’t demonstrate that you can build software independently.
  2. Be something that you built during your learning track. Part of the purpose of creating your own project is to demonstrate your creative and problem-solving skills, so come up with an idea that is original.

We highly recommend putting your project on GitHub. This will make it accessible for others to view, and will show off all of the hard work you put into it as you rack up commits!

Tip

If you did not learn how to use Git in your learning track, consider learning it now.

Do I Have A Good Project Plan?

Regardless of the project you tackle, you should:

  • Build an application entirely yourself, or nearly so. If you use starter code, you need to go well beyond what was provided or worked on by others. You should be able to clearly articulate what you built yourself versus what was built by others.
  • Include 3-5 solid features. Each feature should add a significant new component to your project, but also should be so big as to take you weeks to implement. Adding a new button to your web project? Probably not significant enough. Creating a discussion forum? That’s too big. Adding user authentication? Yep, that’s great!