Site icon Accidentally in Code

Running an Effective Mobile Team, Part 1

Shopping Cart Shopping Cat Figures Curious Danbo
Credit : Max Pixel

When talking about team effectiveness, the first thing to consider is what an effective team looks like.

Predictable. The team has a regular cadence. They can set goals and expectations around deadlines.

Clear on priorities. When you ask people what is most important and why, they can answer.

Connected. People work together and take an interest in each other (this doesn’t mean everyone has to be friends – but they are friendly).

Automated. Time has been invested to automate repetitive tasks, reducing the number and amount of time spent on “team chores”.

Accountable. People can have expectations of each other. This includes leadership.

What constraints do we have on mobile that effect these things?

Often people look to technical solutions for this. They think that the mobile team could move faster if they just adopted some latest new shiney, like, say, ReactNative.

But…

I’m kinda hating on React Native here. For some teams it makes sense. Artsy wrote about how they use it for an API driven iOS app, which was interesting. So basically if your app mainly displays content. It may not make sense if you:

Whilst the Artsy article made a decent case for iOS in certain circumstances, it’s not a good case study for a genuinely x-platform experience.

In the long run, we hope to extend this way of working as we start work on a React Native Android client.

To really shine with React Native, you need native experience. JavaScript has not eaten everything yet. However, you don’t need a team of native experts. For example, we expect to be able to get quite far with Android support based on our work in React Native, but to make it amazing, we will need someone with history and context in the space.

Android has some different performance issues, so I wasn’t surprised to see this comment in an otherwise glowing report about ReactNative on iOS.

Unfortunately Android devices have much greater variance in performance and tend to trail significantly behind iOS. We were able to get our app running fairly quickly, but the performance — specifically on touch events was not at an acceptable level even on higher end devices. In addition at that early stage there was still a lot missing in the React Native Android feature-set that would have made getting our prototype to production level more time consuming than our iOS effort.

So if React Native isn’t the answer, what is?

The issues facing most mobile teams are not technical, they are personal. If you are the size of Facebook or Google, you can afford to try and create technical solutions to social problems. The rest of us can’t.

This series continues next week – we’ll cover creating predictability on a mobile team.

Exit mobile version