May 14th, 2025, posted in learning
by Adelina
Building B2B software isn’t easy, even more so when multiple unique departments will be using it. You have to find the best ways to make meetings productive, both when brainstorming and when reiterating. Such meetings can run long with no clear conclusion.
Organizing productive meetings is an art in itself, and you can’t expect everyone in your team to be good at it. We’re all human and it’s easy to get sidetracked when having a meeting about building software.
But having a cross-functional team shouldn’t be an impediment: you need all of their input in order to build great software. The trick is finding a good balance between ideas and noise.
So in this article, we’re going to give you a series of tips on how to organize better meetings when building an app, and thus overall improve your workflow and boost productivity.
What qualifies as a cross-functional meeting?
Let’s start with the basics. What does “cross-functional meeting” even mean? In our perspective, a cross-functional team is composed of members having unique roles. For instance, a team of: a software developer, a UI/UX designer, a project manager, and even a CTO.
In our cases, a team such as the example above is the type of team we involve in meetings discussing software projects with our clients. In such meetings, our already cross-functional team often meets a team with the same types of members.
And thus, you’ve got a big group of highly specialized people, where one side will build software for the other. Oftentimes, such software serves the complex cross-functional team we’re interacting with.
The big challenge here is understanding each other and finding the best ways to brainstorm together and come up with good software solutions.
Pick a good leader
You can’t expect just anyone in a complex, cross-functional team, to be able to lead a meeting. Even more so when such a meeting is composed of designers, developers, product owners, CTOs or CIOs, and so on. Not everyone might be social or good enough of an extrovert, especially when faced with a big team from the client’s side.
In order for our other tips to work for you, you need someone apt to keep everything in check, to lead the discussion and bring it back on course when needed.
This can be a project manager, a CTO, a CIO, or whoever in your team is on a high enough level to be able to make decisions, to know what your team does & what it can deliver, and who can work best as a liaison between your team and the client’s team.
The person you choose to lead said meetings should be a good public speaker, punctual, well organized, and good at making plans.
Alternatively, you can select a speaker and someone else to organize and plan the meeting. The speaker will be in charge of putting that plan in place and making sure the discussion stays on course, while someone more technical can plan the meeting discussion itself.
Why can’t it be a senior designer or developer, you might ask? Since they’re highly specialized, they might be unable to see the big picture when discussing a piece of software. And plus, management skills are important when organizing meetings and handling complex teams.
Create a solid meeting agenda
You don’t want people coming out of your meeting saying, “this meeting could have been an email”. Holding meetings just for the sake of gathering people and seeing their faces in tiny boxes is not very productive.
Each meeting you hold, especially with big cross-functional teams both on your side and your client’s, has to have a clear goal: are you discussing design? Are you reviewing something? Are you showing new features coded by your team? Are you just asking questions?
Once you’ve set a goal for your meeting, you can set up an agenda. Here are a few key elements that should go into a meeting agenda:
- Why you’ve gathered. Sometimes you plan a meeting and hold it weeks later, and your team members can get really busy. Starting with a reminder as to why you’ve gathered in a meeting is a great way to get everyone focused.
- Who gathered. This is especially important when your team and your client’s team meet each other for the first time. Or any time you introduce someone new to the mix. Introduce yourself and your team members, and then ask your client to introduce their team as well. This way, you’ll also know who to address when discussing something highly specialized.
- What you’re going to discuss. Once you’ve told everyone why you’ve gathered, quickly list that meeting’s discussion points. This will help everyone mentally prepare for the discussion, and it also serves as a meeting schedule that you can follow as you go on. Plus, it’s a good way to ensure you cover all the topics you want to talk about.
- Assign people and set deadlines. It’s no use talking about what you have to do if you don’t assign tasks to specific team members, or settle on a timeline. Once you’ve done so, everyone will come out of the meeting knowing what they have to do next.
- Leave space for questions, feedback and concerns. This tip goes 2 ways: definitely ask either your team or the clients if they have any questions, concerns or feedback. Second, make sure your meeting plan leaves time to discuss these as well. Otherwise, you risk key stakeholders having to jump onto other meetings and thus having to hold additional meetings or send more emails.
Your agenda should be written and ideally sent to everyone participating before the meeting takes place. Leave space for your team members to contribute with talking points and keep an eye on it during the meeting to make sure it’s being followed.
Keep cross-functional meetings on theme
When holding meetings with a big variety of roles, it’s easy to get mixed up in different topics and discussions. A way to fix that is by assigning time slots to talk about, for instance: app scope, design, development, timeline & deadlines, and then business logistics and/or invoicing.
Having a clear subject guideline is a great way to make sure you stay organized, on topic, and that all team members are ready to contribute when they’re supposed to. This is why it’s important to create a well-structured meeting agenda ahead of time, and make sure you stick to it.
One caveat to have in mind: with a cross-functional team, some members might end up getting confused when your conversation becomes highly specialized. In other words, if developers start talking very technical, a business owner might have trouble understanding. In such cases, make sure to invite everyone to ask questions whenever they get confused.
Here are a few pointers:
- The meeting leader should be willing to interrupt team members when they go off-topic or delve into a subject that can be discussed another time.
- Pay attention to your meeting agenda and eventually create time blocks to discuss certain topics.
- Don’t involve the whole team in discussions they can’t help with, such as discussions about billing or sales. Especially your technical team. The same goes for technical meetings.
- On the other hand, make sure to involve team members whose input you might need in the long run. When discussing a complex app’s user flows, you might benefit from a developer’s opinion as well - invite them to at least a part of the discussion.
- When a discussion becomes very technical, tell your team members to explain in simple terms as well. Same goes for your client’s side: don’t hesitate to ask questions.
- Set time for follow-up discussions among specialized team members, so you don’t involve everyone in conversations they don’t need to be in.
Holding meetings with a complex, cross-functional team, can be a real challenge - but it doesn’t have to be. Planning ahead goes a long way, and so does leaving space for questions.
Keep meetings short and to the point
Meetings that run extremely long aren’t exactly productive. We keep hearing about our attention span being lower than ever, and it’s hard to imagine you can keep a big cross-functional team attentive for 2 to 3 hours.
As much as you think you can get more done if you hold longer meetings (or “workshop” meetings), these can do more harm than good. Not everyone can store as much information in a short period of time, especially when the subject matter is complex.
Most of all, physical needs will always prevail and team members who get hungry or tired during such meetings will inevitably lose focus - and that’s simply human.
What we recommend is:
- If you desperately need to hold workshop meetings to discuss building software, only include essential team members. Don’t involve designers for something that only deals with code.
- If a meeting runs long, offer a 10-minute break for everyone to grab a bite, a glass of water, move their legs a bit or go to the bathroom.
- Get to the point. Discuss the subject at hand and stick to your existing meeting agenda. Of course, this doesn’t include casual conversation at the beginning - you’re still allowed to socialize. What isn’t so productive is dwelling over a subject long after you reached a conclusion, or debating something you don’t have all the answers to.
- Don’t sit in long meetings just for the sake of it. If you notice you’re becoming unproductive, schedule another meeting and regroup with fresh energy.
- Encourage everyone to share their ideas and input. This way you can ensure that your cross-functional team is engaged and that you don’t leave all the talking to just one person.
- In the case of brainstorming meetings, make sure one team member doesn’t overpower everyone else by talking 90% of the time.
- Record meetings if legally possible, and make sure that includes a transcript. This is the best way to take the pressure of note-taking off your team.
But the best advice in this situation is creating a solid meeting agenda ahead of time. With just the plan to hold a meeting, you’re running wild and can go through a million different topics, stopping only when a key team member is pulled into a different meeting. And suddenly you didn’t even cover the subjects you needed to.
Overall, complex cross-functional meetings when building software can be a real challenge, but not if you know how to plan ahead. Keep it simple, to the point, and don’t consider it mandatory to keep everyone from their day to day tasks just to be part of empty discussions.