Festa
Discover Electronic Dance Music (EDM) concerts and music festivals
Problem Space
Fans of Electronic Dance Music (EDM) often miss out on relevant concerts and music festivals in North America: once they become aware, it’s too late or expensive to attend.
Problem Background
Music festivals and concerts are on the rise worldwide, as the world starts recovering from the Covid-19 pandemic. Becoming aware of events is still a challenge, though. In special for fans of Electronic Dance Music (EDM): 83% of respondents to an online survey we conducted (25 respondents) have reported that social media is their main tool for discovering relevant events and concerts. That process is demanding and time-consuming.
As venues start reopening fully with fewer restrictions and artists doing more tours, starting to develop such a website now would be great timing. With over decades of no changes in how friends, family, and even music-goers go about finding music festivals, and concerts, the time has come to bring the festivals and concerts to them.
Research Insights
Through both primary and secondary user research, we found 3 main user pain points.
User Pain Points:
- It can be a hit or miss with finding upcoming events on social media since users need time to plan for these events and find available tickets
- Inflated ticket prices was a cause for concern as TicketMaster controls most of the market in North America causing users to be unsure of where to buy event tickets to the concerts or music festivals they located and wanted to attend
- Not knowing about upcoming events that are suitable for the user’s schedule and preferences lengthen the time they spend to find events when they could be using that time to plan out travel accommodations and event details
User Feedback:
Our preliminary user research validates the problem of accessibility and discoverability of events, specifically music festival, and concerts. We learned that:
- Users just want to get the information they need so they can start the planning process of purchasing tickets and arranging accommodations.
- Users are stressed and frustrated when they can’t find the right information about an event only to find out later that there are no available tickets.
- The cost factor of these events from buying the ticket to planning and attending the event plays a huge factor in the user’s overall experience.
Solution Explanation
To increase the discoverability of EDM music festivals and concerts, Festa is an entertainment aggregator that allows them to find events to attend. Unlike a Google search, Festa recommends events for EDM fans in North America to attend, based on their location and favorite artists. This will give users more time to plan for the event and decrease the time searching for their next music experience.
Lofi Mockups
Hifi Mockups
Iterative Design Learnings
After we showcased our prototype to the users again, we learned that:
- Some users questioned how the onboarding screens were related to the landing page regarding the “Recommended for you” and “Upcoming Events”
- When users have an event in mind (location, artist, date, etc), they typically go straight for the search bar to find those events faster
- If the user does not have an event in mind and wants to explore their options, they will browse the events on the landing page
- The artist page has low visibility to users who are only interested in finding events for certain artists
Main Design Changes:
- Include a carousel of followed artists on the landing page to increase visibility
- Improve UX writing on the landing page
Implementation Details
Technical implementation
This project was implemented using Typescript which is a superscript of JavaScript. TypeScript ensures an implicit checking of implementation which makes it less prone to error. On the backend side of the project.
Where is it hosted?
The backend API is hosted on Heroku, While the frontend is hosted on Vercel.
What is your tech stack?
Programming Language: JavaScript (TypeScript) and React on the frontend.
Database: MongoDB and Mongoose -Object Document Mapping (ODM).
Microservices: Separating user, admin, and notification services for scalability.
Bullmq: A queueing technique used for sending data asynchronously through different services without no delay if any of the servers of the services is down.
Technical challenges
What was the hardest part of development?
The critical thinking of how the data structure will be built on the API level end.
- On the frontend, the hardest part was consuming the backend API. Another major challenge I faced was actually making the website responsive.
Does your app have any scaling issues?
It might eventually have based on the data sending or receiving but we can incorporate Redis which is an in-memory database in the form key-value pair and helps to keep data in the cache which retrieve later for faster responses.
Future Steps
Although we will not be continuing the development of Festa after Colab, we learned how to manage product development within a short period of time with the resources available to us.
Learnings
Product Manager Learnings:
Brannon Tucker
I have learned a lot through this experience on what it means to be not only an effective PM but what it means to find the right problem to solve. Working closely with a designer and multiple developers to make your vision a reality is extremely rewarding. From concept, mockups, and customer and competitive research, to a fully working product is a huge personal accomplishment.
Designer Learnings:
Pa Chang Vang
I learned that good design comes from extensive user research to fully understand the user’s pain points and needs. By putting most of our efforts into user research, and defining and identifying a feasible problem space, I was able to design a product that aligns with the product manager’s vision and is feasible to build by the developers.
Designer Learnings:
Jo Sturdivant
- Adapting to an Established Team: Joining the team in week 6 of 8 was challenging, as I had to quickly adapt to existing workflows, dynamics, and goals. This mirrors real-world situations where you often integrate into teams mid-project, and flexibility is essential.
- Work-Blocking for Efficiency: With only two weeks to complete the project, I learned the importance of a structured work-blocking system. This approach allowed me to manage my time effectively and meet deadlines under pressure.
- Making Data-Driven Design Decisions: Unlike my past projects, I had to rely on research conducted by others. This was a valuable experience in using pre-existing data to guide design decisions, helping me focus on the core insights without starting from scratch.
Developer Learnings:
Abiodun Alao
- I learned more about understanding the business logic of a design before implementing it on the API level for easy development.
- I also learned to work closely with the frontend engineers to communicate effectively and both understand how the API looks and what is expected.
- I also learned to communicate regularly. No matter the progress of your work ensure you are been render assistance where required to help you move forward in your development process.
Developer Learnings:
Vanady Beard
&
As the back-end developer, I learned how important it is to create efficient and reliable systems that support the entire application. This experience also taught me the importance of optimising the database and ensuring the backend is scalable and easy to maintain.
Developer Learnings:
Stephen Asiedu
&
As a back-end developer, I've come to understand the importance of being familiar with various database systems and modules. This knowledge enables me to build diverse applications and maintain versatility in my work. I've also learned that the responsibility for making the right choices rests on my shoulders, guided by my best judgement.
Developer Learnings:
Oluwanifemi Latunde
&
- I have learned how to better consume APIs either using axios or fetch.
- I have also learned that it’s best to speak up early whenever I am having any blockers and communicate with the backend developer regularly.
Developer Learnings:
Maurquise Williams
&
- Process of Creating an MVP: Developing a Minimum Viable Product (MVP) taught me how to focus on delivering core functionalities balancing between essential features and avoiding scope creep.
- Collaboration in a Real-World Tech Setting: This experience taught me how to collaborate efficiently in a fast-paced tech environment, keeping the team aligned and productive, even while working remotely across time zones.
- Sharpening Critical Thinking and Problem-Solving Skills: This experience honed my ability to think critically and solve problems efficiently. By tackling challenges and finding quick solutions, I sharpened my decision-making and troubleshooting skills in a dynamic, real-world setting.
Developer Learnings:
Jeremiah Williams
&
All in all this experience was very awesome I learned that in coding with others being transparent is key
Developers Learnings:
Justin Farley
&
I learned how important communication is when working with a team. Communication provides understanding, advice, ideas, and much more. While working with the product team, I’ve found that communication keeps everything flowing smoothly. Working with a team also showed me that every member brings something different to the table and we all have to work together in order to align and meet our end goal.
Full Team Learning
We learned the importance of communication and accountability while working in a team both asynchronously and synchronously to design and build a product. Despite not being able to fully complete the development of Festa, as a team we can see our growth and progress made since the beginning of this cohort.