Comment & Opinion

4 keys to assembling a great mobile tech team

InnoGames' Stephan Dilly on how to build a strong team of developers

4 keys to assembling a great mobile tech team

Stephan Dilly is Head of Frontend Engineering at InnoGames.

InnoGames focused heavily on browser and cross-platform development in the past. Now we’re working on our next hit games in the mobile-only-spectrum.

This change in our goals is also reflected in our technology stack. While we were very fragmented in terms of different technologies, we now focus on current game engine technologies like Unity and Unreal. Switching technologies is always a challenge on our development teams.

This article focuses on four essentials that we condensed to assemble a great team for mobile-only development.

Strong team lead

This kind of challenge results in a lot of pressure on the people in the team. They not only have to come up with a great game concept, they also have to work in a technical environment they are not used to. The team lead is the most important role in the beginning, since he/she is the starting point for the team, and will recruit the rest of the developers either internally or externally.

Their key responsibilities are:

  • Stakeholder Management

This role is in a sandwich position between the team members and the upper project and company management. Sharp communication and presentation skills are required to win both, even in stressful situations, and keep the team committed and motivated while maintaining trust with management.

  • Technical Expertise

This role usually is an expert in either the frontend or the backend technology like Java or Unity. Depending on what expertise the lead brings, one should look for a very senior addition on each side of development to have both areas covered. It is very rare to find someone unifying both.

  • Strong Leadership Skills

This is already mentioned above, but it is very important to emphasise the importance of professional leadership. The more the project progresses, the less the lead takes part in the daily coding business.

InnoGames is now focusing down on development with game engines like Unity and Unreal.

It must be priority #1 to remove all obstacles keeping the team from working. For this, it is crucial to hold regular 1:1s with each team member.

Senior and mentor

After finding someone with the skills to manage the people in the team, it’s important to look for an experienced developer with a strong foundation in the target technology, like Unity.

It is necessary to find someone that is not only a great developer, but also a good communicator and mentor. This role has the responsibility to champion the technology switch.

They receive the trust to design and build the foundation in a scalable and maintainable way using solid and sound software methods.

Aside from programming skills, the senior also mentors the less experienced developers. These can range from entry level junior developers to experienced developers who are currently transitioning technologies.

It is necessary to find someone that is not only a great developer, but also a good communicator and mentor.

Their key responsibilities are:

  • Mentor the tech switch

Historically at InnoGames, we have a lot of experienced developers in technologies like ActionScript and JavaScript who we would like to develop to use our new technologies.

This is where the senior needs to show exceptional communication and training skills. This concept of 'learning on the job' proved very successful to us. We do that after a three-day introductory workshop to get everyone on the same page.

  • Quality first approach

We are focusing on a Quality Assistance Model to migrates the accountability of bug free software back to the developers and evolve our QA Testers to consultants supporting this strategy.

This is not only a switch from a technological perspective but mentally as well. The over-the-fence mentality belongs to the past, and especially our senior developers need to support that since less experienced devs look up to them.

Team mix

After having the lead and the senior, assemble a strong foundation for a team. Start to staff the rest where requirements again change. Add a good balance of regulars and juniors.

At InnoGames, we have a lot of great experienced developers who are keen on switching from older tech like Adobe Flash to Unity, and we of course want to help them migrate. We also want fresh blood on the teams - namely juniors.

The exact balance is tough to find and strictly depending on the personalities on the team. It is all in the mix.

How to mix it up:

  • Company Culture

Create an eco-system where talent is able to move from team to team, as this will enable you to have a consistent company culture which is organic and not manufactured.

InnoGames is plotting a mobile-only future for its upcoming games.

This not only pays off by improving culture it also generates trust and proves that we are willing to commit to employees even in tough situations. This kind of appreciation improves employee retention as well.

  • Fresh Blood

On the other hand, every team will have the natural fluctuation in staffing which leads to look externally for new talent. Don't see this so much as a pain, but as an opportunity to bring someone in who may also be able to see flaws in the daily business with fresh eyes and perspective.

Balance Personalities:

  • The Code Grinder: Who just gets s* done.
  • The High Level Dude: Who takes care of systems and makes sure that everything works together.
  • The Low Level Optimiser: Someone who knows the profilers and machine code, someone who optimises memory usage and CPU cycles.
  • The Communicator: Someone who can translate geek to lead or out of the team.

Have all of these in your team.

Trust and empowerment

Two simple words that make the biggest difference. After you focus on a great balance of technical expertise, developing existing employees, growing motivated juniors and a strong leader that cares for his/her team, you only have one task: Let them work!

Nothing kills motivation faster than micromanagement.

As it is this great team that actually delivers the product, they have to believe in it. And if they do believe in it they will love to work on it. The greatest help we can offer at this point is to trust them 100% and enable them to get the job done.

Of course there are constrains: the genres, time frame, target audience, platforms and so on. But nothing kills motivation faster than micromanagement.

With such an effective and motivated team, there is a chance to end up with a great product – on the other hand, without such empowerment and a team not believing in the product, failure most likely will be the result.

What works for us:

  • Milestones

The team presents regular milestones to the management, including the plan of what to expect in the next milestone. The actual intervals and content can be decided by the team. If done so, the team actually aims for really high goals when motivated.

  • Agile up to the team

We have been very successful working with SCRUM or a combination of SCRUM and Kanban, but ultimately, its actually down to the team to decide on their approach, the one that works best for them.

  • Tech Stack

The tech stack is very flexible. Our older product heavily used PHP in the backend and JavaScript or ActionScript in the frontend.

Newer projects build on top of Java and C# (Unity). But the actual frameworks used are up to the team. The knowledge sharing often leads to reusing proven concepts instead of reinventing the wheel. regularly posts content from a variety of guest writers across the games industry. These encompass a wide range of topics and people from different backgrounds and diversities, sharing their opinion on the hottest trending topics, undiscovered gems and what the future of the business holds.