Imagine you’re an Uber Driver. You’re asked to collaborate with other Uber Drivers that you’ve never met before to assemble a package and then move it from point A to point B (and maybe even C), changing hands between each of you multiple times. You need to do this reliably over and over again and be better than FedEx. Sounds tough, right?
That is essentially what we do at Gigster, except instead of drivers and packages, we coordinate complex, high-stakes software projects with flash teams of brilliant freelance software engineers, designers and developers all around the world. We build tools, systems and frameworks to help them be more efficient and de-risk the various aspects of delivery. And when it all works well, it is a magical experience for everyone involved.
Successful, collaborative, team-based work – often called Gig Economy 2.0 – has markedly different dynamics than single-provider work, so we’ve had to pioneer these models and want to share our lessons with you.
Team members on a flash freelance team, especially if the project spans several months, need to be motivated to do their best work over a long period of time. In order to do this, the team needs to be deeply invested in the success of the project and to really feel its importance to both the customer and the platform provider (like Gigster). Exposing the team to high-level organization KPIs and objectives and driving empathy to overall business goals and context is really helpful here to build trust and commitment.
In addition, designing incentives for a) delivering quality work with high velocity and 2) staying with the project to completion ensures that the team is retained and does their best work, which in turn makes them feel good about their experience. It’s also really important to give senior or high-performing team members more responsibility and the chance to manage and oversee various aspects of the engagement. Just as in any work environment, feeling more ownership and control over outcomes yields better productivity and satisfaction.
Some things we’ve done internally on larger projects include having team leads for each software platform and designating a lead product manager who coordinates products across all the concurrent workstreams within the project. This is part of a larger vision to give Gigster network members a sense of career progression and growth as freelancing becomes a mainstream viable alternative to conventional careers.
Communication is critical in reducing potential friction incurred in a distributed, freelance team. Setting clear expectations upfront on how communication will flow, cadence of meetings and responsiveness requirements from team members helps set up a project team for success. Using a synchronous messaging tool like Slack help builds rapport day-to-day and allows for quick chats, while Video Conferencing tools are great for deeper dives and interactive conversations. You also want to make sure all communication is clear, crisp and all stakeholders understand what is expected of them at all times.
Maintaining a current list of action items and owners in addition to development-related tasks in a tool like JIRA helps provide transparency and accountability and steadily burning these down builds momentum. Celebrating team members completing their tasks adds to morale and implicitly sets high standards for the others. Reports on sprint performance/burndowns that are visible to the entire team further reinforce accountability.
Document everything. We’ve learned that rigorously documenting everything – owners, account credentials, process flows, code, dev-ops and technical decisions – is extremely important to make sure everyone is on the same page and to streamline onboarding new resources as quickly as possible. Documentation is important inside of any organization but especially when you have engineering teams that we can flex up and down in size based on demand, much like an AWS for talent, and so we need to ensure that team members can integrate into existing workflows, processes and code seamlessly.
Likewise, standardizing deployment and DevOps workflows is really important to get new team members up and running immediately. We’ve also started using standard templates for organizing our JIRA/Confluence boards, epics/stories and repositories so any Gigster can be dropped into a project and navigate his or her way around. Our proprietary software development tools allow Gigsters to maintain similar workflows and toolsets across multiple gigs, which reduces the context switching cost.
Without the ability to chat frequently in person, it’s important to plan ahead to make sure you have a good handle on resourcing needs, on anticipating risks, and on being proactive about getting generally getting ahead of problems on both a team and customer front. We found a powerful combination in separating some of these responsibilities out of the Product Manager role and into a separate Engagement Manager role. This role, armed with a clear account strategy and program and resourcing plan, helps with getting ahead of any potential team churn issues and centralizes the understanding of stakeholder dynamics and commitments across both the Gig team and the customer.
The team needs to trust each other as they delegate work to each other, and you can always see much smoother collaboration as this builds up. Knowing that you can rely on a teammate to get something done helps grow that trust and on our network teams, we’ve adopted a number ‘rituals’ to foster culture. These teams are really like tiny startups that need to work together productively for ~6-18 months.
Once you look at them from that perspective, the importance of a sense of shared values and culture shines through. In addition to stand-up meetings daily, we have weekly retrospectives which are a safe space for the entire team to talk about what went well, what didn’t go well and what is on the team’s mind.
Usually, each team member on the team takes turns chairing the retro session. We also assign action items here and follow up on these every week. We also have design syncs every sprint for the developers to provide input to the designers on both technical and general product feasibility. This also helps develop empathy for other role types on the team. Finally, fun is important too. Gigster teams liberally adopt GIFs, inside jokes and custom emojis on the team Slack to lighten the mood and bring folks closer together. And when and where we can, we try to get teams to meet face-to-face, celebrate wins and award them with swag and prizes.
These are some of the things we’ve seen that translate to successful gigs on our network and, broadly, successful freelance team initiatives. From a freelancer's perspective, having a great team to collaborate with adds many more dimensions to freelance work and the chance to make great friendships, find co-founders and future colleagues from the community.