Development teams go through a lot of change regularly. New projects, clients, and product iterations could make any team feel unorganized and unable to work effectively. We as a product team know this all too well.
We decided to come together and ask each other what advice we’d give to others based on our past experiences during challenging times. Through our brainstorming, we’ve come up with five different things that changed how we work as a team, as well as some things we are thinking of doing differently.
1. Work on one thing at a time
It’s a challenge for development teams to take on large projects from clients when it feels like you need to do all the work at once. It might sound simple, but work at one thing at a time, complete that thing, test that thing, deliver that thing, then do the next thing. Rinse and repeat.
“When I’m working on a task that requires deep focus, I always try to minimize distracting notifications. I’ll snooze or quit Slack, make sure my email and calendar notifications are disabled, and quit any applications that might trigger a bouncing dock icon. I also save complicated and time-consuming tasks for days that are light on meetings – it’s always hard to focus when you know an interruption is approaching,” Jeremy Kratz, a front-end developer for DoneDone, said.
2. Build real relationships
Work relationships are already a challenge and it’s compounded even more so when you’re a remote team, just like us. What we’ve found to work is to build relationships with one another. Genuinely connect with one another. Talk about the work you’re doing, sure, but also ask how the kids are doing in school, what they are thinking about for lunch today, and even what they did on the weekend. While it may not seem important to your job, it is!
You’ll learn about their strengths, weaknesses, preferences, personality, and work style. Knowing more about each of these areas with each of your development teammates will allow everyone to better position the team to succeed. It’s also important to develop camaraderie and recognition inside your development team. We believe in this so much so that our founder, Ka Wai, wrote a blog post on it here.
3. Consider an agile development team
Waterfall feels like you’re drowning? Maybe agile development is where your team should go. Chances are, if you aren’t a part of an agile team already, you know someone who is. With agile, software is developed incrementally rather than all at once, allowing us to, you know, work on one thing at a time.
“Waterfall plans out the entire production schedule beforehand, and if one or more items fall off of that plan then it oftentimes impacts the rest of the schedule, sacrificing quality or missing deadlines,” Gina McCarter, senior digital project manager with DoneDone, said. “With Agile, the approach is to keep things constantly shippable, allowing teams to bite off small increments and complete them in their entirety, to keep the integrity and quality of the product intact and deliver frequent, valuable progress throughout the production cycle.”
We would be lying if we considered moving to the agile method an easy process, but the consideration is! We’ve taken the plunge ourselves (and we’ll tell you about it soon enough). If you want to learn more about agile development, here’s a great resource to get you started.
4. Communicate often
While some teams can meet often and not have results, others could barely meet and be on the same page. It’s important to note that what works for us, may not work for you. We use a suite of software, apps, and processes to keep our team moving in the right direction, including Basecamp, Slack, DoneDone and Google Hangouts.
There is a rhyme and a rhythm to be developed with both communication and coding your software. Different teams from different companies will find different communications solutions. Truth be told, we use all of these mediums and processes to better communicate within our team. Trying out new modes of communication, whether it’s an app, or process, or something in between, will only make your development team stronger.
Be sure to be cognizant of what you’re doing, however. If something isn’t working, cut it and cut it quickly. There is nothing worse for team morale than to keep ineffective methods of communication around just because.
5. Break up the team
Depending on your current structure, organizing your development team may rely on restructuring. While it’s great to have large teams work together to move products and features forward, no team is too big to fail. Typically, a team of 20 developers will pose a communication and organization challenge that won’t outweigh the costs.
What if you took your 20 developers and broke them into smaller development teams of 5-7 developers? While still working towards the larger goal, smaller teams will create a more easily organized team.