Interview with Francisco Lozano, Asst. Director of Engineering at Kii
I had the opportunity to interview Francisco Lozano, the Assistant Director of Engineering at Kii. Francisco works from our office in Valencia, Spain, knows Kii technology inside & out and is responsible for some of the most critical systems running Kii Cloud.
German: Hello Francisco, thanks for taking the time to share your thoughts with us. Let’s go straight to the questions! Tell us a little bit about yourself and what you do at Kii
Francisco: I’d say I’m a coder with a passion for well-engineered stuff. I’ve been working at Kii for several years now, taking part on exciting top-notch projects, and I couldn’t be happier in that regard. This company is very special to me, and I’m honestly thrilled to be a part of it.
I am mostly interested in building good experiences for app developers, because that ultimately leads to great experiences for users. Right now I lead the development of several core components in Kii Cloud’s backend – including our REST API, our user management, object storage, push and some others. I also manage the amazing development team we have in Valencia, which I’m very proud of.
Other than coding all night and crafting crazy software, I love traveling around the world (something very suitable for Kii’s worldwide distributed organization!), hanging out with friends and enjoying movies and books and some TV series like Game of Thrones and Homeland.
German: Consider developers that are not familiar at all with using a mobile backend as a service such as Kii Cloud. Could you give us a short introduction to the technology and how it can make a developer’s life easier? Would you use a mobile backend as a service in all scenarios where a mobile backend is needed?
Francisco: “Mobile backend as a service” is a product for developers like you and me, which is becoming an essential part of the stack we use to create apps.
What it does is enable app developers to implement many flows that traditionally required servers (having users, having data stored in the cloud, etc.) without having to take care of the complexity involved (java/ruby/xxx code, deployments in amazon/rackspace/xxx, maintenance, backups, security problems… you name it).
The most basic features a MBaaS should provide enable an app to store/retrieve/query data (both structured and opaque binaries) and have users register and access that data. On top of that, if the MBaaS has a powerful permission system and integrated push, you can really do *a lot*, and most apps will have enough with this. Then you have the differentiation features – ads, analytics, cloud code… that’s what makes most MBaaS different among themselves feature-wise.
Of course, there’s no silver bullet and a MBaaS won’t cover the 100% of the use-cases out there… but it does a damn good job at getting a good 80% done really quick, without big investments and without solving the same problems again and again. In other words: there is no glory for app developers in creating another user registration system that verifies e-mails or integrates Facebook.
In any case, MBaaS is not a black-or-white choice, so it’s not like “ONLY-MBaaS or NO-MBaaS-AT-ALL”. Most (all?) MBaaS products out there are open systems with well-documented REST APIs that you can integrate with any other kind of backend, in the event you need to do something the product is not suitable for. So, for me, it’s a no-brainer: I’d recommend to start with a MBaaS, and only dive into the complexity of your own server backend when you really need to (if you ever do), saving a lot of time and money in the process and enjoying a fast development pace with very good results.
German: Do you see an increasing trend towards adoption of MBaaS? In your opinion, what is the future of apps going to look like?
Francisco: I think apps are facing increasing competition in this growing market, and developers will need to take advantage of whatever tools help them deliver more and earlier. The development-publish-(success|failure) cycle of apps will become shorter. In that context, I see apps becoming composite software pieces made of homemade code, together with tooling and services from several vendors. In that regard, I see MBaaS prominently positioned to accelerate the cycle. In the future, I think developers will have a harder time justifying the time spent reimplementing non-core features that take a lot of time and effort to do well. Also, developers will have increased expectations to monetize their efforts and get what they deserve, and in that regard I think MBaaS and other similar tools have a lot to say.
German: Thanks Francisco for sharing your thoughts with us and help us get started with a series of interviews with the Kii team (stay tuned!)