Managing Cross-Functional Teams: Lessons Learned from Building a Music App
Successfully managing front-end and back-end teams towards a common goal
Table of contents
No headings in the article.
Introduction:
Dealing with different departments and skill sets can make managing cross-functional teams seem like an overwhelming responsibility. However, it can be a productive and seamless process if you have the right approach and tools in place. In this post, we will explore a recent task we worked on, the challenges we encountered, and how we successfully delivered the project.
Project Overview:
The project was to manage the engineering team to build a music app that allows users to sign up, create playlists and favorite songs. The project was assigned to multiple teams with different responsibilities, including the front-end team responsible for implementing the web version of the music app and the back-end team responsible for building the server and database.
We, the product managers kicked off the project by defining the project scope and features required to build the app, which were assigned to each team to define user stories and acceptance criteria. The Jira workspace was set up, and team members were on-boarded to the workspace to begin the process of managing cross-functional teams.
Front-end Team:
The front-end team was tasked with implementing the web version of the app. During the first sprint planning meeting, they gave more insight into the development of the app based on the list of prioritized features. A workable roadmap was developed with the front-end team delivering a substantial part of the app by Friday. The backlog already created in Jira was populated with the user stories and acceptance criteria for the features assigned to each team.
During the stand-up meetings held each day, the front-end team presented the screens completed, which delighted the entire team of product managers. The sprint review meetings were used to match the work done by the front-end team and the acceptance criteria already itemized for each feature in the backlog. The Engineering team was on-boarded to the workspace to help them understand the Jira Workspace and particular product management terminologies like user stories and acceptance criteria.
Back-end Team:
The back-end team was tasked with building the server and database. During the first stand-up meeting, they presented what needed to be done to fulfill the task at hand. The team lead gave a list of the deliverables, which included creating a user database, writing the API to take data from the front-end into the database table, designing the login page to check if the record is in the database, and creating a table to store music files.
However, during the stand-up meeting, the back-end team could not deliver a progress report as they were not in attendance for the meeting. The team communicated a change in the task assigned to them during the Thursday review. This brought to the fore another challenge as we had to understand what the new task was and how to go about it.
Overall, the experience was challenging and exciting and it was an eye-opener for us as we realized a lot more has to be done to manage a cross-functional team effectively. The challenges we faced and how we overcame them toughened our skin and gave us renewed assurance that we would handle better any future task with a cross-functional team effectively.
Conclusion:
Managing cross-functional teams is a challenging process that requires excellent communication, collaboration, and teamwork. The success of the project depends on the ability of the different teams to work together towards a common goal.
In this blog post, we are pleased to share our experience in managing front-end and back-end teams to deliver a successful music app project. We hope that our approach will inspire and guide other organizations in managing their cross-functional teams efficiently.