Student Project Spotlight

The Opportunity Project: What Justin Built at General Assembly

By Jess Feldman
Last updated on November 17, 2022

When COVID hit, Justin leapt at the opportunity to pursue a career in software engineering. He chose the online Software Engineering Immersive bootcamp at General Assembly (which he could attend from his home in Seattle). And after graduating, Justin got an internship with the U.S. Census Bureau to build a cross-functional app for The Opportunity Project, a platform to turn federal open data into new technologies that solve real-world problems. Today, Justin attributes his career success to the internship combined with the skills he learned at bootcamp. Justin walks us through what he built for The Opportunity Project and how he landed his job at SMART Charts.

💸  Course Report is excited to offer an exclusive General Assembly Merit Tuition Discount of up to $1,000 USD towards their full-time immersive programs! Apply here by January 31, 2023. 

What inspired you to launch a career in software engineering in 2022?

The journey started over a decade ago in my early teens, my MySpace days, learning simple HTML and CSS. My brother became a software engineer and encouraged me to understand simple concepts at a young age. I found myself going back to that coding background over time. Before the coding bootcamp, I did research and basic software engineering for the lithium ion world. When COVID hit, I realized it was the perfect time to make the leap into something I had wanted to do for a long time!

When researching coding bootcamps, what stood out about General Assembly?

The biggest thing that I needed to feel confident in a bootcamp was that it had a solid reputation and would support job placement. After talking with their recruiters, I felt the best moving forward with General Assembly!

What did you learn in the Software Engineering Immersive curriculum?

General Assembly teaches you how to think like a programmer. There are infinite tools to learn in the software engineer’s world, so it's hard to create a software engineer from scratch. They taught us how to think like a software engineer from day one and built upon that. The best part about General Assembly is that I was given the ability to learn — to know what to look for, when to look for it, how to look for it, and how to decipher and solve bugs!

Since this was an online bootcamp, did you feel connected to your cohort and your instructors?

That was the best part! I made some of the best friends at General Assembly! We bonded over the mutual experience of struggling through the immersive program. We still have Discord channels and talk to this day. 

Did you work on a lot of projects in the Software Engineering Immersive?

We did four total portfolio projects, including a capstone project. We also always found ourselves tinkering on a side project to better understand the fundamentals of the topic we were in. Right after graduation, I applied for the internship through General Assembly with The Opportunity Project for the U.S. Census Bureau.

Tell us about The Opportunity Project – it sounds like such an interesting data initiative! 

It was really exciting to be a part of — it's always nice to be surrounded by people that are so devoted and passionate about what they do! After I graduated from General Assembly, I was looking to dive into an internship. Our instructor, Becca Rogers, announced that General Assembly was partnering with the US Census Bureau and The Opportunity Project to form three teams of 15 recent General Assembly graduates in data science, UX/UI design, and software engineering. The internship was open to over 2,000 graduates, and anyone could have applied for it, but they preferred new grads. It was a fantastic opportunity so I applied and was fortunate enough to get the Lead Engineer position for the software engineering team! 

What did your team choose to build for this project?

Our goal was to tackle the environmental remediation sector and the newly signed infrastructure bill. We had a subset of grants that we needed to hone in on, and we worked with the UI/UX team to develop the best tool we could think of. Then the UI/UX designers talked to advocates and users on the best tool to create. It was a pretty tedious process! Ultimately, we decided to go with a web app that would introduce new grant opportunities to applicants, called Grant Guide. 

What are the main features of your app, Grant Guide? 

With Grant Guide, users can search for grants, and the search results are pulled from public resources that were given to us by the US Census Bureau. Users can save a grant so they can keep track of their searches. Our app includes a fuzzy search, so even mistyped words still bring up the most accurate available grants. Part of the project was utilizing tools they had, to see what we could do with them. There was a lot of improv, Agile development along the way, seeing what we had and how we could incorporate it. 

The Grant Guide web app also offered a service to volunteer groups who had experience working in these grants. We provided a live chat service for volunteer mentors to connect with new users applying for the first time to give them as many tools as we could to best serve their communities. Volunteers can sign up as a Grant Guide, provide their experience and background, and best link with new users.

What technologies and programming languages did you use to build your project? 

The code for Grant Guide was shared through GitHub. I personally managed the GitHub, so anytime someone needed to push code, pull code, or commit code, I used the workflow that General Assembly taught us, and it’s what I use in my job currently! GitHub is the easiest way to manage an ongoing software project. 

We built the sign-in from scratch using JSON web tokens, which General Assembly taught us. It authenticates a unique user any time someone logs in. If they continue to be a user, we'll find that token, authorize them as that user, and go forward. 

The chat feature was built using web sockets and was my personal project in the internship. I had never built a live chat service, so it took a lot of digging to learn about web sockets and how they work on the front end and back end. We were taught an introduction to web socket logic at General Assembly, but not extensively. 

We chose to use the MERN stack, which is MongoDB, Express (for our server-side logic), React for our front end, and Node.js. The MERN stack is the most marketable stack currently — it’s what General Assembly teaches and what got me hired!

Did you have any experience like this through the General Assembly bootcamp? 

Nothing prepared me for it, honestly! I wanted to feel uncomfortable in that production environment and have to learn a lot quickly. We decided to cram in as much functionality as we could. Our advisors were a little nervous about whether we’d get it done, but it pushed us! Ultimately, we gave a really good proof of concept.

How much time were you given to build the web app? 

We were given five weeks that they extended to six because all three teams showed so much passion and initiative. They said the expectation was only 15 hours a week, but I don't know a single person who didn't put in more than 40 hours a week. Our biggest focus with such a short time span was to provide a proof of concept, to let someone know that with more time we could build it out to a more advanced tool. 

What was your biggest challenge while building this project?

It was hard to get started and navigate where to go from there. All of us were fresh graduates who didn’t know the workflow of a production environment, which was the hardest part, but we collectively decided we’d figure it out as we went! Outside of that, everyone on the team did their part and communicated well. I felt fortunate to be on that team. Everyone stepped up and was ready to tackle the problems that we had, which were different every week. 

When you ran into an issue as you were building your project, did the General Assembly instructors help you?

We had to figure it out on our own without help from GA instructors. However, we were provided other GA alumni mentors that we could reach out to with any technical questions. They had their own jobs so they couldn't actually code with us, but they would offer 30-45-minute meetings for us to run over a list of questions. This was a wonderful experience for professional development. In the professional world, you need to try to solve the problem yourself, get a list of specific questions that pertain to your problem, meet for 30-45 minutes, then try to solve the problem again on your own. 

Since this was a project through the US Census Bureau, did you end up working with anyone from the US Census Bureau?

The Opportunity Project and the US Census Bureau were wonderful advocates to work on logistics and communication. Once every two weeks, we had a big meet-and-greet with the whole team, then we had a few advocates from the US Census Bureau that were mentors for us, who we could reach out to with questions regarding the environmental remediation aspect. 

Did you showcase this project in a Demo Day at General Assembly? 

Yes, it was all building up to two demo days. The first demo day was an open invite and over 200 people were there! General Assembly has done this internship a few times before and this was the largest turn out they’d had! You could definitely feel the pressure, but it was great.

The whole internship is essentially built around a long-term hackathon. General Assembly wasn't the only group involved – there were professional software engineers in eight or nine teams involved in this project. They had 12 weeks while we had just six weeks, and we were competing to win this hackathon through the US Census Bureau. 

Our Grant Guide project now has taken the next steps with some of the members from our original team, and they're seeking funding now and continuing development, which is really exciting!

You recently landed your first software engineering job at SMART Charts — Congrats! Overall, how did General Assembly prepare you for the tech job hunt?

General Assembly provides every resource for students to take advantage of. Ultimately, it is on the individual to do the work; they won’t find a job for you, but they’ll do everything else they can. My career coach was amazing. Whether I needed a therapist or a pep-talk, she is always there. Once a week, we meet with others from the graduating class to check in and make sure we’re taking the right steps and talking to the right people. We are given direction, but ultimately finding a job is unique to the individual. If we needed advice, we always had our career coach to go to. 

Did you speak about this Census Bureau project in your job interview for SMART Charts?

I believe this internship was the reason why I got interviews and found employment so quickly. I recommend to any recent grad to find an internship as soon as you can to get that professional experience. I saw a significant uptick in even getting an email back about setting up an interview after I finished the internship.

Was SMART Charts interested in your General Assembly bootcamp experience, too?

Absolutely. Bootcamp graduates are unique because we show that we are able to take three months out of our lives to dedicate to a new career. In college, there’s more time spent figuring out what you want your future to be. Bootcamp grads have decided they want this career, they’re willing to risk three months without a personal life to make it happen, and they have proven they can learn quickly. That experience is invaluable in the job market. 

Do you have any advice for future General Assembly students? Anything you wish you had known before you started?

You have to have the mindset that you will make this happen, knowing there are no other options. It is very hard, which everyone knows, but it was much harder than I expected, in the best ways. It challenges you, not only educationally, but as a person. You're going to question whether this is the right decision and you have to ultimately decide to yourself that it is and that you're going to make it happen. Outside of that, it's just learning and time in front of the computer and figuring it out.

At this point in your tech career, was General Assembly worth it for you?

Absolutely! The cost of admission, the value I got out of it… It's hard to put into words. The experience was worth every penny and every hour put into it. 

Find out more and read General Assembly reviews on Course Report. This article was produced by the Course Report team in partnership with General Assembly

About The Author

Jess is the Content Manager for Course Report as well as a writer and poet. As a lifelong learner, Jess is passionate about education, and loves learning and sharing content about tech bootcamps. Jess received a M.F.A. in Writing from the University of New Hampshire, and now lives in Brooklyn, NY.

Also on Course Report

Get our FREE Ultimate Guide to Paying for a Bootcamp

By submitting this form, you agree to receive email marketing from Course Report.

Get Matched in Minutes

Just tell us who you are and what you’re searching for, we’ll handle the rest.

Match Me