This post is part of a new series called “The Future of Modern Software” and is brought to you by New Relic. Read the series here. As always, VentureBeat is adamant about maintaining editorial objectivity.
At this point, it’s old news — we’re in the age of mobile. Whether you’re a burgeoning startup or an established company looking to take the plunge, assembling a mobile development team can take a bit of finesse and know-how.
How do you build a team that can develop and iterate apps quickly and effectively? What are the key roles you need to fill? What is hype and what isn’t? How is it all different from the desktop-centric age of Web 2.0? And how does it all relate back to backend application development?
While you might think that the answer is to hire a team of specialists to tackle the problem, ex-Googler and founder of Google’s mobile team Elad Gil argues quite the opposite, calling it one of “5 myths to building an awesome mobile team”.
“The natural impulse of someone doing mobile development for the first time is to assume that mobile is somehow different from other software development. This leads to the hiring of mobile ‘experts’, many of whom lack solid consumer product experience,” Gil wrote. “Additionally, any specialist knowledge the expert may have had will be learned organically by your team within six months.”
Gil goes on to say the same of “mobile engineers,” explaining that focusing on finding great generalist developers not only expands your hiring pool but also ensures a quality team of adaptable, agile members.
“Developing for mobile requires your design, client engineering, and server engineering to all move tightly together. For us, that’s meant building a team that’s multifunctional — our designers are also capable client engineers, our client engineers are experienced backend developers, and so on,” Gotwalk said. “Having the ability to minimally communicate effectively across these gaps helps everyone stay on the same page.”
Earlier this year, we took a look at what developers should focus on in this new age of mobile, and aside from focusing on bringing mobile developers in-house rather than relying on outsourcing, we also mentioned using cloud-based services to handle infrastructure. Gotwalt agrees that software-as-a-service (SaaS) is a lifesaver when it comes to building an agile and adaptable team.
“At an early stage startup, you want to do as little as possible while still allowing your engineers to have a firm handle on keeping your infrastructure running and improving,” says Gotwalt. “I’m a huge fan of platforms as a service. We use products like Heroku to handle our hosting environment and database management. We use additional services like OpenRedis and Memcachier for data services, New Relic and Honeybadger for performance monitoring and exception tracking, and Papertrail for log management.These products provide services that I know how to build and manage myself. My business, however, isn’t in getting the perfect Postgres database cluster running — it’s building an app on top of it.”
So what are the takeaways, then, when it comes to putting together a mobile development team? As always, hire great talent and use the best tools available. In this new world where SaaS can provide the backend, infrastructure, APM, and more, the tools can even help to fill out the team. The two go hand-in-hand.
As always, be sure to use these tools and teams wisely. In particular, avoid silos between mobile and Web development. Over-communicate to make sure the team understands the big picture. In the rapidly iterating age of mobile, keeping everyone on the same page is the name of the game.